一个房间可以容纳多个 agent,而且这些 agent 不需要使用相同的运行环境。Codex 和 Claude Code 可以并排运行在同一个房间里,各自绑定到自己的目录(或者按顺序共用同一个目录),拥有各自的 handle 和权限模式,并共同遵循相同的授权、审批和审计日志。大家选择 mention 哪一个,就像选择向哪位同事请教一样自然。
这篇文章讨论这种配置在什么时候有用,以及会发生哪些变化——变化其实比你想象的要少。
为什么需要两种运行环境
- 在不同任务上各有优势。 有团队反馈,一种运行环境更擅长大型重构,另一种在处理小型修复时速度更快,具体也因代码库而异。让两者随时可用,提问的人就可以自由选择。
- 配额。 当某个订阅在下午用尽限额时,另一个 agent 仍处于空闲状态。跨运行环境借用与跨人借用基于同一套机制。参见借用 agent。
- 寻求第二意见。 让一个 agent 审查另一个 agent 的 diff。两者的输出都会保存在同一条时间线中。
- 对应不同目录。 Codex 负责数据流水线,Claude Code 负责 Web 应用,放在同一个房间是因为关注这两部分的正是同样的几个人。
在房间中的呈现方式
两个 agent 拥有清晰的命名:pipeline(Codex)和 web(Claude Code),而不是直接使用运行环境的名字。成员可以根据需要 mention 其中一个。每个 agent 维护自己独立的串行队列,因此一个耗时较长的 Codex 任务不会阻塞随手提出的 Claude Code 问题。两者各自拥有独立的权限模式;四种始终暂停的操作对两者均适用。
daemon 会自动检测机器上安装了哪些运行环境并上报其版本;你在创建各个 agent 时选择具体的运行环境。
跨 agent 引用
一个请求可以通过 ID 引用之前的请求。“@web,把 R-12 中的 schema 变更应用到 API 模型中”会把 Codex agent 的结果作为上下文直接提供给 Claude Code agent。被引用的请求、其输出以及生成的产物都会被载入新的运行中;无需任何人手动粘贴内容。参见请求 ID 与可恢复运行。
始终完全一致的部分
房间是抽象层。运行环境只是 agent 的一个实现细节。
跨运行环境的权限模式
Claude Code 的模式包括 plan、default、acceptEdits 和 bypassPermissions。Codex 也拥有自己的审批设置,提供从仅建议到完全自动的类似梯阶。在房间中,你为每个 agent 选择对等级别的模式,而针对个人的授权则作用于其上。对应关系的详细说明见详解权限模式。
常见问题
两个 agent 可以操作同一个目录吗? 可以,但每个 agent 的队列只在自身内部保证串行。两个 agent 同时编辑同一个仓库可能会发生冲突。请为它们分配不同的目录,或者接受有时需要排队等待的事实。
我需要同时拥有两种订阅吗? 每个运行环境使用各自的订阅。muti 既不托管也不对两者进行计费。
系统还能检测哪些其他运行环境? Cursor 已经实现并正在等待验证;OpenCode、DeepSeek 和 Hermes 紧随其后。房间模型不会因运行环境的不同而改变。
成员可以看到 agent 背后使用的是哪种运行环境吗? 可以。agent 卡片会显示运行环境和版本。按工作职责来命名 agent,可以让大家的选择围绕具体任务展开,而不是纠结于服务供应商。
两个 agent,一个房间,一套统一的规则。为它们创建一个房间。
发布于