| Version | Supported | Notes |
|---|---|---|
| 2.0.x | ✅ | Current stable — actively maintained |
| 1.x.x | ❌ | End-of-life — upgrade to 2.0 |
| < 1.0 | ❌ | Pre-release — not supported |
Only the latest 2.0.x release receives security patches. We recommend always running the most recent version.
| Package | Version | Purpose | Risk Profile |
|---|---|---|---|
@solana/kit |
^6.1.0 | Solana native types & RPC | Low — Solana Labs maintained |
eventemitter3 |
^5.0.1 | Event emitter (zero deps) | Minimal — no network I/O |
ws |
^8.18.3 | WebSocket client (Node.js) | Low — widely audited |
The SDK ships only 3 production dependencies with zero transitive sub-dependencies of concern. The MCP server/client, gRPC parser, decoders, and all 110 plugin tools are implemented with zero external runtime dependencies.
| Package | Requirement | When Needed |
|---|---|---|
@langchain/core |
>=0.3.0 <0.4.0 | AI tools / plugin system |
zod |
>=3.23.0 || >=4.0.0 | Schema validation for AI tools |
ioredis |
>=5.0.0 | RedisStore persistence backend |
pg |
>=8.0.0 | PostgreSQL persistence backend |
typescript |
>=5.0.0 | Type checking (dev only) |
The following advisories affect devDependencies or peer dependency sub-trees only — they do not ship in the published package:
| Severity | Package | Advisory | Affects | Mitigation |
|---|---|---|---|---|
| High | @langchain/core <0.3.80 |
GHSA-43fc-jf86-j433 | Peer dep (optional) | Upgrade: npm i @langchain/core@latest |
| High | rollup <4.59.0 |
GHSA-3ppc-4f35-3m26 | Dev only (vitest→vite→rollup) | Not shipped — dev toolchain only |
| Moderate | langsmith <0.4.6 |
GHSA-v34v-rq6j-cj6p | Peer dep sub-tree (@langchain/core→langsmith) | Upgrade @langchain/core |
| Moderate | mdast-util-to-hast <13.2.1 |
GHSA-4fh9-h7wg-q85m | Dev only (typedoc→shiki) | Not shipped |
| Moderate | markdown-it <14.1.1 |
GHSA-mh29-5h37-fv8m | Dev only (typedoc) | Not shipped |
None of these advisories affect the published npm package. The rollup, typedoc, markdown-it, and shiki vulnerabilities exist exclusively in the dev toolchain and are never included in dist/.
- OOBE API keys are passed via URL query parameter (
?api_key=). Always store them in environment variables (OOBE_API_KEY), never in committed source code. - Jupiter API keys should follow the same practice (
JUPITER_API_KEY). - In Next.js deployments, use server-only env vars (without
NEXT_PUBLIC_prefix) to ensure keys are never exposed to the client bundle. - The SDK never logs, persists, or transmits API keys beyond the target RPC endpoint.
| Transport | Protocol | Encryption |
|---|---|---|
| RPC | HTTPS | TLS 1.2+ |
| WebSocket | WSS | TLS 1.2+ |
| gRPC | HTTPS | TLS 1.2+ |
| MCP stdio | stdin/stdout | Process-local (no network) |
| MCP SSE | HTTPS | TLS 1.2+ (consumer-configured) |
All OOBE Protocol endpoints (us-1-mainnet.oobeprotocol.ai, staging.oobeprotocol.ai) enforce TLS and reject plain HTTP.
If you discover a security vulnerability in the Synapse Client SDK, please report it responsibly:
- Email: Send a detailed report to security@oobeprotocol.ai
- Subject line:
[SECURITY] synapse-client-sdk — <brief description> - Include:
- Affected version(s)
- Steps to reproduce
- Impact assessment
- Suggested fix (if any)
| Timeline | Action |
|---|---|
| < 48 hours | Acknowledgment of your report |
| < 7 days | Initial triage and severity assessment |
| < 30 days | Fix developed, tested, and released (for confirmed vulnerabilities) |
| On release | Public advisory + credit (unless you prefer anonymity) |
In scope:
@oobe-protocol-labs/synapse-client-sdknpm package (source insrc/)- Published
dist/output - RPC/WSS/gRPC transport layer
- MCP server & client bridge
- Plugin system tool execution
- x402 payment flow
- API key handling
Out of scope:
- OOBE Protocol backend infrastructure (report to infra team separately)
- Third-party dependencies with their own security policies (
@solana/kit,@langchain/core, etc.) - Documentation site (
docs/)
- Pin exact versions in production:
"@oobe-protocol-labs/synapse-client-sdk": "2.0.0" - Run
npm audit/pnpm auditregularly — especially for peer deps like@langchain/core - Rotate API keys periodically and immediately if compromised
- Validate all user input before passing to SDK methods (the branded type system helps enforce this at compile time)
- Use server-side only for all RPC/signing operations — never expose private keys or API keys in browser bundles
- Keep
@langchain/coreupdated to >=0.3.80 if using the AI tools module (serialization injection fix)