这一层才真正用 Cursor 的 Task 工具生子代理。自己派活的只有五个:
swarm、arena、interrogate、reflect、recall。
另外三个(architect、blast-radius、teach)把并行委托出去,自己不 spawn。
形态的区别不是"跑几个",而是子代理之间是否交换信息、由谁裁决、结论怎么合并。
选错形态的代价很高:该赛马的铺成覆盖,就没人告诉你哪个更好。
"四种拓扑"是本站的归纳——上游没有任何一个文件给扇出分过类。下面每一项都按它自己 SKILL.md 里的阶段名原样列出。
SKILL.md 原文(提交 e43c7ee):swarm 47 行、arena 72 行、interrogate 111 行、architect 84 行、reflect 74 行。其中 interrogate 另带 4 份 references/(reviewer-prompt.md、rubric.md、code-quality-review.md、lead-judgment.md),architect 带 3 份——这就是 H03 的"阶段三:顺着链接取附件"。| 约束 | 原文 / 机制 | 为什么这样设计 |
|---|---|---|
| 一次性发出 | swarm 与 arena 都写 "Spawn all N … in one message",interrogate 写 "Launch all reviewers in a single message";一律带 run_in_background: true | 串行发就退化成顺序执行,并行度归零 |
| 先声明裁决规则 | swarm:declare `first pass`, `rank all`, or `best-of` before spawning(这条只在 swarm 里写,arena 用 rubric 代替) | 防止跑完再挑标准,等于没有标准 |
| 选手看不到评分表 | arena Phase A:The rubric is the picker's tool in Phase D. Candidates only see the task. | 否则候选会按评分表写作,测不出真实差异 |
| 掉队不阻塞 | swarm "proceed with N-1 and note it";arena "proceed with N-1 and note the dropout" | 并行扇出的失败是常态,不能整体重跑 |
| 写路径隔离 | arena:每个候选 "a git worktree where possible, otherwise /tmp/arena-<slug>/candidate-<n>/",点名引用 separate-before-serializing-shared-state | 对应 H06 那条 Architecture 原则 |
| 只读是有代价的 | interrogate / arena 裁判带 readonly: true;但 reflect 反过来强制 readonly: false,原文理由只有五个字:Readonly strips MCPs. | 只读模式会剥掉 MCP 工具,需要 MCP 的评审就没法只读 |
| 不许自动采纳 | interrogate:Do NOT auto-apply changes. 共识判据:Findings raised by 2+ models independently are highest signal | 评审的价值在判断,不在顺手改代码;两票独立才算强信号 |
| 默认在云端跑 | swarm:environment: "cloud",只有 worker 需要碰你本机的东西时才给 "local";非默认分支要传 cloud_base_branch | 扇出规模大,默认离机跑;这也是它绑 Cursor 的地方(H09) |
interrogate reviewers 那行的列表长度——"one subagent runs per entry, so the list length sets the panel size"。所以必须有 H08 那张表。claude-* / gpt-* / grok-*。