docs(wiki): 系统性更新 — L0速览+L1模块标准化+L2功能链路映射(33条)
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
Some checks failed
CI / Lint & TypeCheck (push) Has been cancelled
CI / Unit Tests (push) Has been cancelled
CI / Build Frontend (push) Has been cancelled
CI / Rust Check (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
三层架构增强: - L0 index.md: 用户功能清单+跨模块数据流全景图+导航树增强 (92→143行) - L1 8个模块页标准化: 功能清单/API接口/测试链路/已知问题 routing(252→326) chat(101→157) saas(153→230) memory(182→333) butler(137→179) middleware(121→159) hands-skills(218→257) pipeline(111→156) - L1 新增2页: security.md(157行) data-model.md(180行) - L2 feature-map.md: 33条端到端功能链路映射(408行) 维护机制: CLAUDE.md §8.3 wiki触发规则 5→9条 设计文档: docs/superpowers/specs/2026-04-21-wiki-systematic-overhaul-design.md
This commit is contained in:
163
wiki/memory.md
163
wiki/memory.md
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: 记忆管道
|
||||
updated: 2026-04-19
|
||||
updated: 2026-04-21
|
||||
status: active
|
||||
tags: [module, memory, growth]
|
||||
---
|
||||
@@ -19,6 +19,23 @@ tags: [module, memory, growth]
|
||||
3. **Token 预算控制** — 注入 system prompt 时有 token 上限,防止溢出
|
||||
4. **EmbeddingClient trait 已预留** — 接口已写,激活即可升级到向量搜索
|
||||
|
||||
## 功能清单
|
||||
|
||||
| 功能 | 描述 | 入口文件 | 状态 |
|
||||
|------|------|----------|------|
|
||||
| 记忆提取 | LLM 从对话中提取偏好/知识/经验 | extractor.rs | ✅ |
|
||||
| FTS5 全文检索 | SQLite FTS5 + TF-IDF 权重搜索 | storage/sqlite.rs | ✅ |
|
||||
| 语义检索 | 意图分类 + CJK 关键词 + 混合评分 | retriever.rs, retrieval/query.rs | ✅ |
|
||||
| Prompt 注入 | token 预算控制 + 结构化上下文注入 | injector.rs | ✅ |
|
||||
| 经验管理 | pain→solution→outcome CRUD | experience_store.rs | ✅ |
|
||||
| 用户画像 | 结构化偏好/兴趣/能力管理 | profile_updater.rs | ✅ |
|
||||
| 进化引擎 | 行为模式检测 → 技能/工作流建议 | evolution_engine.rs | ✅ |
|
||||
| 质量门控 | 长度/标题/置信度/去重校验 | quality_gate.rs | ✅ |
|
||||
| 自动技能生成 | 从模式生成 SkillManifest | skill_generator.rs | ✅ |
|
||||
| 上下文压缩 | 超长对话压缩摘要 | summarizer.rs | ✅ |
|
||||
| 嵌入向量 | EmbeddingClient trait + NoOp 默认 | retrieval/semantic.rs | 🚧 接口就绪 |
|
||||
| SaaS pgvector | knowledge_chunks 向量索引 | saas/generate_embedding.rs | 🚧 索引就绪,生成未实现 |
|
||||
|
||||
## 代码逻辑
|
||||
|
||||
### 闭环数据流
|
||||
@@ -149,13 +166,139 @@ crates/zclaw-growth/src/
|
||||
|
||||
### 前端 Tauri 命令
|
||||
|
||||
Memory 相关命令 (13 个,来自 `memory_commands.rs` + `memory/`):
|
||||
`memory_init, memory_store, memory_get, memory_search, memory_delete, memory_delete_all, memory_stats, memory_export, memory_import, memory_db_path, memory_configure_embedding, memory_is_embedding_configured, memory_build_context`
|
||||
> 完整 API 接口详情见下方 `## API 接口` 章节。
|
||||
|
||||
加上 `memory/extractor.rs` 的 2 个: `extract_session_memories, extract_and_store_memories`
|
||||
和 `memory/context_builder.rs` 的 1 个: `estimate_content_tokens`
|
||||
**Memory CRUD** (`desktop/src-tauri/src/memory_commands.rs`, 11 命令):
|
||||
|
||||
总计 16 个 memory 相关 Tauri 命令。
|
||||
| 命令 | 参数 | 说明 |
|
||||
|------|------|------|
|
||||
| `memory_store` | MemoryEntryInput | 存储记忆条目 |
|
||||
| `memory_get` | id | 按 ID 获取 |
|
||||
| `memory_search` | MemorySearchOptions | FTS5 + TF-IDF 搜索 |
|
||||
| `memory_delete` | id | 删除单条 |
|
||||
| `memory_delete_all` | agent_id | 删除 Agent 全部记忆 |
|
||||
| `memory_stats` | — | 记忆统计 |
|
||||
| `memory_export` | — | 导出全部 |
|
||||
| `memory_import` | Vec\<PersistentMemory\> | 批量导入 |
|
||||
| `memory_build_context` | agent_id, query, max_tokens? | 构建检索增强上下文 |
|
||||
| `memory_db_path` | — | SQLite 路径 |
|
||||
| `memory_init` | — | 初始化 (no-op, Viking 自动初始化) |
|
||||
|
||||
**VikingStorage** (`desktop/src-tauri/src/viking_commands.rs`, 14 命令):
|
||||
|
||||
| 命令 | 说明 |
|
||||
|------|------|
|
||||
| `viking_add` / `viking_add_with_metadata` | 添加记忆 (URI scheme: agent://{id}/{type}/{category}) |
|
||||
| `viking_find` | 语义/关键词搜索 |
|
||||
| `viking_grep` | 正则搜索 |
|
||||
| `viking_ls` / `viking_tree` / `viking_read` | 浏览/读取 |
|
||||
| `viking_remove` | 删除 |
|
||||
| `viking_inject_prompt` | 记忆注入 prompt |
|
||||
| `viking_configure_embedding` | 配置 embedding provider |
|
||||
| `viking_configure_summary_driver` | 配置摘要 LLM |
|
||||
| `viking_store_with_summaries` | 自动摘要存储 |
|
||||
| `viking_status` | 存储健康检查 |
|
||||
| `viking_load_industry_keywords` | 加载行业关键词 |
|
||||
|
||||
**Intelligence** (`desktop/src-tauri/src/intelligence/`, ~40 命令):
|
||||
|
||||
| 模块 | 命令数 | 功能 |
|
||||
|------|--------|------|
|
||||
| identity.rs | 13 | Agent 身份/SOUL.md 管理 |
|
||||
| heartbeat.rs | 11 | Heartbeat 引擎配置+记录 |
|
||||
| pain_aggregator.rs | 5 | 痛点追踪+方案生成 |
|
||||
| reflection.rs | 6 | 自我反思引擎 |
|
||||
| compactor.rs | 4 | 上下文压缩 |
|
||||
| health_snapshot.rs | 1 | 综合健康快照 |
|
||||
|
||||
**记忆提取** (`desktop/src-tauri/src/memory/`, 3 命令):
|
||||
`extract_session_memories`, `extract_and_store_memories`, `estimate_content_tokens`
|
||||
|
||||
**Embedding** (`desktop/src-tauri/src/llm/`, 2 命令):
|
||||
`embedding_create`, `embedding_providers`
|
||||
|
||||
**总计 ~74 个** memory/growth/intelligence 相关 Tauri 命令。
|
||||
|
||||
## API 接口
|
||||
|
||||
### Memory CRUD (`desktop/src-tauri/src/memory_commands.rs`, 11 命令)
|
||||
|
||||
| 命令 | 参数 | 说明 |
|
||||
|------|------|------|
|
||||
| `memory_store` | MemoryEntryInput | 存储记忆条目 |
|
||||
| `memory_get` | id | 按 ID 获取 |
|
||||
| `memory_search` | MemorySearchOptions | FTS5 + TF-IDF 搜索 |
|
||||
| `memory_delete` | id | 删除单条 |
|
||||
| `memory_delete_all` | agent_id | 删除 Agent 全部记忆 |
|
||||
| `memory_stats` | — | 记忆统计 |
|
||||
| `memory_export` | — | 导出全部 |
|
||||
| `memory_import` | Vec\<PersistentMemory\> | 批量导入 |
|
||||
| `memory_build_context` | agent_id, query, max_tokens? | 构建检索增强上下文 |
|
||||
| `memory_db_path` | — | SQLite 路径 |
|
||||
| `memory_init` | — | 初始化 (no-op) |
|
||||
|
||||
### VikingStorage (`desktop/src-tauri/src/viking_commands.rs`, 14 命令)
|
||||
|
||||
| 命令 | 说明 |
|
||||
|------|------|
|
||||
| `viking_add` / `viking_add_with_metadata` | 添加记忆 (URI: agent://{id}/{type}/{category}) |
|
||||
| `viking_find` | 语义/关键词搜索 |
|
||||
| `viking_grep` | 正则搜索 |
|
||||
| `viking_ls` / `viking_tree` / `viking_read` | 浏览/读取 |
|
||||
| `viking_remove` | 删除 |
|
||||
| `viking_inject_prompt` | 记忆注入 prompt |
|
||||
| `viking_configure_embedding` | 配置 embedding provider |
|
||||
| `viking_configure_summary_driver` | 配置摘要 LLM |
|
||||
| `viking_store_with_summaries` | 自动摘要存储 |
|
||||
| `viking_status` / `viking_load_industry_keywords` | 健康检查/行业关键词 |
|
||||
|
||||
### Intelligence (`desktop/src-tauri/src/intelligence/`, ~40 命令)
|
||||
|
||||
| 模块 | 命令数 | 功能 |
|
||||
|------|--------|------|
|
||||
| identity.rs | 13 | Agent 身份/SOUL.md 管理 |
|
||||
| heartbeat.rs | 11 | Heartbeat 引擎配置+记录 |
|
||||
| pain_aggregator.rs | 5 | 痛点追踪+方案生成 |
|
||||
| reflection.rs | 6 | 自我反思引擎 |
|
||||
| compactor.rs | 4 | 上下文压缩 |
|
||||
| health_snapshot.rs | 1 | 综合健康快照 |
|
||||
|
||||
### 记忆提取 + Embedding (5 命令)
|
||||
|
||||
`extract_session_memories`, `extract_and_store_memories`, `estimate_content_tokens` (memory/)
|
||||
+ `embedding_create`, `embedding_providers` (llm/)
|
||||
|
||||
**总计 ~74 个** memory/growth/intelligence 相关 Tauri 命令。
|
||||
|
||||
## 测试链路
|
||||
|
||||
| 功能 | Crate | 测试文件 | 测试数 | 覆盖状态 |
|
||||
|------|-------|---------|--------|---------|
|
||||
| 记忆存储/检索 | zclaw-growth | storage/sqlite.rs | 6 | ✅ |
|
||||
| 经验 CRUD | zclaw-growth | experience_store.rs | 12 | ✅ |
|
||||
| 提取器 | zclaw-growth | extractor.rs | 8 | ✅ |
|
||||
| 注入器 | zclaw-growth | injector.rs | 9 | ✅ |
|
||||
| 质量门控 | zclaw-growth | quality_gate.rs | 9 | ✅ |
|
||||
| 进化引擎 | zclaw-growth | evolution_engine.rs | 5 | ✅ |
|
||||
| 技能生成 | zclaw-growth | skill_generator.rs | 6 | ✅ |
|
||||
| 工作流编排 | zclaw-growth | workflow_composer.rs | 5 | ✅ |
|
||||
| 意图分类+CJK | zclaw-growth | retrieval/query.rs | 11 | ✅ |
|
||||
| 语义评分 | zclaw-growth | retrieval/semantic.rs | 9 | ✅ |
|
||||
| Embedding | zclaw-growth | retrieval/cache.rs | 7 | ✅ |
|
||||
| 模式聚合 | zclaw-growth | pattern_aggregator.rs | 6 | ✅ |
|
||||
| 反馈收集 | zclaw-growth | feedback_collector.rs | 10 | ✅ |
|
||||
| 摘要 | zclaw-growth | summarizer.rs | 5 | ✅ |
|
||||
| 类型定义 | zclaw-growth | types.rs | 13 | ✅ |
|
||||
| 进化闭环 | zclaw-growth | tests/evolution_loop_test.rs | 6 | ✅ |
|
||||
| 经验链 | zclaw-growth | tests/experience_chain_test.rs | 6 | ✅ |
|
||||
| 集成 | zclaw-growth | tests/integration_test.rs | 9 | ✅ |
|
||||
| **zclaw-growth 小计** | | 29 文件 | **181** | |
|
||||
| 记忆存储 | zclaw-memory | store.rs | 20 | ✅ |
|
||||
| 用户画像 | zclaw-memory | user_profile_store.rs | 20 | ✅ |
|
||||
| 轨迹记录 | zclaw-memory | trajectory_store.rs | 9 | ✅ |
|
||||
| 事实提取 | zclaw-memory | fact.rs | 5 | ✅ |
|
||||
| **zclaw-memory 小计** | | 4 文件 | **54** | |
|
||||
| **合计** | | 33 文件 | **235** | |
|
||||
|
||||
## 关联模块
|
||||
|
||||
@@ -180,3 +323,11 @@ Memory 相关命令 (13 个,来自 `memory_commands.rs` + `memory/`):
|
||||
| `desktop/src/store/memoryGraphStore.ts` | 前端记忆 UI |
|
||||
| `desktop/src-tauri/src/memory/` | Tauri 记忆命令桥接 |
|
||||
| `desktop/src-tauri/src/memory_commands.rs` | 13 个 memory CRUD 命令 |
|
||||
|
||||
## 已知问题
|
||||
|
||||
- ✅ **记忆去重失败** — BUG-H2 已修复 (commit a504a40)。`viking_add` 同 URI+content 重复添加
|
||||
- ✅ **记忆非 Agent 隔离** — BUG-M3 已修复 (commit a504a40)。`viking_find` 返回所有 Agent 记忆
|
||||
- ✅ **跨会话注入断裂** — BUG-M5 已修复 (commit a504a40)。新会话报 "no conversation history found"
|
||||
- ⚠️ **NoOpEmbeddingClient 是默认值** — 正常设计,用户配置 provider 后替换
|
||||
- ⚠️ **SaaS pgvector embedding 生成未实现** — 索引就绪,生成逻辑 deferred
|
||||
|
||||
Reference in New Issue
Block a user