Symphony
AI 编程代理的实时共享工作场
项目简介
Symphony 是一个开源平台,专为 AI 编程代理设计,让开发团队能够实时看到 Claude Code、Codex、opencode 等代理正在编辑的文件与代码区块,并在出现文件冲突时提前警报。它把几十年的 HCI 研究(包括 Microsoft Research FASTDash、Manhattan、TeamWATCH 等)转化为产品,将共享、实时、空间视图应用到自主编程代理时代。
核心功能
- 实时代码板块 — 一个共享的文件树,随着代理编辑操作即时更新,显示每个文件的编辑者标签、新鲜度和冲突面板。
- 3D 代理星云图 — 代理按照关注区域散布在代码星云图上,实时编辑操作以动态粒子顺着边缘飞来,冲突发生时标记为红色,支持拖拽与缩放观看。
- 冲突检测 — 两个代理同时编辑同一文件时,板块立即标记警告,预编辑钩子向另一个代理发送警告,可选配 Slack 消息通知。
- 爆发半径 — 每个文件的依赖图:在弹性修改落地之前就能看到编辑文件将涉及哪些其他文件,防止风险。
- 多代理、多机器 — 单个钩子支持 Claude Code、Codex 和 opencode,每个队友的会话都同时展现在同一板块上。
- 实时流式无刷新 — 编辑事项通过服务器发送事件(SSE)流式到板块,即使网络中断也能通过快照轮询保持正确。
- 可选 LLM 丰富 — 对接 OpenAI 或 Anthropic Key 可获得每人工作摘要、团队站会简报、纯英文系统地图区域、新身份分类以及"提问"框,从实时板块状态回答问题。
- 自olvable 多代理协调层 — 通过轻量级钩子与 Supabase 后端结合,支持自托管或使用 Supabase Cloud,适合 3 人以上的开发团队。
技术实现
Symphony 的架构围绕以下层次展开:
- 钩子层(各机器上的轻量级代理钩子):为每次编辑生成稳定的事件 ID,流入磁盘缓冲,然后非阻塞地引向摄入 API。
- 后端层(FastAPI):通过存储的、服务角色-only RPC 将编辑 upsert 到 Supabase。
- 板块层(Web 前端,React):浏览器订阅事件流获取增量更新,并回退到快照轮询,将共享状态渲染为板块、星云图、个人资料和动态。
技术栈:Python 3.11+,Supabase(免费项目),可选 Modal 部署。
快速上手
- 克隆仓库:
git clone https://github.com/itsloganmann/symphony.git - 安装依赖:进入目录,复制
.env.example为.env并填写 Supabase URL 和服务 Key - 本地运行:
docker compose up -d或手动启动后端和前端 - 安装钩子:在各工程师机器上安装代理钩子,配置 Claude Code / Codex / opencode 的 POST 钩子指向本地 Symphony 后端
- 开启实时监控:打开板块 URL,即可看到所有代理的编辑动态
适用人群
- 多代理开发团队:同时运行多个 AI 编程代理(Claude Code、Codex、opencode 等)且需要协调的团队。
- 工程团队负责人:需要实时了解代码库被哪些代理访问、是否即将发生冲突的技术负责人。
- AI 工程研究人员:研究多代理协作、代理冲突检测与协调机制的学术或工业界研究者。
- 开源项目维护者:需要管理多个贡献者(包括 AI 代理)的开源项目维护者。
官方链接
团队信息
AI产品库
官方
由 AI 猎手自动发现
评论与建议
登录 后参与评论或提建议