并行代理调度(Dispatching Parallel Agents)
概述
当面对多个不相关的故障(不同测试文件、不同子系统、不同 bug),顺序调查浪费时间。每个调查是独立的,可以并行进行。
核心原则: 每个独立问题域派遣一个代理。让它们并发工作。
何时使用
使用条件:
- 3+ 个测试文件因不同根因失败
- 多个子系统独立故障
- 每个问题无需其他问题的上下文
- 调查之间无共享状态
不要使用:
- 故障相关(修一个可能修其他的)
- 需要理解完整系统状态
- 代理之间会互相干扰
模式
1. 识别独立域
按故障内容分组:文件A测试:工具审批流程,文件B测试:批量完成行为,文件C测试:中止功能。
2. 创建聚焦的代理任务
每个代理获得:特定范围、明确目标、约束条件、预期输出格式。
3. 并行派遣
Task("Fix agent-tool-abort.test.ts failures")
Task("Fix batch-completion-behavior.test.ts failures")
Task("Fix tool-approval-race-conditions.test.ts failures")
// 三个同时运行
4. 审查和整合
代理返回后:阅读摘要、验证修复无冲突、运行完整测试套件、整合所有变更。
常见错误
- 太宽泛:"修复所有测试" -- 代理迷失
- 具体:"修复 agent-tool-abort.test.ts" -- 聚焦范围
- 无上下文:"修复竞态条件" -- 代理不知在哪
- 有上下文:粘贴错误信息和测试名称
- 无约束:代理可能重构一切
- 有约束:"不要修改生产代码"