子智能体与技能快照:拆任务、可恢复、可热更新
这一章关注两个经常被低估的能力:复杂任务的“任务分治”和运行期能力的“可更新”。
入口:
1) 子智能体:隔离会话 + 防递归 + 可恢复
建议保留的硬约束:
- 子智能体运行在独立会话 key 下,避免污染主会话
- 子智能体禁止再 spawn 子智能体(防止递归扇出)
- 子运行需要注册与落盘,保证重启后可恢复未完成任务
2) 子结果回传:先 settled,再通告主会话
工程要点:
- 等 child run 完全 settled(包含压缩重试等收尾)再回传
- 结果回传优先通过“通告流”交给主智能体二次总结,保证对话风格一致
3) 跨会话协同:sessions_send 的边界
当需要跨会话/跨智能体协作时,建议做到:
- 目标会话定位明确(sessionKey/label)
- sandbox 可见性限制与 agent-to-agent 策略校验
- 运行在明确的 lane 上,避免扰动主会话执行
4) 技能快照:能力要 version 化,而不是每轮全量扫描
建议做法:
- 把 workspace 技能解析成稳定快照(prompt + resolvedSkills + env)
- 用 snapshot version 驱动刷新(文件变化或远程能力变化触发 bump)
- env 注入要可回滚(执行结束恢复环境)
验收清单
- 子智能体不可递归 spawn。
- 重启后未完成子任务可恢复并继续。
- 子结果回传稳定,且不会在未 settled 时提前汇报。
- 修改
SKILL.md后下一轮执行能拿到新快照版本。 - env 注入在运行结束后回滚干净。