Real-time messaging for coding agents — pub/sub, presence and history your agent provisions itself, from the command line.
Prototype in one command. Ship the same channels to production — no rewrite.
Your agent can write the app but can't give it a real-time backbone without you stopping to wire up a messaging service. oddsockets is the CLI the agent runs itself: one install, and it signs up, mints its own key, and starts publishing and subscribing to live channels — the same channels that carry your production traffic. Zero dependencies.
Works with: Claude Code · Cursor · Cline · Windsurf · Aider · Codex · any terminal
Signup to your first real-time message in 60 seconds — watch the full demo.
Each demo below is a real CLI session — a throwaway account, a real key, real messages over the live cluster — stitched to the developer dashboard showing that same traffic. Click any tab for the full-res video.
| Signup → first message | Live pub/sub | Who's online | Agent integration |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| Fresh app, first message in seconds | One channel, two messages, instant | Live member list | publish + history in one line |
Watch the full set on oddsockets.com →
npm install -g oddsockets# 1. Sign up (instant API key, no email verification)
oddsockets signup my-app --local
# 2. Publish a message
oddsockets publish my-channel "Hello from the CLI!"
# 3. Subscribe (live tail)
oddsockets subscribe my-channel
# 4. Check who's online
oddsockets presence my-channelThe core primitive: publish to a channel, subscribe to tail it live. Every subscriber gets every message the instant it lands — no polling, no queue to run.
oddsockets subscribe room-42 & # live tail in the background
oddsockets publish room-42 "hello from the CLI" # arrives on the tail instantly
oddsockets publish room-42 --file payload.json # publish structured data from a fileAsk any channel who's connected. Presence is tracked server-side and updates in real time as clients join and leave.
oddsockets subscribe lobby & # join the channel
oddsockets presence lobby # live member listChannels keep a rolling message history, so a client that connects late (or your agent after a context reset) can catch up.
oddsockets history agent-bus --limit 10Add to your CLAUDE.md, .cursorrules, .clinerules, or .windsurfrules:
## OddSockets
Use the `oddsockets` CLI for real-time messaging.
Key is in .oddsockets/config.json (auto-loaded).
oddsockets status # cluster health
oddsockets publish my-channel "message" # send message
oddsockets subscribe my-channel # live tail
oddsockets presence my-channel # who's online
oddsockets keys # list API keysPrefer tools over a CLI? No install needed — point Claude Web, Claude Desktop, Cursor, Cline, Windsurf, Raycast, or any MCP client at our hosted server and your agent gets 12 native tools: publish, history, presence, channels and API-key management.
URL: https://mcp.oddsockets.ai/sse
Auth: Authorization: Bearer YOUR_API_KEY
No key yet? Connect keyless and call oddsockets_get_started, then oddsockets_signup to self-provision an app and mint your own key — then reconnect with the Bearer header to unlock every tool. Same account, same channels as the CLI.
| Command | Description |
|---|---|
oddsockets signup <app> [--email x] [--local] |
Sign up, get instant API key |
oddsockets login --key KEY [--local] |
Save existing API key |
oddsockets logout [--local] |
Clear config |
oddsockets me |
Account info + plan |
oddsockets status |
Cluster health + platform stats |
| Command | Description |
|---|---|
oddsockets publish <channel> "message" |
Publish message |
oddsockets publish <channel> --file data.json |
Publish from file |
oddsockets subscribe <channel> |
Live tail (Ctrl+C to stop) |
oddsockets history <channel> [--limit 10] |
Message history |
oddsockets presence <channel> |
Channel members |
| Command | Description |
|---|---|
oddsockets channels |
List channels |
oddsockets channel create <name> |
Create channel |
oddsockets channel delete <name> |
Delete channel |
| Command | Description |
|---|---|
oddsockets keys |
List API keys |
oddsockets key create "name" |
Create new key |
oddsockets key revoke <id> |
Revoke key |
--json— Machine-readable JSON output (every command)--key KEY— Override API key for one command--local— Use project-local config (.oddsockets/)--help— Help
--keyflagODDSOCKETS_API_KEYenvironment variable.oddsockets/config.jsonin project directory~/.oddsockets/config.jsonin home directory
7-day free trial on every plan. Card required (secure Stripe checkout), nothing charged during the trial — cancel before it ends and you pay nothing. Agents and the CLI get a 48-hour keyless window to prototype before a key is needed. Plans from $29/mo. Details.
Prefer to build it into your app? OddSockets ships a native SDK for every major language and runtime — same real-time channels, pub/sub, and presence, idiomatic to each stack. Each card links to its maintained repo; for a 60-second install + connect snippet in your language, see examples/.
Node.js |
JavaScript |
Svelte |
React Native |
Flutter |
Python |
Go |
Rust |
Java |
Kotlin |
C# / .NET |
C++ |
C |
PHP |
Ruby |
Swift |
Elixir |
Unity |
Unreal Engine |
Full SDK list with highlights
| Language / Runtime | Repo | Highlights |
|---|---|---|
| Node.js | oddsockets-nodejs-sdk | Server-side, npm |
| JavaScript | oddsockets-javascript-sdk | Browser + Node.js |
| TypeScript / Svelte | oddsockets-svelte-sdk | Reactive stores |
| React Native | oddsockets-react-native-sdk | Mobile |
| Flutter / Dart | oddsockets-flutter-sdk | Cross-platform mobile |
| Python | oddsockets-python-sdk | AsyncIO |
| Go | oddsockets-go-sdk | Goroutine-safe |
| Rust | oddsockets-rust-sdk | Tokio async |
| Java | oddsockets-java-sdk | Maven |
| Kotlin | oddsockets-kotlin-sdk | Coroutines |
| C# / .NET | oddsockets-csharp-sdk | NuGet |
| C++ | oddsockets-cpp-sdk | C++17 |
| C | oddsockets-c-sdk | Embedded / IoT |
| PHP | oddsockets-php-sdk | Composer |
| Ruby | oddsockets-ruby-sdk | Gem |
| Swift | oddsockets-swift-sdk | SPM + Combine |
| Elixir | oddsockets-elixir-sdk | GenServer / OTP |
| Unity | oddsockets-unity-sdk | MonoBehaviour |
| Unreal Engine | oddsockets-unrealengine-sdk | UE5 |



