17 子智能体编排与生命周期
模块目标
理解主智能体如何安全地创建并管理后台子智能体任务。
步骤一:实现拆解(执行链路)
- 工具入口:
src/agents/tools/sessions-spawn-tool.ts
- 运行注册:
src/agents/subagent-registry.tssrc/agents/subagent-registry.store.ts
- 结果回传:
runSubagentAnnounceFlow(...)(由 registry 调用)
步骤二:细粒度讲解(小白版)
sessions_spawn做了什么
- 校验 task / agentId / model / thinking / timeout / cleanup
- 创建子 session key
- 可选给子会话写模型和 thinking 覆盖
- 调 gateway
agent方法触发子任务
- 为什么禁止“子智能体再 spawn 子智能体”
isSubagentSessionKey直接拦截- 避免递归爆炸与控制失效
- registry 持久化的价值
- run 记录落盘,进程重启后可恢复
- 包含 requester、child session、任务描述、cleanup 策略
- 完成后怎么通知主会话
- 监听 lifecycle 事件或 gateway
agent.wait - 调 announce flow 回传执行结果
- 根据 cleanup 策略决定删除还是保留子会话
- 还带有归档清理机制
archiveAfterMinutes到期可自动清理旧子会话