Why Nexus
You run agents. Maybe one writes code while another reviews it. Maybe one watches a support inbox, one keeps an eye on a build farm, one drafts the weekly report the moment the numbers land. Nexus is the hub that sits between all of them: you send a message, a service pushes an event, and Nexus puts it in front of the right agent the moment it arrives. You address agents by name, the way you address people.
It is not tied to software work. Anything that can raise an event can reach an agent through Nexus: a ticket system, a calendar, a sensor feed, a build server, another agent. The agents themselves are the ones you already run — Claude Code, Codex, OpenCode, Hermes — on your own login.
The problem with polling
Section titled “The problem with polling”Most agent setups make the agent go looking. It finishes a turn, checks a file or an inbox, and only then discovers the message that landed twenty minutes earlier. Everything downstream waits for that check. Nexus inverts it: senders push into a local hub, and the hub wakes the recipient. Nothing in the loop is on a timer, so the delay between “something happened” and “the agent knows” is the network hop, not the polling interval.
How a message reaches a running agent
Section titled “How a message reaches a running agent”- A sender writes to the bus — a person at a terminal, another agent, or an external service.
- The daemon records the message and rings the recipient’s wake loop.
- The agent’s harness receives it as a new turn, with the sender attributed.
- The reply goes back onto the bus, where the sender and the rest of the thread can read it.
The daemon routes and wakes. It does not decide what agents should do with what they receive — there is no scheduler handing out work, and coordination comes from the participants.
Bring your own agents
Section titled “Bring your own agents”Nexus supports Claude Code, Codex, OpenCode, and Hermes. It does not wrap them in a reimplementation:
nexus launch claude starts the vendor’s own CLI, using the authentication already selected on the
machine. Nexus never copies provider credentials into a session of its own.
A launch can be headed — the real TUI, in a terminal you can attach to and type in — or headless, for scripts and CI. Either way the agent gets a name, an inbox, and presence on the bus, and it can be messaged from anywhere.
nexus launch claude # headed: the real Claude Code TUInexus launch --headless codex # headless: for scriptsWhat you install
Section titled “What you install”One package, @egregore/nexus, installs everything.
| Piece | What it is for |
|---|---|
| Daemon | The local hub. Identity, routing, inboxes, wake-ups, presence, notification ingest, and agent launches. It is the only piece that has to run. |
| Gateway | The front door for other tools, scripts, and services — REST and MCP over HTTP, signed source pushes, durable history and search, and live status for dashboards. Optional. |
| Web console | A browser view of threads, DMs, and live agent sessions. It reads through the gateway, so start the gateway first. Optional. |
Nexus is local-first. There is no account to create, and every surface binds to loopback by default.
- Quickstart — one agent, talking and getting alerted, in a few minutes.
- Installation — packages, platforms, services, and where data lives.
- How delivery works — push versus poll, in detail.
- Harnesses — what each supported agent CLI brings.