Coding Agent Subagents

Subagents 是 coding agent 中将子任务委派给独立 AI 实例并行执行的模式,每个 subagent 有自己的上下文窗口、工具权限和 system prompt。

#tech / ai #type / concept #status / growing

[!info] related notes

Coding Agent Subagents

一句话定义

Subagents 是 coding agent 将复杂任务拆分给多个独立 AI 实例并行处理的模式,每个 subagent 有独立的上下文窗口、自定义 system prompt、工具权限和独立权限,主 agent 负责汇总结果。

为什么需要 Subagents

单个 Agent 的上下文窗口和注意力有限。当任务涉及:

  • 大量文件搜索和日志分析(会污染主上下文)
  • 多维度并行审查(正确性、安全性、性能)
  • 多个独立子任务可以同时进行
  • 需要专门化的 agent 角色(审查者、实现者、测试者)

Subagent 模式比单 agent 串行处理更高效、更可靠。

核心机制

主 Agent(用户交互入口)

 ├─ Subagent A:分析前端状态/query 流程    → 返回分析报告
 ├─ Subagent B:分析 Go 后端持久化逻辑    → 返回分析报告
 ├─ Subagent C:分析 Python runtime/SSE  → 返回分析报告

 └─ 汇总三个报告 → 输出架构诊断

关键特征:

  • 独立上下文:每个 subagent 不知道其他 subagent 的存在
  • 结果传递:只能通过主 agent 的脚本逻辑传递结果
  • 并发控制:受并发上限约束(通常 min(16, CPU核心数 - 2))
  • Schema 校验:通过 JSON Schema 强制结构化输出,保证 agent 间通信可靠

各产品的实现差异

维度CodexClaude Code
触发方式显式要求 “use subagents”Agent 工具或 Workflow 脚本
编排控制Codex 内部决定确定性脚本(Workflow)或主 agent 自行决定
自定义 agent支持 custom agents.claude/agents/*.md 自定义 agent 类型
并发模型并行执行后汇总并行屏障(parallel)或流水线(pipeline)
Schema 校验不明确JSON Schema 强制校验,不符合自动重试
额度消耗每个 subagent 独立消耗预算在主循环和所有 workflow 间共享

Codex 特有

  • Codex 只会在你明确要求时启动 subagents
  • 每个 subagent 消耗自己的模型和工具用量
  • 适合大型架构分析,不适合小 bug
  • 支持定义不同模型配置和指令的 custom agents

Claude Code 特有

  • Agent 工具:手动调用,主 agent 决定顺序和参数
  • Workflow 引擎:确定性脚本编排,支持 parallel()pipeline()phase()
  • 自定义 agent 类型.claude/agents/*.md 定义专门化 agent(如 Explore、Plan、code-reviewer)
  • 隔离模式isolation: 'worktree' 让 subagent 在独立 git worktree 中工作
  • 缓存恢复:编辑脚本后可从断点恢复,已完成的 agent 调用不重复执行

典型模式

多维度并行审查

主 Agent
 ├─ Subagent: 正确性审查
 ├─ Subagent: 安全性审查
 ├─ Subagent: 边界情况审查
 └─ 汇总:只有 ≥2 个审查通过才认为有效

实现→审查→修复循环

实现 Agent → 审查 Agent 1 (正确性)  ─┐
           → 审查 Agent 2 (安全性)  ─┼→ 汇总 → 修复 Agent → 再审查...
           → 审查 Agent 3 (边界)    ─┘

按领域拆分分析

前端 Agent → 分析 React state/query/route
后端 Agent → 分析 Go API/session/persistence
Runtime Agent → 分析 Python tool_call/SSE
→ 合并为架构报告

边界与易混淆点

  • Subagent 不是”更高级的 agent”——它的价值在于独立上下文和并行执行
  • 每个 subagent 都是全新独立会话,互相不知道对方存在
  • 并行不等于快——如果任务之间有依赖,强行并行会导致错误
  • Subagent 消耗额度比单 agent 更多,小任务不值得

最短记忆方式

Subagent = 把子任务委派给独立 AI 实例并行处理,各自有独立上下文,主 agent 汇总结果。

创建于 2026/7/4 更新于 2026/7/15