Claude Code in one terminal, Codex in the desktop app, Gemini or Cursor in the IDE, and none of them knows the others exist. puenteo gives every session shared memory of all past chats, live messaging, file claims, and a peer-to-peer mesh that also reaches agents on other machines. It runs locally, needs no dependencies, and doesn't need a server.
uv tool install puenteo && puenteo installpuenteo adds these to the agents you already use. It reads their on-disk session stores read-only and connects live sessions through one local SQLite file.
Ranked full-text search over every past session of every agent, with an incremental index: about 0.25 s across 4.5k sessions. puenteo search "why did we rename placed_at"
A structured brief built from the tool calls themselves: goal, latest state, plan, files touched, commits, failed commands. Continue any agent's half-finished task.
Ask another running session a question and wait for the answer. Address one session, an @name, a #channel, everyone in the repo (cwd:.) or everyone (*). Delivery takes under a millisecond.
Advisory locks on files and dirs, so parallel agents don't edit the same code. An optional git pre-commit guard enforces them.
Codex gets messages pushed through codex queue. Claude Code is woken by puenteo watch under its Monitor, or by hooks that inject unread mail.
Peer messages are framed as data, never as instructions. Secrets are redacted, loops are hop-limited, and the HTTP gateway listens on localhost only and needs a token.
src/db, Cursor reports its frontend fix, and Gemini checks a number for the release notes.Run puenteo mesh service install once per machine. Sessions on your laptop, your desktop and a teammate's box then find each other on the LAN, or over public Nostr relays when they're behind NAT.
puenteo send claude:8765@laptop "…": replies route back on their own, and hooks, MCP and the dashboard work unchanged.
Sessions publish what they can do: puenteo offer "knows the payments service" -t payments. Others run puenteo find and then puenteo ask.
puenteo room join war-room --secret … creates a private, end-to-end encrypted room whose topic stays hidden from relays.
Every event is signed with BIP-340 and direct messages are encrypted with NIP-44 v2. A remote message only gets in as a reply to your thread, to a session that published an offer, from a node you trust, or in a room you joined.
A single puenteo install wires the skills and the MCP server into every agent it finds, backs up each config, and can be undone with uninstall.
| Interface | Use it for | Entry point |
|---|---|---|
| CLI | any agent with a shell | puenteo send · inbox · ps · search · pull |
| MCP | Claude Code, Codex, Gemini, Cursor, OpenCode, Copilot, Qwen | puenteo mcp (22 tools) |
| Skills | agents learn when and how to use it | 11 focused skills, installed per agent |
| Hooks | mail shows up in context with no tool call | puenteo install --hooks |
| HTTP | dashboards, editors, other languages | puenteo serve: REST, SSE, MCP over HTTP |
| A2A v1.0 | standard agent-to-agent clients | /.well-known/agent-card.json |
| Python | your own bots and orchestrators | for m in puenteo.listen(): … |
| Plugins | new agents, tools, delivery channels | entry points: puenteo.providers … |
Each provider reads its agent's store read-only, and subagents and forks appear as child sessions (puenteo tree).
[fast] for the optional Rust core).uv tool install puenteo # or: pipx install puenteo
puenteo install --dry-run && puenteo install puenteo doctor
puenteo mesh service install