4.7 子代理
本节目标
学会让 agent 把任务拆给子代理由主智能体委派出去执行子任务的子智能体,可并行工作、结果汇总回主会话。,多个子代理并行干活,主代理统筹汇总。
什么是子代理
agent 干活是一个线程从头跑到尾。但有些任务天然适合分工:
- 调研任务:同时查文档、查代码、查社区,三个方向互不干扰
- 大项目改造:一个子代理改前端,一个改后端
- 独立子任务:让一个子代理专门核对数据,另一个专门写测试
子代理由主智能体委派出去执行子任务的子智能体,可并行工作、结果汇总回主会话。就是 agent 委派出去的子 agent。主 agent 把任务拆开,分配给子代理并行执行,最后收集结果汇总给你。相当于主代理当项目经理,子代理是干活的组员。
怎么触发子代理
不需要专门的按钮,直接在指令里说就行:
用两个子代理并行调研:一个查这个框架的文档,一个查社区的实践案例,最后汇总
agent 判断任务适合拆分时,也会自己决定使用子代理。你会在消息流里看到子代理行:它们像工具调用一样展示,但展开后是子代理自己的完整对话记录。
界面上的子代理
子代理在界面上的呈现有几个特点:
- 子代理行:消息流里每个子代理一行,显示它领了什么任务
- 完整转写:点开子代理行,能看到子代理自己的完整对话(它思考了什么、调用了哪些工具、怎么交的差)
- 子代理导航:从父会话一次独立的对话记录,有自己的上下文,互不干扰。可以进入子代理的会话视图,就像打开一个子对话
- 侧栏并排看:0.1.6-alpha.2 起,页头谱系行里的子代理可以直接在右侧边栏打开:优先独立分栏、主对话和子代理对话并排放,没法分栏时退回当前栏替换显示,边盯主对话边看子代理干活
- 并行状态:多个子代理同时跑时,各自的状态独立显示
能对子代理做什么
除了"派活",你还可以:
- 给子代理发消息:中途补充信息、调整方向
- 打断子代理:跑偏了让它停下来
- 查看子代理列表:看清当前有哪些子代理在跑、什么状态
- 接管子代理的人工收件箱:0.1.3-alpha.2 起,对于支持连续执行的子代理,你可以像管理主会话一样管理它的人工 inbox。子代理停下来等你确认时,你可以直接回复、继续或取消,操作体验和主会话一致
- 调委派限制:0.1.6-alpha.2 起,侧栏插件页的 Subagent 卡片里可以改两个数:最大递归深度(子代理还能不能再派子代理,默认 1 层,即只许主 agent 直接委派)和 Subagent 并行数量上限(所有层级里同时活着、可续接的子代理总数,含等待中的,不算一次性运行和外部提供方)。保存后对后续委派生效,调低上限不会叫停已经跑起来的子代理。同一个卡片里还能管子代理模型选择:开个权限开关、勾选允许用哪些模型路由,防止委派时用错贵的模型
什么时候用子代理
| 场景 | 用子代理的收益 |
|---|---|
| 多方向调研 | 并行查,省时间 |
| 前后端/多模块并行改 | 互不阻塞 |
| 独立子任务 | 上下文模型一次请求中可见的信息范围,包括对话历史、注入的提示和工具结果。隔离,不互相干扰 |
提示
子代理适合"拆得开、各干各"的任务。任务紧密耦合、改一处影响全局的,反而不适合拆,交给一个 agent 从头做更稳。
用 Codex / Claude Code 当子代理
除了 dsh 自带的进程内子代理,你还可以把真实的 Codex 或 Claude Code 应用接进来当子代理。它们是独立的可选 Profile 包,命令行装好再重启对应 Profile 即可:
dsh plugin --profile web add @deepseek-ai/dsh-subagent-codex @deepseek-ai/dsh-subagent-claude-code装完后它们只注册一个"待命"的 Host provider,并不会立刻获得工具权限。想让某个子代理真的能干活,复制一份完整的 Agent 预设,把对应工具行的 disabled 去掉,再开一个新会话即可。这属于进阶玩法,新手先熟悉内置子代理就够用。
常见问题
问:子代理会失控吗?
不会。子代理继承主会话的权限agent 能执行的操作范围,由沙箱和审批策略共同决定。边界,受同一套权限和审批agent 执行超权限操作前询问用户的机制,允许只放行这一次。管理。它的每一步也在监管之下。
问:子代理的结果怎么回到主会话?
子代理完成后会把结果汇报给主代理,主代理汇总后统一回复你。你也可以点开子代理行看原始过程。
小结
- 子代理是 agent 委派出去的子 agent,适合并行、隔离的任务
- 指令里说"用子代理并行干 X"即可触发,消息流里出现子代理行
- 可以给子代理发消息、打断、查看,结果由主代理汇总
- 0.1.6-alpha.2 起子代理对话可开进右侧边栏并排看,委派深度与并行上限在侧栏插件页可调
分工搞定了,下一节把长任务丢到后台,别挡住对话。