特工对讲机
MCP服务器,用于克劳德代码实例之间的自主代理到代理通信。
你的AI代理会说话。你在Discord上观看。爆米花。
______________________________________________________________________
问题(又名“复制粘贴地狱”)
您正在构建两个项目。项目A需要与项目B整合。听起来很简单,对吧?
实际情况如下:
- 你打开 项目A 克劳德代码: *“嘿,Claude,我需要一个将项目数据发送到项目B的API端点”*
- Claude A编写了一个漂亮的API规范
- 你 复制 输出。所有这些。用你的鼠标。就像2005年一样。
- 您切换到 项目B: *“嘿,克劳德,这是A项目对你的期望……”*
- 你 粘贴 文字之墙。克劳德·B读了它。问了问题。
- 你抄克劳德·B的问题。切换回项目A。粘贴。等待。复制答案。开关。粘贴。
- 重复 47次 直到双方就JSON模式达成一致。
- 你填错了标签。失去上下文。重新开始。
到最后, 你 是瓶颈。 你 是人类信息总线。 你 是对讲机。
如果你的经纪人可以。…彼此交谈?
______________________________________________________________________
解决方案
特工对讲机 是一个MCP服务器,允许Claude Code实例通过Redis Streams自主通信。你开始一段对话,他们想出办法,你一边喝咖啡一边在Discord(或网络UI)上观看整个过程。
Project A (Claude Code) Project B (Claude Code)
"Hey, I need POST /webhook "Got it. But I need auth.
with these fields..." How about X-API-Key header?"
│ │
└──────► Redis Streams ◄──────────────┘
│
WalkieTalkie Worker
(spawns claude -p for each side)
│
┌───────┴───────┐
Discord 🎯 Web UI 🖥️
#walkie-talkie localhost:3210
(thread per (chat interface
conversation) with controls)运作原理
- 注册 您作为参与者的项目
- 开始对话 有主题和背景
- 这 工人 守护进程监听Redis,生成
claude -p每一方 - 代理自主交换消息(具有可配置的轮次限制)
- 等着瞧 在Discord(线程)或Web UI(实时聊天)上
- 干预 随时:暂停、注入消息、添加更多轮次
- 当他们达成一致时,a 合同.md 与集成规范一起生成
您的控制
| 操作 | 不一致 | Web UI |
|---|---|---|
| 观看对话 | 线程自动更新 | 实时WebSocket |
| 暂停 | 反应⛔ | 单击\[暂停\] |
| 作为首席执行官介入 | 与💬 | 键入聊天 |
| 添加更多回合 | 使用➕ | 点击\[+5轮\] |
| 批准协议 | 与✅ | 点击\[批准\] |
______________________________________________________________________
文档
| 文档 | 描述 |
|---|---|
| 安装指南 | 整合两个新项目的分步指南 |
| Discord Bot设置 | 如何创建、配置和使用Discord机器人 |
| MCP工具参考 | 所有7个MCP工具的完整参考 |
| 合同示例 | 4轮对话自动生成真实合约 |
______________________________________________________________________
快速开始
先决条件
- 克劳德代码CLI 使用主动订阅
- 本地运行的Redis(端口6379)
- Discord机器人令牌(有关Discord集成,请参阅 Discord Bot设置)
安装
git clone https://github.com/inael/agent-walkie-talkie.git
cd agent-walkie-talkie
npm install
npm run build在您的项目中注册
添加到每个项目的 .claude/settings.json:
{
"mcpServers": {
"walkie-talkie": {
"command": "node",
"args": ["/path/to/agent-walkie-talkie/dist/mcp-server/index.js"],
"env": {
"WT_PROJECT_ID": "my-project",
"WT_PROJECT_PATH": "/path/to/my-project",
"REDIS_URL": "redis://localhost:6379"
}
}
}
}有关故障排除的完整设置演练,请参阅 安装指南.
启动服务
# All services together (worker + discord + web)
npm run start
# Or with Docker
docker compose up -d
# Or individually for debugging
npm run worker # orchestrator daemon
npm run discord # discord bot
npm run web # web UI at localhost:3210开始对话
在克劳德代码(项目A)中:
> "Start a walkie-talkie conversation with project-b about the API integration"Claude将使用MCP工具:
wt_register(description: "My project")
wt_start(to: "project-b", subject: "API Integration", max_rounds: 10)然后坐下来观看Discord。
有关完整的工具参考,请参阅 MCP工具参考.
______________________________________________________________________
MCP工具
| 工具 | 说明 |
|---|---|
wt_register | 将此项目注册为参与者 |
wt_start | 开始对话(to、subject、context、max_ross) |
wt_send | 在对话中发送消息 |
wt_read | 读取待处理邮件 |
wt_list | 列出活动对话 |
wt_status | 待处理消息,剩余轮次 |
wt_end | 结束对话(协议/阻止/已交付) |
______________________________________________________________________
护栏
因为自主AI对话需要边界:
| 护栏 | 默认 | 可配置 |
|---|---|---|
| 每次对话的最大轮次 | 10 | 是 |
| 每轮超时 | 5分钟 | 是 |
| 结束对话的消息类型 | agreement, blocked, delivered | 是的 |
| 最大并发对话数 | 3 | 是 |
| CEO通知结束 | 不一致 | 是 |
______________________________________________________________________
建筑
agent-walkie-talkie/
├── src/
│ ├── mcp-server/ # MCP Server (installed per project)
│ │ ├── index.ts
│ │ └── tools/ # wt_send, wt_read, wt_start, etc.
│ ├── worker/ # Daemon (listens Redis, spawns Claude)
│ │ ├── index.ts
│ │ ├── guardrails.ts
│ │ └── claude-runner.ts
│ ├── discord-bot/ # Standalone bot, reusable
│ │ ├── index.ts
│ │ └── handlers/
│ └── web/ # Simple chat UI
│ ├── server.ts
│ └── public/
├── contracts/ # Generated contracts
├── docker-compose.yml
└── package.json______________________________________________________________________
用例
- 需要整合的两个项目 -代理商谈判API合同
- 微服务设计 --来自每个服务的代理就接口达成一致
- 前端+后端拆分 --代理协调数据形状和端点
- 多仓库单体迁移 --代理人一起计划提取
- 客户+供应商项目 --来自不同组织的代理进行协作
______________________________________________________________________
路线图
- \[x\] 核心概念和架构
- \[x\] 带7个工具的MCP服务器
- \[x\] Redis流通信
- \[x\] 带有claude-p的Worker守护进程
- \[x\] Discord机器人(独立,线程+反应)
- \[x\] Web UI(实时WebSocket聊天)
- \[x\] CONTRACT.md自动生成
- \[x\] 完整文档(设置、不协调、工具参考)
- \[\]方便安装的npm包
- \[\]多模型支持(不仅仅是Claude)
- \[\]对话模板(API设计、迁移等)
- \[\]持久会话历史记录(Redis重启后仍然有效)
- \[\]Webhook通知(Discord之外)
______________________________________________________________________
贡献
PR欢迎!该项目尚处于早期开发阶段。检查 问题 对于正在进行的工作。
______________________________________________________________________
许可证
麻省理工学院-做任何你想做的事,只要保留版权。
______________________________________________________________________
Stop being the human message bus. Let your agents talk.
Built with frustration and coffee by @inael at IT Booster Global
