Open Cowork子代理实战:如何指挥多个AI并行协作搞定复杂任务
【免费下载链接】open-coworkOpen-source AI agent desktop app for Windows & macOS. One-click install Claude Code, MCP tools, and Skills — with sandbox isolation, multi-model support, and Feishu/Slack integration.项目地址: https://gitcode.com/gh_mirrors/op/open-cowork
Open Cowork 是一款开源的 AI Agent 桌面应用(支持 Windows & macOS),它的子代理(Subagent)功能允许你在一次对话中指挥多个 AI 并行协作:主 Agent 会把复杂任务拆成子任务,分发给多个"分身"同时执行,再汇总结果,让复杂任务更快完成。本文用通俗的方式带你上手这套多 AI 并行协作工作流。
子代理是什么:为什么复杂任务需要"分身"
单轮 AI 对话有个天然瓶颈:上下文是有限的。当你同时要求它"调研代码库 + 修改功能 + 审查质量"时,一个 Agent 只能串行处理,越聊越长、越聊越偏。
Open Cowork 的子代理机制(核心实现在 subagent-extension.ts)提供了优雅的解法:
- 独立上下文:每个子代理在干净的会话中工作,只继承工具与配置,不继承主对话历史,互不干扰
- 并行执行:多个子代理同时运行,各自完成一个聚焦的小任务
- 只回结果:子代理被要求"只返回结果",主 Agent 拿到的是干净、可整合的产出
- 防失控设计:子代理不能再派生子代理,避免无限递归;父会话停止时,所有子代理会同步取消
三步上手:配置你的AI团队协作
第1步:在"设置 → Subagents"中调整参数
子代理的设置界面位于 SettingsSubagents.tsx,可调整三个关键项:
| 参数 | 作用 | 推荐值 |
|---|---|---|
| Default child model | 子代理使用的默认模型(可留空跟随主模型) | 与主模型一致 |
| Concurrent children | 每个会话最多同时运行的子代理数(1–8) | 默认 3 |
| Default role | 未指定角色时的默认行为(General 或某个命名角色) | 按习惯选 |
配置数据的结构与默认值定义在 subagent-config.ts 中。
第2步:认识内置的三种角色预设
Open Cowork 开箱即带三个经典角色,正好覆盖"研究—实现—审查"的协作链路:
- 🔍researcher(研究员):只允许
read / grep / find / ls等只读工具,负责调查代码库并给出证据,保证不改动任何文件 - 🛠️implementer(实现者):使用完整工具集,负责按项目规范实现并验证改动
- ✅reviewer(审查员):同样是只读权限,专门审查代码正确性、回归风险和缺失的测试
你也可以点击"Add agent"自定义命名角色,为每个角色单独指定模型和可用工具。
第3步:用自然语言下指令
配置完成后不需要写任何代码——直接在聊天里描述目标即可。比如:
"帮我重构登录模块:先让 researcher 并行调查所有调用方,同时让 reviewer 检查现有实现的漏洞,最后让 implementer 按调查结果重写。"
主 Agent 会自动通过内置的spawn_subagent工具分发子任务。每个子任务可指定:任务描述(必填,需自包含上下文)、角色、模型覆盖、输出格式、工具白名单和超时时间(详见 spawn_subagent 工具定义)。
实战场景:两个高频协作模式
场景1:研究与实现"双路并行"
修改一个核心模块前,最怕改错调用方。让 researcher 子代理梳理所有引用点(耗时操作,放后台),同时 implementer 起草改动——两路并行,时间直接减半。子代理结果返回主对话后,实现者可以基于研究结论继续精化。
场景2:写码与审查"同时进行"
实现完成后,主 Agent 可以立刻派一个 reviewer 子代理独立审查:因为它上下文干净、看不到"为什么这么写"的讨论过程,反而像一个真正独立的双手,更容易发现被忽略的问题。
运行中如何监控多个子代理
子代理执行期间,聊天流中会出现可折叠的进度卡片(组件见 SubagentProgress.tsx),实时展示:
- 状态图标:运行中(转圈)/ 完成(绿勾)/ 失败(红叉)
- 工具活动流:子代理每次调用工具都会上报
tool_start/tool_end事件,你能看到它正在读哪个文件、跑了哪条命令 - 耗时统计:每个工具调用和整个子任务都会标注用时
- 结果查看:点击"Show result"展开子代理的完整产出
失败处理也很透明:超时(默认 120 秒,最长 300 秒)会提示"考虑简化任务或调大超时";父会话被手动停止时,子代理会收到取消信号并同步终止(见 取消传播逻辑)。
常见限制与注意事项
- ⚡并发上限:默认 3 个,最多 8 个;达到上限时新任务会报错提示"等待运行中的子代理完成"
- 🔒工具只减不增:调用时指定的工具白名单与角色预设取交集,只能收窄权限、无法越权
- 🛡️权限继承:子代理的每次工具调用都会经过父会话的权限策略审批,被拒绝的操作会被直接拦截
- 📦沙箱限制:沙箱隔离会话中暂不可用子代理(子工具尚未支持沙箱隔离),普通会话中可正常使用
总结:把AI从"单干"升级为"团队作战"
Open Cowork 的子代理功能用最少的配置成本,让你获得"多 AI 并行协作"的生产力:研究、实现、审查三条线同时推进,上下文各自干净,结果自动汇总。打开设置花一分钟配置,剩下的交给自然语言指挥——复杂任务的完成速度会有肉眼可见的提升。
相关文件速查
- 配置与预设:subagent-config.ts
- 子代理运行时:subagent-extension.ts
- 进度展示组件:SubagentProgress.tsx
- 设置界面:SettingsSubagents.tsx
- 平台能力路线图:roadmap-agent-platform.md
【免费下载链接】open-coworkOpen-source AI agent desktop app for Windows & macOS. One-click install Claude Code, MCP tools, and Skills — with sandbox isolation, multi-model support, and Feishu/Slack integration.项目地址: https://gitcode.com/gh_mirrors/op/open-cowork
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考