子 Agent 是临时的,没有独立的身份、记忆和渠道,也不会出现在 Agent 列表中。
两个作用
- 独立的上下文:中间过程不占用主对话的上下文,节约 token,也让模型的注意力集中在相关内容上
- 并行执行:一次可以创建多个子 Agent 同时执行,总耗时取决于最慢的一个
继承与隔离
子 Agent 从主 Agent 继承一部分环境,但不是主 Agent 的副本:
因此子 Agent 只知道主 Agent 传递给它的内容。它看不到对话历史,也无法向用户提问,所需的路径、标识、约束和已确定的结论,都需要主 Agent 在创建任务时一并写明。
触发时机
由主 Agent 自行判断,无需配置,也没有专门的命令。 会创建子 Agent 的情况:- 有多件互不依赖的事情可以同时进行,例如「分别深度调研 A 和 B 两个产品」
- 某件事会产生大量中间内容,但只需要结论,例如「研究一下这个报错社区里有没有已知解法」
- 主 Agent 需要中间结果才能继续(自己读几个文件、搜索几次属于正常执行)
- 任务依赖对话中之前的内容,或执行过程中需要向用户确认
- 需要跨对话长期执行的任务,这类任务应使用定时任务
运行展示
每个子 Agent 在 Web 控制台和桌面端都对应一张独立的卡片,展开可以看到它当前调用的工具和执行到的步骤,结束后卡片内是它的完整报告。多个子 Agent 各自开始和结束,可以直接看出哪一个尚未完成。
类型与配置
子 Agent 分为general-purpose、explore 两种内置类型,也支持在工作区自定义类型。类型、可用工具、并发与超时等配置,以及禁用的工具,见 subagent 工具。