Anthropic:何时该把 Subagent 折回主 Agent Loop · 干货攻略
- 链接: https://x.com/omarsar0/status/2114057736363352127
- 分类: x-tips
- 来源: X @omarsar0(elvis)
- 作者: Jay
- 更新: 2026-10-26
- 仓库: https://github.com/anthropics/single-agent-loop-kit
- 官方原文: https://claude.com/resources/articles/building-agents-when-to-fold-subagents-into-your-main-agent-loop
这是什么
一条 X 帖子(@omarsar0,2026-10-24)推荐 Anthropic 官方新文 《Building agents: When to fold subagents into your main agent loop》(发布于 claude.com,主题为“什么时候该考虑少用 subagent”),配图是该文 “Reducing subagents over time” 一节的示意图。
这不是“又一篇多智能体框架文”,而是 Anthropic Applied AI 团队主动劝退一部分企业把 subagent 拆出去的官方指南:他们比较了多个企业部署后得出结论——“一个带 skills 的单 agent”往往在质量上胜过 subagent 架构,且单任务的成本与延迟更低。
原帖作者本人的立场与官方一致:他说 frontier 模型在上下文管理上进步后,subagent 仍有用,但主要用在复杂研究任务的并行化(各自独立上下文窗口),自己则主要通过动态工作流跑研究。
核验来源
官方来源(已读全文):
- 官方文章:https://claude.com/resources/articles/building-agents-when-to-fold-subagents-into-your-main-agent-loop(读取完整正文,非摘要)
- 官方仓库:https://github.com/anthropics/single-agent-loop-kit(HTTP 200,Anthropic 官方组织 anthropics 下的 single-agent-loop-kit,即文中所称 migration kit)
- 原帖:https://x.com/omarsar0/status/2114057736363352127(经 X syndication 接口核对正文与图片资源)
关键数字的出处(全部出自上述官方文章正文): - 单 agent loop 相对多 agent harness 约 2 倍更快(“One customer that evaluated their multi-agent harness against a single agent loop saw a roughly 2x faster runtime”) - Claude Code 系统提示词对高级模型削减超过 80%,原因之一就是渐进式披露 skills 与工具 - 工具定义超过 30–50 个后,工具选择准确率会退化,建议按用户意图分组并配合 tool search 延迟加载 - 任务完成度 eval 10 条 golden example 即可起步 - “一条清晰的系统提示 + 4–5 个薄数据工具 + 硬性输出护栏”可覆盖多数用例
核心内容
什么时候 subagent 仍然该留
官方明确列出三条保留条件: 1. 单 agent loop 因上下文膨胀出现可测量的性能退化; 2. 多个任务需要并行处理,且各自需要用完即弃的干净上下文窗口; 3. 单 agent 难以选择合适工具,或系统提示里存在互相冲突的指令。
原帖作者的第 2 条(并行化研究任务)正落在这一条上。
大组织做 agent 的五种典型失败模式
- 上下文管理:多 agent 之间传递什么上下文需要人肉设计,来回传递丢失细节;
- subagent 蔓延:每个团队各交付一个 subagent,最后几百个功能重叠、无标准无归属;
- Frankenprompt:每个团队往系统提示里塞一句,规则互相打架、语气不一致;
- eval 局部化:各自只优化自己子任务的 eval,没人负责端到端;
- 延迟:多 agent 的结构复杂度直接转化为延迟(客户实测约 2x)。
推荐的“单 loop”目标形态
- 一个模型、一个上下文窗口,跑开放式工具循环,限制(turn/成本预算、写入门禁)由 harness 承担;
- 每轮模型发出一批工具调用,harness 并行执行后把原始结果交回同一模型,由它决定下一批 / 追问用户 / 收尾;
- 循环在模型作答或触达 budget 时结束,之后可选跑 goal/verifier 检查;
- 写计划和执行计划的是同一个模型,因此可以中途改计划;
- 领域流程与顺序规则下沉到 skills,硬性限制(校验、审批)与中途才需要的东西(记忆查询)下沉到 tools,机械活(payload 构造、流解析、恢复澄清)留在工具里用代码做。
分阶段迁移路径(官方给出的四步)
- 先建任务完成度 eval:一个中心团队拥有的端到端 eval 集,加上每个 skill 随附的小 eval;有 orchestrator 时先量“路由准确率”,折进来后改看“是否加载了正确的 skill / 调用了正确的工具”。
- 合并领域 subagent:合并那些输出首尾相接、碰同一批数据、或经常被连续调用的 specialist。
- 把 subagent 当工具调用:主 agent 以工具方式调子 agent 并继续持有对话,可共享响应 schema、用主 agent 拿真实数据复核结论;只有当子 agent 必须直接跟用户对话时才做完整 handoff。残留问题:每个专家仍有自己的 prompt/owner/eval、每次调用仍回传有损摘要、每次调用仍是嵌套模型循环(加延迟)。
- 折成 skills + MCP tools:一次只折一个,把 prompt 变成 skill、把 API 调用变成 MCP tool,对比有无该 subagent 的 eval 分数,并看哪些任务发生了翻转。
官方给了一个反直觉的实测:在一个客服 agent 样本上,把某个 subagent 折进另一个,延迟降了,但破坏了原本通过的流程——主 agent 拿着订单查询工具自己作答,没有去问发货专家要预计送达日期。官方因此要求:每条链上会一起跑的 agent 组合、每条不能破的规则都要有 eval 任务,且每条任务跑不止一次(该次断裂在两次里只出现一次)。
多个团队如何共同喂一个 agent
- MCP tools:适合执行动作、读实时数据、返回固定结构;按用户意图分组,用 tool search 延迟加载;工具内部做硬前置校验和按用户权限返回可读拒绝。
- Skills:适合承载“这一行怎么做”的步骤、规则与判断;每个团队设 DRI 拥有自己的 skill,并用
/skill-creator编写、/skill-doctor审计成本与使用率、删除死重。 - 知识库:适合只是偶尔需要的事实与参考材料,放在检索/查询工具后,或作为 skill 内的参考文件——官方明确反对“让代码把上下文捞出来粘进 prompt”。
配套工具
官方发布了 Claude API skills 组成的 migration kit(仓库即 anthropics/single-agent-loop-kit),可先在 mock 系统上演示再上真实系统:
- /claude-api build-eval:搭第一套端到端 eval 或每个 skill 的小 eval;
- /claude-api prompt-audit:标记为旧模型写的指令并给出 diff 修正;
- /claude-api hillclimb:对已有 eval 迭代改进,正好用于“折进来 vs 保留”的对比;
- /claude-api cost-optimize:profile 调用开销,从 prompt 缓存、裁剪 token、effort、模型选择逐项省成本与延迟。
上手步骤(面向想动手的团队)
- 别先改架构,先建 eval:抓 10 条真实用户请求当 golden example,用 rubric 给最终回复打分。
- 量现状:如果你有多 agent harness,量端到端延迟和单任务成本,和单 loop 的数字对比(官方案例约 2x)。
- 画依赖图:标出哪些 specialist 经常被连续调用/碰同一数据/输出首尾相接 —— 这些是首批合并候选。
- 一次折一个:prompt → skill,API 调用 → MCP tool;折完跑同一个 eval,并逐条比对翻转的任务。
- 别信平均值:每条 eval 任务跑多次,官方案例里的回归就只在两次中出现过一次。
- 收缩工具面:工具定义控制在 30–50 个以内,超了就按意图分组 + tool search 延迟加载。
- 多团队协作:每团队把自己的 subagent 交成 skill + tool,由一个小的中心团队持有系统提示词与端到端质量,对新 skill/tool/eval 统一准入。
适用边界
- 面向 Claude Platform 上的企业级多 agent 系统(Anthropic 自家部署与客户部署的观察),不是面向普通终端用户的“Claude Code 使用技巧”。原文里的数字(2x、80%、30–50、10 条)都是原文举例与经验值,不是通用基准。
- 官方明确没有否定 subagent:并行研究、独立验证、模块化权限仍是它的强项,并给出上面三条保留条件。不要读成“subagent 过时”。
- 结论随模型能力变化。原文点名:自 Opus 4.5 起模型在单 loop 里能管理的事远超多数团队预期;提到 Opus 5.5 无法关闭 thinking、Fable 5.1,以及新模型会自述进度、自查结果,使部分 harness 元素冗余。模型换代后需要重新评估,官方原话是“measure, change one thing at a time, and keep what holds up”。
- 文章面向有多个团队、多产品的组织;单人或小团队照抄“中心团队持有系统提示词”这类组织设计没有意义。
- 单 loop 设计对工程纪律要求更高:系统提示词要精心维护、skill/工具描述要能在正确时机触发、上下文窗口/记忆/笔记要显式管理。文章不提供可直接复制的 prompt 模板。
不确定处
- 原帖正文只是推荐 + 一张图,没有给出 Anthropic 原文链接;官方文章链接是通过原帖图片对应的引文推文(@cherry_mx_reds 的链接卡片)解析得到,卡片标题为“Building agents: When to fold subagents into your main agent loop”、域名 claude.com,与本文正文一致。
- 原帖图片是官方文章中的“Reducing subagents over time”示意图(合并 subagent / 把 subagent 当工具 / 折成 skills 与 tools 三步),图片本身不含数字。
- 文中 Claude Code 子命令(
/skill-creator、/skill-doctor、/claude-api *)来自官方文章与官方文档入口(https://code.claude.com/docs/en/commands),本次未逐条打开命令文档核验其参数与安装方式。 - 官方仓库
anthropics/single-agent-loop-kit仅确认存在与归属(HTTP 200、owner=anthropics),未运行其 demo。