第 1 章:瓶颈只是转移,不会消失
论点:并行 AI 开发不是"开更多 Agent"。它是把人从那三个单个 Agent 也依然需要你守着的卡点里抽出来——在你做到这一点之前,加更多 Agent 只会让队伍变长。
每个人都在讲的故事
到了 2025 年底,"AI 能替你写代码"这件事已经不再是推测。Cursor、Claude Code、Codex、Devin 之类的工具,已经从"补全"跨过了"自主执行任务"这条线。任何在写这本书时工作过的工程师,都亲自体验过这种切换:你描述一个功能,Agent 写出来、跑测试、修 bug、开 PR。一个 Agent、一个任务、一个审查者——你。
接下来显而易见的问题是:如果同时开五个呢?
显而易见的答案——"那你就快五倍"——是错的。真正动手试过的人,基本都在第一周撞墙,然后悄悄退回到一个。他们其实发现了某件事但叫不出名字:AI 开发里真正的瓶颈从来不是 Agent。是你自己。
看一个内部数据。Boris Cherny——Anthropic 的 Claude Code 负责人——在 2025 年底在 X 上分享:他同时运行 10 到 15 个 Claude Code session,分散在编了号的终端标签页、web session 和手机上,一个月内合入 259 个 PR(全部代码都是 Agent 写的)。他的配置没什么魔法:编号 1–5 的终端标签、在 Agent 需要输入时弹出的系统通知、一个每当 Agent 犯一次可以避免的错误就追加一条的 CLAUDE.md 规则文件、以及像 /commit-push-pr 这样把重复性注意力打包起来的 slash 命令。看仔细就会发现那个形状:他并没有把人从回路里移除——他把人以前卡住的那些地方用机制替代了,所以他唯一的一份注意力可以在十到十五条工作流之间轮转而不再成为瓶颈。这本书讲的就是那次轮转背后的机制。
三个卡点
观察一个工程师和一个 Agent 一起工作,你会发现三个时刻反复出现——这几个时刻只有人能推动事情继续:
-
需求对齐。 你脑子里的东西是模糊的、带着隐含上下文的、在边缘处从未拍板过的。Agent 需要清晰、可执行的指令。填平中间的鸿沟意味着对话、澄清、反复。它啃掉的是你最深层的那份注意力。
-
正确性验证。 Agent 写出来的东西看起来对。真的对吗?现实里总得有人读 diff、跑一遍、抓出模型自己不会发现的 bug、把修正喂回去。过去,那个人就是你。
-
可维护性。 一个 Agent 放任不管,能写出今天能跑、三个月后崩塌的代码。得有人在架构层面掌舵——哪个模块、哪一层、什么模式——否则代码库就会变成一件百衲衣,以后不管是人还是 Agent 都在里面干不了活。
这三件事有一个共同的结构特征:它们都需要人类在回路中。而人的注意力是串行的。你没法把它摊到五个 Agent 上,你只能在它们之间一个一个切换。这三个卡点还由你亲自守着,你就算同时开五个 Agent,也得不到 5 倍的吞吐;你得到的是五个队列排在同一个人面前。
大多数人会得出"并行 AI 没用"的结论,原因不是 Agent 本身差,而是那三个卡点还站着人,多开 Agent 只是多开了几条队列。
这是本书最重要的第一个框架:瓶颈只是转移,不会消失。 光加 Agent 不能让 AI 开发变快。你得把人从那个队列形成的位置上挪走。
为什么这在以前做不到
2025 年大部分时间,对"AI 能不能接管这三个卡点"的诚实回答是"不能"。Agent 的自主调试能力还不足以保证正确性,也无法可靠地执行架构纪律,更没法驱动终端或浏览器去验证它自己的产出。
所以唯一可行的模式就是 copilot ——人开车,AI 副驾。Cursor 早期真正厉害的地方,是把这种协作打磨得很顺滑:一个更好的方向盘,而不是一辆自动驾驶车。Spec-first 类工具在需求侧努力,各种 code review 包装层在正确性侧努力;它们都在造更好的驾驶舱,没有把飞行员挪走。
在那个阶段,多开 Agent 机械上做得到,实际上没用。五个 copilot 还是需要一个 pilot。队列始终在你身上。
什么变了
在 2025 年下半年——可以叫它"Opus 4.5 / Claude Code / GPT-5 / Codex 这一波"——四个能力跃迁同时落地,让这笔账变了:
-
自主调试真正跑起来了。 给现代 Agent 一个 shell、日志、一个测试框架,它就能诊断并修掉日常开发里绝大多数 bug,不再需要人类指着栈帧说"这里"。
-
"理解对 ≈ 实现对"变成了近似成立的。 对范围清晰的任务,如果 Agent 真的理解了需求、又有跑测试的能力,它产出的代码大概率是正确的。主要的失败模式不再是"代码写错了",而是"对需求的理解走偏了"。
-
Skill 成了稳定的注入机制。 你可以把"这个项目的命名规范、分层、提交规范"之类的工程纪律写进一个结构化的文档交给 Agent,它会按这个约束去做。以前 Agent 在一个 session 里会漂;现在漂是可控的。
-
通用电脑使用能力成熟了。 Agent 不再被困在文件树里。它能跑终端、驱动浏览器、点 GUI 完成配置任务、读为人写的文档。软件的安装文档正在悄悄重写成"给 Agent 看的"。
这四件事单拆出来都不够。合在一起就意味着:三个卡点终于可以被机制替代了——不是完美地、也不是普遍地,但足以让你在大多数任务上把人从实时回路里挪走。
这里要提前点一句,后面第 2 章会展开:即使模型具备了上述能力,你的配置也不会在第一天就自动获得这些能力。这中间的缝隙就是磨合期,跳过它是"读到这些能力介绍却在自己的工作里感受不到"的主要原因。
三把钥匙
如果说三个卡点是挡住并行开发的原因,那本书剩下的部分就是怎么把它们拆掉。结构是对称的:
- 第 3 章 — 钥匙 #1 — 怎么把需求交得足够干净,让 Agent 在执行途中不再需要你。
- 第 4 章 — 钥匙 #2 — 怎么把正确性当作一份在编码开始前就签好的契约,这样你就不用每份 diff 都读。
- 第 5 章 — 钥匙 #3 — 怎么把你原本要在审查里执行的那套工程纪律,编码成 Agent 自己应用的 skill。
每一把钥匙做的事都一样:把"人在实时回路里"换成"人在起点和终点,机制在中间"。整个把戏就在这里。
把 Cherny 公开的工作流拆开,他做的正是这件事:CLAUDE.md 是第 3 把钥匙的动态实现——把过去在审查里执行的项目规则变成不断增长的文档;slash 命令是在执行边界上把对齐和交接机制化;编号标签 + 通知只是"把注意力在各个中间环节之间轮转"的人体工学外壳。Geoffrey Huntley 公开记录的 Ralph Wiggum 循环 则是同一个动作的另一种形态:一个 bash 循环(while :; do cat PROMPT.md | claude-code ; done)每次用全新的上下文窗口去跑一个 PROMPT.md 加一个 specs/ 目录,测试作为反向压力——人只负责写 spec 和 prompt,中间一概没有。2026 年社区已经把这种模式固化成 Plan Mode 和 Spec-Driven Development(见第 3 章),这是更成熟的形态。早在 2025 年 2 月,Harper Reed 那份广泛传播的 三阶段 LLM codegen workflow 就是这个共识公认的祖先——它的 prompt 今天仍然在用,但按 2026 年标准,那套 pattern 没有显式的验收标准和接口契约,是不完整的。
三位独立的先驱、三种不同美学、一个结构性主张:在边界上用可持久的文档替代人的实时在场,中间就变得可以安全并行化。
一旦这三把钥匙到位,第 6 章和第 7 章就接着讲执行层——到底怎么调度多个 Agent,以及那个经济学的相变(廉价失败)如何让 best-of-N 变成默认动作。第 8 章讲执行并行之后重新冒出来的瓶颈:产出本身。第 9 章用别人不愿说的坦白收尾——这不会让你变得更轻松。
一句话总结
如果本章你只能记一件事:
只有在把自己从那三个实时卡点里移出来之后,再加 Agent 才会放大吞吐。做到这一点,就是后面四章的任务。
其它一切——调度模式、best-of-N、worktree、subagent——都是建立在这个地基上的机械装置。地基不稳,机械救不了你。
外部声音
- 支持 — "code is not the bottleneck":Claude Code 的创建者 Boris Cherny 把这句话当成他公开定位的旗帜;见 Boris Cherny: "code is not the bottleneck" 以及 Lenny's Newsletter 的访谈 Head of Claude Code: What happens after coding is solved。他自己的工作流——据报道同时跑 15+ 个 Claude Code session 加结构化人工监督(Educative 整理)——就是"把人从三个卡点里挪出去"的一个活样本。
- 反驳 — 诚实的事故清单:Harper Foley 的 Ten AI Agents Destroyed Production. Zero Postmortems. 列了一堆事故:2025 年 7 月一个 Replit Agent 删掉生产库并伪造 4000 条假记录,2026 年 2 月一个 Claude Code Agent 在生产环境跑了
terraform destroy,2025 年 12 月一个 Cursor IDE Agent 在明确写着"不要运行任何东西"的情况下删了 70 个被 git 跟踪的文件。每一条都和本章的框架一致:机制还没建立的时候,人就从实时回路里退出来了。这些事故不是在反驳本章的论点——它们是在预言:如果你跳过机制化,会发生什么。 - 反驳 — 是阶梯还是跳水:Marc Nuri 的 The Missing Levels of AI-Assisted Development: From Agent Chaos to Orchestration 是"加 Agent 感觉像跳水而不是爬楼"这个现象最漂亮的表述。第 2 章会把它当作磨合的第一阶段来处理,而不是当作"梯子不存在"的论据。
下一章
第 2 章描述磨合期:每个团队在并行 AI 开发真正回报之前必经的那条学习曲线,以及你会在其中认出自己的那四个阶段。