后台与并行智能体
一旦你在划定范围的任务上信任某个智能体,下一步就显而易见:一次运行好几个。现代工具让你能启动后台智能体——各自在自己的分支或工作树(worktree,项目的一份单独的工作副本,这样一个智能体的改动永远不会和另一个的相撞)上——这样在你做别的事时,三四个划定范围的任务都在推进。
这是真正的提速,但仅限于独立的工作。你拿来交换的代价是协调。两个智能体编辑同一个文件会产生冲突的 diff,手动合并它们可能比你省下的还贵。
- 按边界拆分,而非按行数。 给每个智能体一块与其他不重叠的部分——不同的模块、不同的功能、不同的文件。「智能体 A 做导出功能,智能体 B 写文档」很干净。「两个智能体都编辑
app.js」是预约了一场合并头疼。 - 隔离工作空间。 让每个智能体在自己的 分支或工作树上运行,使它们踩不到彼此未提交的改动。一次合并一个回来,每次合并时都运行你的检查。
- 诚实地控制数量。 你仍然必须审查每一个结果。四个智能体在跑,就是四份要读的 diff 和四套要信任的测试。超过一小撮之后,瓶颈就成了审查队列,而不是智能体。
每个智能体都在自己隔离的 worktree 里工作,于是它们的编辑永不碰撞;你一次合并回一个,并在每道关卡跑检查:
┌─────────────────────────────┐
│ 你按边界拆分 │
└──────────────┬──────────────┘
┌────────────────┼────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ 智能体 A │ │ 智能体 B │ │ 智能体 C │
│ worktree-a/ │ │ worktree-b/ │ │ worktree-c/ │
│ 导出功能 │ │ 文档 │ │ 设置页面 │
└──────┬───────┘ └──────┬───────┘ └──────┬───────┘
│ branch-a │ branch-b │ branch-c
└────────────────┼────────────────┘
▼
┌──────────────────┐
│ 逐个合并 │ 每次合并都跑检查
│ → main │
└──────────────────┘
隔离副本 = 无冲突 · 审查队列才是真正的瓶颈
错误在于把并行当成免费。它不是——你把工作从编写挪到了审查与集成。这常常是笔很好的交易,但前提是你真的去审查。