claude-bridge
🇬🇧 English · 🇨🇿 Česky
Claude Code plugin built primarily for VS Code — lets two or more chats/agents in VS Code talk to each other, look into each other's history, and use that history as a library accessible to both users and agents. No copy-paste between windows, no server, no API keys — everything goes through the local filesystem.

▶ Watch the full demo — one manager fans tasks out to three workers in a single VS Code window, they reply in real time, and you can read or search across every chat.
Built by Zed Michalek at oXyShop. MIT licensed.
Built for the multi-chat workflow in VS Code — keep several Claude Code chats open side by side in the integrated terminal and let them coordinate. It works just as well from the plain claude terminal; a few characteristics differ between the two — see CLI vs VS Code in the install guide.
Why this exists
If you keep two or more Claude Code chats open side by side in VS Code, you eventually hit the same friction: one chat is working on something the other already knows, or needs to ask it a question. Today the answer is usually "copy the message from one window into the other". Or you ask Claude to figure the same thing out twice.
claude-bridge changes that. Chats can message each other, read what the next-door chat is currently working on, or search across every transcript on the machine.
What the plugin actually adds
After installation, each chat gets a set of new MCP tools opening four categories of workflow:
See other chats. peer_list shows every active Claude Code chat on the same machine — its name, sessionId, cwd, age of last activity. A coordinating chat learns who is available.
Send a message. peer_ask writes a message into another chat's inbox; peer_reply answers a previously received message. Delivery is reliable even when the target chat is idle — the message waits in its inbox and arrives on the chat's next activity (or in real time, if the push channel is enabled).
Read another chat's content. peer_chat_read returns a sister chat's transcript — the last few messages, everything since its most recent user prompt, or messages matching a query (substring or regex). Supporting tools list_projects, list_sessions, and session_stats expose JSONL history metadata across all your projects.
Search across chats. peer_chat_search looks for arbitrary text across every session in the current project (default) or every project on the machine. Useful when you don't remember which chat discussed something but know the topic.
When it's useful
The situations where the plugin pays off most:
Two agents disagreeing on something. A coordinator chat dispatches tasks to worker chats, listens to their answers, and routes the next step. One user, three chats running in parallel.
You need context that lives in the neighbouring window. "Hey, tell me what you and the other agent figured out about agent teams." Instead of switching tabs and re-reading backlog, chat A pulls the relevant section directly from chat B.
Finding when a decision was made. peer_chat_read with query finds the place where a specific topic was discussed, with surrounding context. peer_chat_search does the same across many sessions when you don't know where to look.
Auditing what agents did overnight. Read-only access to JSONL history lets you walk through next morning's standup — what was assigned, how it evolved.
How is this different from Agent Teams?
Claude Code's experimental Agent Teams let the model spawn and coordinate ephemeral subagents inside a session — great for "one prompt, fan out internally." claude-bridge solves a different problem: making your own, real, persistent chats cooperate.
| Agent Teams (native) | claude-bridge |
|---|
| What the peers are | ephemeral subagents the model spawns | your real chats — you type into them too |
| Read and write as a human | — | ✅ in every peer chat |
| Reachable when idle | needs a live monitor | ✅ inbox waits, drains on next activity |
| Read another chat's transcript | — | ✅ peer_chat_read, on demand (doesn't pollute context) |
| Search across chats' history | — | ✅ peer_chat_search (project or all-projects) |
| Per-chat stats | — | ✅ session_stats breaks down any conversation |
| Survives a chat "deleted" in the UI | — | ✅ the JSONL stays on disk and is still readable |
| Cross-project / observability | — | ✅ search and read across every project, read-only |