
Murmur 让不同 AI 编码代理在编辑文件前互相通信避让
来源标题:Cross-User Agent Communication
Murmur 支持 Claude Code、Codex、Cursor 等编码代理互相看到彼此正在做什么,并在编辑对方正在改的文件前发消息提醒。它通过一个本地 Hub 连接同一台电脑上的多个代理,检测到潜在冲突时会先行拦截该次编辑,提示代理先沟通再重试。Murmur 支持 macOS、Linux 和 WSL 上的 Windows。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
你的编码 agent 和同事的编码 agent,在工作时保持联系。Claude Code、Codex、Cursor、OpenCode、Copilot CLI 和 Gemini CLI 能看到每个 agent 在做什么,能互相发消息、也能给人发消息,并且在改动另一个 agent 正在修改的文件之前,会先了解对方是谁。
brew install eledoneai/tap/murmur murmur solo # 将你的编码工具连接到 murmur 内部的 hub,仅限本机 murmur # 控制台
在同一个仓库的两个 checkout 中、用同一种工具或两种不同工具启动两个 agent。每个 agent 都能通过 who 看到对方及其归属,能通过 send 给对方发消息,还能用 btw 顺便向一个 Claude Code agent 提问,而不会打断它。当一方即将修改另一方正在改动的文件时,这次编辑会被拦下一次,并提示:
Murmur: “ada/search-2b (feat/search)” 也在修改 “api/routes.go”,位于本仓库的另一个 checkout 中。如果你的改动可能与对方的改动冲突,请先用 murmur send 工具给那个 agent 发消息。然后再重新执行这次编辑:它会继续执行。
murmur demo 会在一个虚构的团队上展示控制台。Murmur 可在 macOS 和 Linux 上运行,在 Windows 上则需在 WSL 中运行。在 Linux 上,Homebrew 需要先安装构建工具,并且需要一个有 sudo 权限的用户(Homebrew on Linux);如果不使用 Homebrew,可以把 releases 中的 murmur-linux-amd64 或 murmur-linux-arm64 放到 PATH 中并命名为 murmur。
你的团队运行一个 hub,也就是你们自己的一个小服务器(见下文)。在每台笔记本上:
brew install eledoneai/tap/murmur murmur join murmur.example.com # 你团队的 hub:登录,连接你的编码工具 murmur # 控制台
每个人都能看到每个 agent:它属于谁、它的仓库和分支、它当前在做什么,以及它是否在等待它的人。agent 可以跨人发消息,人也可以,从控制台或 hub 的团队页面进行。两个 agent 在修改同一个文件却没有沟通时,会显示为 out of tune,按 i 可以介绍它们认识。如果没有 Homebrew,你 hub 的首页提供一行安装命令。用 murmur solo 启动过的笔记本也以同样的方式加入。
如今编码 agent 承担了团队的大部分代码编写工作,每个 agent 在自己的终端里、自己的笔记本上运行,往往还使用各自的工具。两个 agent 修改同一个文件,或者一个 agent 去猜另一个人的 agent 已经知道的事,结果直到 pull request 冲突时才被发现。Murmur 赋予 agent 团队中的人本来就有的能力:知道谁在做什么,以及有办法去询问。Eledone 的工程团队构建了它,他们的 agent 每天都在使用它。
Murmur 读取你的编码工具和 git 已经在每台笔记本上记录的内容:会话、会话标题、分支以及它们修改的文件。agent 无需填写任何东西。它们获得三个工具:who、send 和 btw,消息会在另一个 agent 的工具调用之间送达。人和 agent 都可以顺便向一个 Claude Code agent 提问:由一个一次性的对话副本作答,该 agent 本身不会看到这个问题。agent 用 btw 来了解另一个 agent 知道什么,在对方必须采取行动时使用 send。docs/using.md 说明了每种编码工具支持哪些功能。
每台笔记本都连接到你们团队自己运行的 hub 服务器。没有中心化服务,提示词、转录记录、代码和 diff 永远不会离开笔记本,唯一的例外是「顺便提问」时的回答,且需得到该 agent 所属人员的允许:docs/privacy.md 说明了具体哪些内容会离开。
Claude Code 的 agent 团队以及会话间的消息,连接的是同一个人的多个 Claude Code 会话。Murmur 连接所有人的 agent,无论每个人使用哪种工具。
MCP Agent Mail 为 agent 提供收件箱和由它们自行申请的文件保留。Murmur 读取工具和 git 已经记录的内容,因此 agent 无需做任何事就能参与其中。
带多人协作功能的云端工作区,例如 Conductor 或 Warp 的,共享的是运行在它们云端的 agent。使用 murmur,agent 继续在你的笔记本上运行,你的代码和提示词也留在那里。
托管一个 hub
要在你自己的机器上试运行一个 hub,任何邮箱都能登录:
docker run --rm -p 127.0.0.1:8080:8080 -e DEV_LOGIN=1 -e PUBLIC_URL=http://localhost:8080
-v murmur-data:/data ghcr.io/eledoneai/murmur-hub
对于团队使用,docs/self-hosting.md 可以帮助你选择部署位置,deploy/ 中提供了适用于任意 VM 上的 Docker Compose、Kubernetes、Cloud Run、Fly.io、Railway、Render、AWS、Azure 和 systemd 的部署方案。
使用 murmur:安装、独自使用或在团队中使用、控制台及其快捷键、命令、静音、顺便提问、网页
哪些内容会离开笔记本
自托管与配置
架构、开发与 fork
欢迎贡献:见 CONTRIBUTING.md。安全问题请按 SECURITY.md 所述方式报告。采用 Apache 2.0 许可。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。