VC从感觉到工程

工具介绍 · Lesson 05

Agent 与 Subagent:主线、分工与上下文隔离

理解 Agent 的工作循环、主 Agent 与 Subagent 的职责,以及何时值得委派、并行和限制工具权限。

约 15 分钟Agent / Subagent / 委派 / 上下文隔离

完成后你能:

  • 解释 Agent 如何围绕工具反馈循环工作
  • 区分主 Agent、Plan Agent 与 Subagent
  • 判断任务是否适合委派或并行
  • 为 Subagent 写清输入、权限与交付格式

模型负责理解与生成,Agent 则把模型放进一个可以观察环境、调用工具、检查结果并继续行动的工作循环。终端里看到的读文件、搜索代码、修改文件、运行测试和重试,都属于 Agent Harness 组织出来的行为。

接收目标

读取上下文 → 选择工具 → 执行动作 → 观察结果
     ↑                              ↓
     └────── 调整计划并继续 ─────────┘

用测试、Diff 与验收标准结束任务

主 Agent 负责保持任务主线

主 Agent 直接与你协作,持有当前会话、目标、约束和已经作出的决定。它应该:

  • 澄清目标、范围和完成定义;
  • 决定先探索、计划还是修改;
  • 把必要工作委派给 Subagent;
  • 汇总多个结果并处理冲突;
  • 对最终修改、验证和风险报告负责。

OpenCode 把可直接切换的 BuildPlan 称为 Primary Agents。Build 可以在权限范围内修改与执行;Plan 适合只读探索和方案分析。Claude Code 也提供 Plan 等工作模式,但入口与权限配置并不完全相同。

Subagent 是独立上下文中的执行者

Subagent 接收一项被明确划分的任务,在独立上下文中读取文件、调用获准工具并返回结果。它的价值首先是上下文隔离和专业分工,其次才是并行。

方面 主 Agent Subagent
上下文 保留整个任务的对话与决策 通常从一份委派说明开始
职责 维护主线、整合结果、决定下一步 完成边界清晰的专项任务
输出 最终修改、验证证据与风险 结论、证据、建议或限定范围的改动
权限 按当前会话和项目策略配置 可以进一步限制工具、目录与命令
适合 强依赖连续决策的工作 调研、搜索、审查和相互独立的子任务

Subagent 不会自动继承主会话中所有隐含信息。主 Agent 已经读过哪些文件、你口头否定过什么方案、哪些边界只能人工决定,都需要在委派说明中明确传递。

什么任务值得委派

适合委派的任务通常同时具备三个条件:

  1. 边界清晰:能说清要检查的目录、问题或候选方案;
  2. 结果可汇总:输出可以是事实、表格、风险列表或独立补丁;
  3. 低耦合:不会与其他执行者同时修改同一批核心文件。
任务 是否适合 Subagent 原因
搜索仓库中所有认证入口并列出文件与行号 适合 只读、范围清楚、结果容易核查
独立检查移动端、无障碍和控制台错误 适合 可以分成互不覆盖的验证维度
决定产品需求优先级 通常不适合 需要业务判断与持续对话
三个 Agent 同时重构同一个组件 不适合 修改冲突与整合成本很高
“帮我把整个项目做好” 不适合 没有边界、交付格式和停止条件

一份可执行的委派说明

角色:只读代码审查 Subagent。
目标:检查 src/components/ 中的移动端导航实现。
范围:只读相关组件、样式和测试;不要修改文件。
重点:键盘操作、焦点管理、375px 溢出和控制台错误。
证据:每个问题给出文件路径、具体位置和复现条件。
交付:按严重程度排序;没有问题也要说明检查过什么。
停止:不要启动部署、提交或外部消息。

这段说明包含角色、目标、范围、证据、交付格式和停止条件。模型名称不是最重要的字段;如果边界含糊,换更强模型也可能产生难以整合的结果。

OpenCode 与 Claude Code 的共同点和差异

两者都支持专门 Agent、独立上下文、工具限制与任务委派,但产品入口不同:

  • OpenCode 区分 Primary Agent 与 Subagent,可用 Tab 切换主 Agent,通过 @ 提及专门 Agent,也可让主 Agent调用子任务;
  • Claude Code 的 Subagent 由主会话委派,能够配置自己的提示、工具、权限与预加载 Skill;
  • 两边的默认 Agent、可否嵌套委派、并行方式和上下文继承规则都可能变化,不能把一个产品的配置文件直接复制给另一个。

使用前以 OpenCode AgentsClaude Code Subagents官方文档为准。

完成检查