写代码到底需要几个Agent?

封面

这不是一篇技术教程,而是一个实践者的思考。当整个行业都在喊”Multi-Agent 是未来”的时候,我们想聊聊:对于写代码这件事,你真的需要那么多 Agent 吗?

一个真实的困惑

2026 年,打开任何一个 AI 技术社区,你都会看到铺天盖地的 Multi-Agent 架构讨论。CrewAI、LangGraph、AutoGen、Google ADK……框架层出不穷,仿佛不用多 Agent 协作,你就落伍了。

Reddit 上有人信誓旦旦地说:”2026 是 Multi-Agent 架构之年。” Medium 上的文章标题是”从结对编程到自主 AI 团队”。Dev.to 上的热文宣称 Multi-Agent 正在”重塑企业开发”。

听起来很美。但作为一个每天用 AI 写代码的人,我的体感是:大多数场景下,一个 Agent 就够了。

行业里的两种声音

在这个问题上,行业并没有共识。事实上,存在两个截然对立的阵营。

“别搞 Multi-Agent”派

最有代表性的是 Cognition——Devin 背后的团队。他们发了一篇影响力很大的文章 “Don’t Build Multi-Agents”,核心观点是:

多 Agent 之间的上下文丢失是致命问题。子 Agent 会误解主任务的意图,最终拼合出来的结果往往不是你想要的。

他们举了一个直观的例子:你让一个 Agent 做 Flappy Bird,它把任务拆成”做背景”和”做小鸟”两个子 Agent。结果一个做出了马里奥风格的背景,另一个做出了不像游戏素材的鸟。两个子 Agent 都没错,但合在一起完全不对。

这不是 Agent 不够聪明的问题,而是上下文在传递过程中不可避免地会降解。就像一个公司里,老板的想法经过三层管理者传达到执行层,早已面目全非。

Cognition 的结论很明确:与其拆成多个 Agent 互相通信,不如把 Context Engineering(上下文工程) 做好,让一个 Agent 拿到完整的信息。

“Multi-Agent 才是未来”派

另一边,Cosine AI(Genie 团队)直接写了反驳文章,搬出了一个重量级数据:

Anthropic 的多 Agent 系统(Opus 主控 + Sonnet 子 Agent),在复杂任务上比单 Opus Agent 性能高 90.2%。

90.2%!这个数字被反复引用,成了 Multi-Agent 阵营最有力的弹药。

但这里有一个关键细节——那个 90.2% 的提升来自研究类任务,不是写代码。Anthropic 自己也承认:

“大多数编码任务涉及的可并行子任务,远少于研究类任务。”

换句话说,搜索 20 篇论文然后综合,天然适合并行拆分;但写一个功能模块,前一行代码的决策会影响后一行,这种串行依赖让并行化很难发挥优势。

我的观点:1 + N + 1

1+N+1 Agent Architecture

综合实践和调研,我认为对于软件开发,最优配置不是越多越好,而是三层结构:

第一层:1 个主力 Agent 干活

不需要”架构师 Agent”、”测试 Agent”、”PM Agent”这种模仿人类组织架构的角色分工。

为什么?因为人类之所以要分角色,是因为一个人的精力有限、知识有限、上下文有限。但 LLM 没有这些瓶颈——一个足够强的模型,给够上下文,写代码、写测试、做设计,一个人全干,反而比多个 Agent 互相传话效率高。

组织架构是人类认知局限的妥协方案,不是最优解。AI 不需要重复这个妥协。

第二层:N 个并行 Agent 按模块拆

唯一值得拆 Agent 的理由是上下文隔离,而不是”需要更多人手”。

什么意思?前端代码和后端代码,上下文几乎不重叠。前端 Agent 不需要看数据库 Schema,后端 Agent 不需要看 CSS 样式。硬把它们塞进同一个上下文,反而是噪音。

所以,当你的项目足够大,有明确的模块边界时,按模块拆成并行 Agent 是合理的。但这是一个工程决策——基于上下文窗口的效率考量——不是组织设计。

⚠️ 超过 3 个并行 Agent 就要警惕了。Agent 之间的协调成本会快速上升,文件冲突、代码风格不一致、架构决策矛盾……

第三层:1 个异源 Reviewer

这一层解决的是同源盲区问题。

一个 Agent 写完代码再自己 Review,就像一个人写完作文自己检查错别字——你的大脑会自动”补全”你已经认为正确的东西,很难发现自己的盲区。

关键不是多找几个 Agent 来 Review,而是至少一个不同的视角:

一个异源 Reviewer 就能抓住大部分盲区。两个有点奢侈,除非是特别关键的系统。

为什么 Multi-Agent 被过度营销?

Over-engineered vs Just Right

我觉得有几个原因:

  1. 框架厂商需要故事。 CrewAI、AutoGen 这些框架,存在的意义就是管理多 Agent。如果大家都只用一个 Agent,它们就没有市场了。

  2. “看起来高级”的认知偏误。 一个 Agent 干活,听起来太简单了,不够”架构”。多 Agent 协作,画出来的图更漂亮,PPT 更好看,技术分享更有噱头。

  3. 把”能做”和”该做”混为一谈。 你当然可以搞 5 个 Agent 写一个 CRUD。问题是应该吗?通信成本、调试难度、结果不一致……这些隐性代价往往被忽略。

一个简单的判断标准

当你考虑要不要用多 Agent 时,问自己一个问题:

这些任务的上下文有多少重叠?

就这么简单。不需要更复杂的决策框架。

结语

Multi-Agent 不是银弹,单 Agent 也不是。关键是理解什么时候拆分有价值,什么时候只是在增加复杂度。

对于大多数日常开发任务,1 + N + 1 就是最优解:一个主力干活,按需并行拆模块,加一个异源 Review。简单、高效、可控。

别被框架的营销迷了眼。好的工程决策,不是看起来最先进的,而是刚好够用的。


写代码到底需要几个Agent?
http://yoursite.com/posts/50281/
作者
海鹏
发布于
2026年3月20日
许可协议