Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Lets Claude Code, Codex CLI and Antigravity message each other, with live push into open sessions.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
AGENT_NAME, AGENT_MAIL_DIR你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"agent-intercom": {
"command": "npx",
"args": [
"-y",
"agent-intercom",
"serve"
],
"env": {
"AGENT_NAME": "your-value",
"AGENT_MAIL_DIR": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add agent-intercom --env AGENT_NAME=your-value --env AGENT_MAIL_DIR=your-value -- npx -y agent-intercom serve运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"agent-intercom": {
"command": "npx",
"args": [
"-y",
"agent-intercom",
"serve"
],
"env": {
"AGENT_NAME": "your-value",
"AGENT_MAIL_DIR": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"agent-intercom": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"agent-intercom",
"serve"
],
"env": {
"AGENT_NAME": "your-value",
"AGENT_MAIL_DIR": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
AGENT_MAIL_DIR env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 iambashar 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:AGENT_NAME
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.5)于19天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, SuperCollider
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
-supported-7B8CFF?style=flat-square)
Let Claude Code, Codex CLI and Antigravity (Gemini) message each other,
and land each message straight in the other agent's open session.
If it saves you time, a ⭐ helps other people find it.
Get started · See it work · How push works · Across machines · CLI · Security · Contributing
npx agent-intercom install
Using Claude Code only? Install it as a plugin instead:
/plugin install agent-intercom --marketplace iambashar/agent-intercom
On Claude Code older than 2.1.275: /plugin marketplace add iambashar/agent-intercom , then /plugin install agent-intercom@agent-intercom . The plugin also adds a skill that teaches Claude the mailbox conventions.
The npx command registers the MCP server with every CLI it finds. Restart them, and each agent gets three tools: mail_send, mail_check and mail_peers. Then ask in plain words:
You → Claude: Ask codex to review the diff in
src/parser.tsand wait for its answer.
Turn on live push so nobody has to poll. Install it globally, because the daemon needs a stable path:
npm i -g agent-intercom
agent-intercom install --push
What install changes, per CLI
| CLI | Registration | Extra for push |
|---|---|---|
| Claude Code | claude mcp add, user scope | nothing; uses Claude Code's peer socket |
| Codex CLI | a managed block in ~/.codex/config.toml (backed up first) | nothing; uses the Codex app-server daemon |
| Antigravity (`agy`) | agy mcp add | a session hook in ~/.gemini/config/hooks.json |
Use --only claude|codex|gemini for one CLI, and --local to pin a git checkout instead of npx. agent-intercom uninstall removes all of it, including the push daemon.
[!NOTE]
The old
geminiCLI no longer accepts personal Google AI Pro sign-ins; Google moved those users to the Antigravity CLI (agy). Its agent is namedgeminihere by default.
Neither agent polls. The request appears in Codex as a new turn the moment it is sent, and the reply lands in Claude the same way.
| Agent | Mailbox name | How a message reaches the open session |
|---|---|---|
claude | Claude Code's local peer-messaging socket, the channel SendMessage uses between sessions. Arrives labelled as from another session. | |
codex | The shared app-server daemon the Codex TUI runs on: turn/start, or turn/steer when a turn is already running. | |
gemini | agy agentapi send-message into the conversation. Each session registers itself once through a hook. | |
| Any other MCP client | anything | No push. It reads with mail_check, or blocks with mail_check(wait_seconds=300). |
| Tool | What it does |
|---|---|
mail_send(to, body, reply_to?) | Drop a message in another agent's inbox |
mail_check(wait_seconds?) | Read and consume your messages; with wait_seconds (max 300) it blocks until one arrives |
mail_peers() | List known agents |
sequenceDiagram
autonumber participant C as Claude Code participant M as ~/.agent-mail/codex/inbox participant P as pushd participant X as Codex CLI (open session) C->>M: mail_send(to: "codex", body) M-->>P: file appears (fs.watch, no polling) P->>M: claim: rename to .json.pushing P->>X: turn/start with the message X-->>P: turn accepted P->>M: move to read/ Note over X: Codex works on it, then replies with mail_send(to: "claude")
mail_check renames before reading. Whoever wins the rename delivers it.mail_check.claude. , codex. or gemini. . Otherwise the most recently active session gets it, or the one named in ~/.agent-mail/routes.json: { "claude": "api-server", "codex": "019f018a" }
[!WARNING]
Push relies on undocumented internals of all three CLIs, and an update can change them without notice. When that happens, pushes fail, get logged, and the mail falls back to the inbox. Protocol details: docs/live-push.md.
Without the push daemon
agent-intercom watch claude under the Monitor tool wakes the session when mail arrives.mail_check(wait_seconds=300).Agents on a machine with no shared filesystem, such as a GPU server or an HPC cluster, join over SSH with bridge.sh. It moves each message to the machine its recipient lives on, and pulled mail is pushed like any other.
BRIDGE_HOST=gpu-box REMOTE_AGENTS="claude-gpu" ./bridge.sh
flowchart LR
subgraph laptop["💻 Laptop"] A[claude] & B[codex] & G[gemini] end subgraph gpu["🖥️ gpu-box"] R[claude-gpu] end laptop <-- "bridge.sh · rsync over SSH" --> gpu
More: docs/remote-bridge.md.
Names are just AGENT_NAME. Give each session its own, for example claude-api and claude-web:
npx agent-intercom install --only claude --claude-name claude-api
agent-intercom install [--only claude|codex|gemini] [--claude-name N] [--codex-name N] [--gemini-name N] [--local] [--push]
agent-intercom uninstall MCP entries, agy hook and push daemon agent-intercom push install push daemon as a login service (launchd / systemd --user) agent-intercom push uninstall agent-intercom push run push daemon in the foreground agent-intercom status unread/read counts per agent agent-intercom watch one line per new message, without consuming it agent-intercom serve the MCP server on stdio
This is a local mailbox with no authentication. Any process running as you can write to ~/.agent-mail/*/inbox, and an agent treats a message as input to act on. With push on, that input reaches your open sessions without you typing anything.
只显示了开头部分;其余内容请在仓库中阅读