diff --git a/docs/design/architecture-v2.md b/docs/design/architecture-v2.md index ab5b4a8..0fb3a70 100644 --- a/docs/design/architecture-v2.md +++ b/docs/design/architecture-v2.md @@ -1186,6 +1186,49 @@ sanguo_moziplus_v2/ └── README.md ``` +### 3.6.1 执行历史归档机制 + +**目标**:每个步骤的完整执行过程都归档到任务目录,可追溯、可检索、可提炼经验。 + +``` +执行流程: + +1. Daemon 调度 Agent 执行步骤(sub-agent 或主 session) +2. Agent 执行完毕,回报结果 +3. Daemon archiver 做以下事情: + a. 读取 OpenClaw session transcript(.jsonl 文件) + b. 提取与该步骤相关的部分(按时间范围裁剪) + c. 写入 artifacts/task-{id}/steps/{step_id}/transcript.jsonl + d. 如果是 sub-agent,transcript 包含完整对话历史 + e. 如果是主 session,只裁剪该步骤执行期间的对话 +4. 经验沉淀时,读取 transcript.jsonl 做 AI 分析 +``` + +**transcript.jsonl 包含什么**: +- user 消息(用户的指令/反馈) +- assistant 消息(Agent 的回复/决策) +- tool 调用及结果(执行的命令、文件操作、API 调用) +- token 消耗统计 +- 错误和异常信息 + +**价值**: +- 🔍 可追溯:每个步骤的每个决策都有据可查 +- 📚 可学习:经验提取时能看完整上下文,不只是结论 +- 🐛 可复盘:坑和踩坑过程一目了然 +- 🧹 可清理:归档后 OpenClaw 原始 session 文件可以安全删除 + +### 3.6.2 Agent 调度混合方案 + +简单步骤用主 session,复杂步骤用 sub-agent: + +| 步骤类型 | 调度方式 | 原因 | +|---------|---------|------| +| 数据获取/文件操作 | 主 session + Gateway 发消息 | 简单快速,不需要隔离 | +| 编码/文档/调研 | sessions_spawn + cleanup=delete | 复杂任务需要隔离,防上下文污染 | +| 用户自己执行 | takeover,不调度 | 用户说"这部分我来" | + +sub-agent 完成后,archiver 自动把 transcript 归档到任务目录。 + ### 3.7 关键交互流程 #### 流程 1:完整任务生命周期