feat(agent): 实现 Phase 4c 会话级记忆功能

- 新增 `SessionMemory` 结构体,基于 `MemoryStore` 按 namespace 隔离键值数据
- `AgentBuilder` 增加 `session_memory_backend` 配置入口
- `RuntimeBundle` 透传 `session_memory_backend` 字段
- `AgentSession` 将内联 `HashMap` 替换为完整的 `SessionMemory`,`set_session_data` 和 `get_session_data` 改为异步方法
- 新增 3 个内联测试,全量测试从 113 增至 116,clippy 0 警告
This commit is contained in:
徐涛
2026-06-11 22:14:15 +08:00
parent 4de7db0b2c
commit ce1f1aaca0
6 changed files with 257 additions and 30 deletions
+17 -9
View File
@@ -1,13 +1,13 @@
# AG Core Roadmap
> 定稿日期:2026-05-11
> 最后更新:2026-06-11Phase 4b 编码实施完成Phase 4c 仍待启动
> 最后更新:2026-06-11Phase 4c 编码实施完成)
## 愿景
AG Core 定位为构建 AI 智能体的底层工具箱,通过模块化、可插拔的架构,提供大模型调用、提示词工程、工具系统、记忆检索四大核心能力,支持快速组合出符合业务需求的智能体应用。
**当前状态**:Phase 0 基础设施已全部完成,Phase 1 提示词工程已全部完成,Phase 2 工具系统已全部完成,Phase 3 记忆系统已全部完成,Phase 4a 核心胶水层已全部完成,Phase 4b 任务执行已全部完成(113 个测试通过,0 警告)Phase 4c 待启动
**当前状态**:Phase 0 基础设施已全部完成,Phase 1 提示词工程已全部完成,Phase 2 工具系统已全部完成,Phase 3 记忆系统已全部完成,Phase 4a 核心胶水层已全部完成,Phase 4b 任务执行已全部完成,Phase 4c 会话级记忆已全部完成116 个测试通过,0 警告)。
---
@@ -190,9 +190,9 @@ AG Core 定位为构建 AI 智能体的底层工具箱,通过模块化、可
**前置条件**Phase 4a 已完成(可与 Phase 4b 并行)。
**交付物**
1. `SessionMemory` struct — 基于 `MemoryStore`,按 session_id namespace 隔离
2. `RuntimeBundle` + `AgentBuilder` 扩展 `session_memory_backend` 字段
3. `AgentSession` 替换内联 HashMap 为完整 `SessionMemory`
1. `SessionMemory` struct — 基于 `MemoryStore`,按 session_id namespace 隔离
2. `RuntimeBundle` + `AgentBuilder` 扩展 `session_memory_backend` 字段
3. `AgentSession` 替换内联 HashMap 为完整 `SessionMemory`
**依赖**Phase 4aPhase 3 MemoryStore
@@ -200,7 +200,15 @@ AG Core 定位为构建 AI 智能体的底层工具箱,通过模块化、可
**预估规模**:约 115 行代码(增量)
**状态**⏳ 待 Phase 4a 完成后启动
**实际新增**
- 新增文件 1 个(agent/session_memory.rs
- 修改文件 4 个(agent/runtime.rs +5 行;agent/builder.rs +10 行;agent/session.rs +30 行;agent.rs +2 行)
- 新增代码约 180 行(含测试;纯实现约 100 行)
- 新增内联测试 3 个;全量测试 113 → 116(0 失败)
- clippy 0 警告
- 无新增外部依赖
**状态**:✅ Phase 4c 全部交付物已完成
---
@@ -214,7 +222,7 @@ graph BT
P3["<b>Phase 3: Memory System</b><br/>MemoryStore<br/>ConversationMemory<br/>KnowledgeStore"]:::done
P4a["<b>Phase 4a: Core Glue</b><br/>AgentSession<br/>RuntimeBundle<br/>Plan/Step 纯数据"]:::done
P4b["<b>Phase 4b: Task Execution</b><br/>TaskAgent<br/>PlanParser<br/>JsonPlanParser"]:::done
P4c["<b>Phase 4c: Session Memory</b><br/>SessionMemory"]:::pending
P4c["<b>Phase 4c: Session Memory</b><br/>SessionMemory"]:::done
P1 --> P0
P2 --> P0
@@ -317,7 +325,7 @@ graph BT
## 下一步行动
1. **Phase 4c 启动评估**Phase 4a + 4b 已交付(113 测试通过,0 clippy 警告)。可启动 Phase 4c(会话级记忆:SessionMemory + RuntimeBundle/Builder 扩展 + AgentSession 接入
1. **Phase 4c 已完成**Phase 4a + 4b + 4c 已交付(116 测试通过,0 clippy 警告)。可启动 v0.2+ 扩展评估(如多 Context 切换、Multi-Agent 协同等
2. **Context 切换备忘**`docs/note-context-switch-design.md` 记录了多 context 切换方案讨论,作为 v0.2+ 扩展项的输入
3. **参考项目调研沉淀**:已完成 OpenClaw / Hermes / OpenHuman / OpenHarness 横向调研,结果沉淀至 `docs/note-agent-harness-references.md`,作为 v0.2+ 扩展项的输入
4. **Phase 3 备用设计就绪**`docs/note-knowledge-graph-design.md` 记录了 KnowledgeGraph、高级评分、RecallBased 淘汰等设计,v0.2+ 记忆扩展可直接参考
@@ -329,4 +337,4 @@ graph BT
- ✅ Phase 3 Memory System — 全部交付物已完成
- ✅ Phase 4a Core Glue — 全部交付物已完成
- ✅ Phase 4b Task Execution — 全部交付物已完成
- Phase 4c Session Memory — 依赖 4a
- Phase 4c Session Memory — 全部交付物已完成