cc-bridge lets Claude Code sessions communicate via shared JSONL file
cc-bridge is an open-source CLI tool that enables two or more local Claude Code windows to exchange real-time messages through a shared JSONL file, with no daemon, network, or polling required.
Score breakdown
cc-bridge enables real-time coordination between multiple Claude Code sessions on the same machine using only the file system, removing the need for any network infrastructure or background process.
- 01Installable via `npm install -g @incultnitollc/cc-bridge`; requires Node.js ≥ 20
- 02Uses a shared JSONL file (a 'room') stored under `~/.cc-bridge/rooms/<name>.jsonl` for inter-session messaging
- 03Requires no daemon, no network connection, and no polling
cc-bridge is an open-source npm package (`@incultnitollc/cc-bridge`) published by Incultnitollc that provides a live JSONL message bridge between local Claude Code sessions. The core use case is two or more Claude Code windows running on the same machine that need to exchange messages in real time. Each session is given a CLI with two primary commands: `cc-bridge listen`, which tails a shared file and surfaces new lines as live push notifications via Claude's Monitor tool, and `cc-bridge send`, which appends a message to that file from the Bash tool.
The shared communication channel is called a "room" — a named JSONL file stored under `~/.cc-bridge/rooms/<name>.jsonl`.
The shared communication channel is called a "room" — a named JSONL file stored under `~/.cc-bridge/rooms/<name>.jsonl`. The default room is named `default`, and room names must match the pattern `[a-zA-Z0-9_.-]{1,64}`. Each session is assigned an auto-generated session ID derived from the parent shell PID, ensuring two windows naturally receive different identifiers, though this can be overridden with the `CC_BRIDGE_FROM` environment variable. Each message is a single-line JSON object with required fields `v`, `id`, `ts`, `room`, `from`, and `msg`, plus optional fields including `to`, `reply_to`, and `kind`. Unknown fields are preserved for forward compatibility. The package requires Node.js version 20 or higher and is installed globally via `npm install -g @incultnitollc/cc-bridge`.
Key facts
- 01Installable via `npm install -g @incultnitollc/cc-bridge`; requires Node.js ≥ 20
- 02Uses a shared JSONL file (a 'room') stored under `~/.cc-bridge/rooms/<name>.jsonl` for inter-session messaging
- 03Requires no daemon, no network connection, and no polling
- 04`cc-bridge listen` is run under Claude's Monitor tool to receive lines as live push notifications
- 05`cc-bridge send` is run via the Bash tool to append a message to the shared room file
- 06Session IDs are auto-generated from the parent shell PID; overridable with `CC_BRIDGE_FROM`
- 07Each message requires fields `v`, `id`, `ts`, `room`, `from`, and `msg`; optional fields include `to`, `reply_to`, and `kind`
Topics
Summary and scoring are generated automatically from the original article. We always link back to the publisher and never republish images or paywalled content. Last processed Jun 9, 2026 · 17:05 UTC. How this works →