Skip to content

单代理架构:为什么不用多 Agent 协作

Archon Protocol 的核心选择——一个 Agent 做所有事,内部 Skill 是工具而非同事。


一、起点:一个反直觉的问题

软件行业几十年的经验告诉我们:复杂系统需要分工协作。微服务、团队拆分、DevOps——一切都在强调"专人专事"。

那 AI 编程是不是也应该这样?一个 Agent 写代码、一个 Agent 做审计、一个 Agent 跑测试、一个 Agent 做部署,然后让它们"协作"?

Archon Protocol 的答案是:不。

理由很简单——

连人都可以独立完成全栈研发、架构设计、产品思维和运维部署,一个 Agent 难道不能自己做到吗?

一个优秀的全栈工程师不需要四个人帮他分工。他写完代码会自己跑测试,自己审查,自己部署。他不需要"协作协议"和"消息传递"——所有决策在同一个大脑中完成,目标天然一致。

AI Agent 也一样。


二、多 Agent 协作的根本问题

问题 1:目标一致性无法保证

多个 Agent 各自有独立的上下文窗口和指令集。即使你给每个 Agent 相同的"项目目标",它们对目标的理解和优先级排序不可能完全一致。

Agent A(编码):优先实现功能,代码风格次要
Agent B(审计):代码风格最重要,功能是否完整不关心
Agent C(测试):只关注覆盖率,不关心代码是否可维护

结果:三个 Agent 在三个方向上拉扯,最终产物是妥协,不是最优解。

一个人类全栈工程师不会有这个问题——他同时理解功能、质量和可维护性,在编码的每一步同时权衡三者。

单 Agent 也是如此。当一个 Agent 同时承担实现和审计的职责时,它在写代码的那一刻就已经在考虑"这段代码审计时会不会有问题"。预防优于修复。

问题 2:上下文在传递中丢失

多 Agent 系统的致命伤:Agent A 把任务交给 Agent B 时,必须把上下文序列化为文本。

Agent A 知道的:
  - 为什么选择方案 X 而不是方案 Y
  - 哪些尝试失败了
  - 代码中哪些地方是刻意的权衡
  - 用户需求的隐含意图

Agent A 传递给 Agent B 的:
  "我实现了功能 Z,请审计。"

Agent B 实际收到的上下文:不到 Agent A 的 10%

这就是电话游戏效应——信息在每次传递中衰减。三个 Agent 传递两次,最终 Agent 可能在审计一个它完全不理解设计意图的代码。

单 Agent 不存在这个问题。从需求理解到代码实现到自审修复,所有决策上下文都在同一个上下文窗口中,零信息损失。

问题 3:协调成本吞噬收益

多 Agent 需要:

协调机制成本
消息格式定义设计 + 维护
任务分配策略谁做什么?冲突怎么办?
结果合并逻辑Agent A 和 B 意见不同怎么办?
错误传播处理Agent B 失败了,Agent A 要重来吗?
顺序依赖管理审计必须等编码完成,测试必须等审计完成
状态同步Agent C 修了 bug,Agent A 知道吗?

这些协调成本是固定开销——无论任务大小都要付出。对于大多数日常开发任务(一个功能、一个修复、一个重构),协调成本可能超过任务本身的复杂度。

人类团队用 Jira、Slack、Code Review 来管理这些开销,而且仍然经常出现沟通失误。AI Agent 的"协作协议"不会比人类的更可靠。

问题 4:责任稀释

多 Agent 场景:
  代码有 bug → 是编码 Agent 的问题?还是审计 Agent 没审出来?还是测试 Agent 覆盖不全?
  → 没有明确的责任归属
  → 没有一个 Agent 有动力去"彻底"解决

单 Agent 场景:
  代码有 bug → 就是这个 Agent 的问题
  → 它在自审阶段就必须找到并修复
  → 无处甩锅

责任归属清晰是质量的前提。一个 Agent 对整个交付负全责,它没有理由敷衍任何一个阶段。


三、那 Archon Protocol 的"内部 Skill"是什么?

Archon Protocol 确实有内部 Skill:self-auditortest-runnerverifier。这不是矛盾吗?

不矛盾。内部 Skill 是工具,不是同事。

类比人类:

多 Agent 协作Archon Protocol 内部 Skill
人类类比四个工程师组队,各负责一块一个工程师用 IDE、终端、调试器
关系平级协商主从调用
决策权各自决策,需要协调主 Agent 决策,Skill 执行
上下文各自独立,需要同步主 Agent 掌握全局
冲突需要仲裁机制不存在——主 Agent 说了算

/demand 调用 self-auditor skill 时:

  1. 主 Agent 决定何时需要审计(它掌握全局上下文)
  2. 主 Agent 按 skill 定义的流程执行审计(明确范围和目标)
  3. Skill 提供结构化的审计步骤(专注,不混入实现逻辑)
  4. Skill 产出审计报告
  5. 主 Agent 决定如何处理结果(接受、忽略、修改)

内部 Skill 没有决策权。它是一把螺丝刀,不是一个同事。你不会和螺丝刀"协商"要不要拧紧螺丝。


四、为什么需要内部 Skill(而不是全部在主 Agent 中做)

既然是单 Agent 架构,为什么还要拆分为多个 Skill?为什么不在一个巨大的 Skill 中完成一切?

一个字:上下文窗口。

LLM 的上下文窗口是有限资源(截至 2026 年,通常 128K-200K token)。一个完整的 Demand 循环中:

主 Agent 上下文:
  - 用户需求的理解
  - 已修改的代码
  - 架构上下文
  - 规则约束
  → 已经消耗大量 token

如果自审也在同一窗口:
  - 扫描所有规则的禁止项
  - 搜索所有修改文件
  - 分析每个文件的每条禁止项
  → 上下文窗口溢出,前面的信息被"挤出"注意力范围

拆分 Skill 解决的是认知聚焦问题,不是分工问题:

  • 主 Agent 保持对全局的掌握
  • 每个内部 Skill 定义了一件事的标准流程(审计、测试)
  • 结果由主 Agent 统筹决策

这就像一个全栈工程师用多显示器:一个屏幕写代码,一个屏幕看测试结果,一个屏幕看日志。不是三个人在协作——是一个人在用多个工具。


五、反驳:"一个总 Agent + 多个专家 Agent"不就行了吗?

这是最常见、也最有力的反驳:

"不是让 Agent 平级协商,而是像传统团队一样——一个 Tech Lead Agent 做最终决策,编码 Agent、测试 Agent、审计 Agent 各司其职,向 Lead 汇报。这不就解决了目标一致性和责任归属的问题吗?"

表面上看,这模型完美复刻了人类高效团队的运作方式。但仔细分析,它在 AI 场景下有三个致命缺陷。

缺陷 1:总 Agent 的"二手信息"困境

人类 Tech Lead 能有效决策,因为他曾经亲手写过代码。他能一眼看穿代码设计的深层意图,因为他有多年亲身实践的隐性知识。

但 AI 的"总 Agent"不是这样运作的:

编码 Agent 写了 500 行代码

总结为 50 行报告交给总 Agent

总 Agent 基于 10% 的信息做"最终决策"

问题:
  - 为什么选方案 A 而不是方案 B?报告没写。
  - 这个 workaround 是被迫的还是偷懒?报告看不出。
  - 这段代码和项目其他模块的耦合风险?编码 Agent 没提。
  - 总 Agent 能发现报告里没提到的问题吗?不能——它没读过代码。

总 Agent 的决策质量受限于子 Agent 的汇报质量。 但如果子 Agent 有能力写出一份完美的汇报——覆盖所有权衡、所有风险、所有替代方案——那它已经具备了自己做决策的能力。

这引出了核心悖论。

缺陷 2:能力悖论——如果总 Agent 够强,它不需要团队

场景 A:总 Agent 能力不够强
  → 无法有效评估子 Agent 的工作
  → "最终决策"变成"橡皮图章"——总 Agent 只是批准它无法理解的结果
  → 等于没有决策

场景 B:总 Agent 能力足够强
  → 它能理解代码、评估测试、判断架构
  → 那它为什么不直接写代码?
  → 让它做"管理者"是浪费它最强的能力

在人类团队中,Tech Lead 不亲自写所有代码是因为人类有体力上限——一个人每天有效编码时间不超过 6 小时。分工是因为生理约束,不是因为分工本身更优。

AI 没有体力上限。 它不需要吃饭、睡觉、开会。如果它有能力做 Tech Lead,那它也有能力直接做全栈——而且做得更好,因为它拥有第一手的完整上下文。

让一个足够强的 Agent 去"管理"而不是"做",是对能力的浪费。

缺陷 3:人类团队模型的类比谬误

把人类团队结构套到 AI 上,忽略了两个根本差异:

人类团队AI 多 Agent
分工原因生理限制(体力、注意力、时间)不存在——Agent 无疲劳
专业化收益巨大——人脑学习成本高,专精一个领域效率高几乎为零——同一个 LLM 本身就是全栈的
沟通媒介语言 + 表情 + 肢体 + 共同经历纯文本序列化(信息损失严重)
隐性知识Tech Lead 有多年经验的隐性判断"总 Agent"只有当前对话的上下文
信任基础长期合作建立的默契和信任每次对话从零开始,没有信任积累

人类分工有效是因为:

  1. 专业化降低了每个人的学习成本——但 LLM 不需要"学习",它已经知道所有领域
  2. 并行提升了团队总吞吐量——但 AI 的瓶颈不是 CPU 时间,而是上下文质量
  3. Tech Lead 有超越文本的判断力——但 AI 总 Agent 只能读文本报告

当你剥去这三个人类团队的优势,"总 Agent + 多专家 Agent"模型剩下的就只有协调成本,没有收益。

Archon Protocol 的回应:约束系统 > 管理层

传统团队需要 Tech Lead 的原因之一:确保团队成员遵守架构规范

Archon Protocol 用一种更直接的方式解决这个问题:把规范写成文档,注入 Agent 的上下文窗口。

传统团队模型:
  架构规范 → Tech Lead 理解 → Tech Lead 监督 → 开发者遵守(可能不遵守)
  信息链路:3 步,每步有衰减

Archon Protocol 模型:
  架构规范 → 直接注入 Agent 上下文 → Agent 遵守(规则在它的"意识"里)
  信息链路:1 步,零衰减

你不需要一个"总 Agent"来监督编码 Agent 是否遵守了规范——你只需要把规范直接写进编码 Agent 的约束中。文档化的约束 > 另一个 Agent 的监督。

这就像:你不需要一个保安站在程序员旁边确保他不写 any 类型。你只需要一条 lint 规则。

唯一的例外

有一个场景"总 Agent + 多 Agent"确实优于单 Agent:

当任务可以完全并行、模块间零耦合时。

比如同时开发 5 个互不依赖的微服务。这时候 5 个编码 Agent 并行、1 个总 Agent 汇总,确实比 1 个 Agent 串行做 5 次快。

但注意条件:零耦合。现实中大多数开发任务都有耦合——改了数据库 schema 影响 API,改了 API 影响前端,改了前端影响测试。耦合越多,并行收益越低,协调成本越高。

Archon Protocol 的选择是:宁可串行保证一致性,也不并行冒耦合风险。 对于 95% 的日常开发任务,这是正确的取舍。


六、总结:单 Agent 的哲学

多 Agent 协作 = 管理问题
单 Agent + 工具 = 工程问题

管理问题的复杂度随 Agent 数量指数增长——沟通路径是 N×(N-1)/2。 工程问题的复杂度随工具数量线性增长——每个工具独立,互不干扰。

Archon Protocol 选择把复杂度控制在工程层面:

  • 一个 Agent 理解需求、实现代码、审计质量、运行测试、提交代码
  • 内部 Skill 是它的工具——提供结构化流程和专注能力,但没有独立决策权
  • 约束 Skill 是它的边界——不依赖第二个 Agent 来"看住"它,而是靠文档化的禁止项

一个高水平的全栈工程师 + 一套完善的工具链 + 一套严格的规范 > 一个团队的初级工程师互相 review

Archon Protocol 的目标不是造一个 AI 团队。是造一个带着完善约束体系的 AI 全栈工程师


七、延伸思考

"一个人的全栈"是否有上限?

人类有。一个人能管理的代码量大约在 5-10 万行之后就开始退化。

AI Agent 的上限不同——它不会疲劳,不会遗忘已写入规则的内容,不会因为赶工而偷工减料(如果规则禁止了)。但它受限于上下文窗口——一次对话中能处理的信息量是硬限制。

Archon Protocol 的自进化机制部分解决了这个问题:不是每次都从零理解全项目,而是把项目知识沉淀为约束 Skill,每次只需加载 Skill。Skill 是项目的"压缩记忆"。

未来的可能性

如果上下文窗口增长到 100 万 token?内部 Skill 拆分的必要性会降低(认知隔离不再是硬约束)。但单 Agent 的核心优势——目标一致性、零协调成本、责任清晰——不会因此改变。

技术变化,哲学不变:一个足够强的个体 + 足够好的约束 > 一群需要协调的个体。

Powered by AAEP (AI Architect Evolution Protocol)