4.3 KiB
4.3 KiB
OpenClaw 当前记忆系统架构(mac-5 控制面)
总览
当前记忆系统分成两层:
- Context Engine 层:lossless-claw (LCM)
- Memory Backend 层:QMD
二者不是同一层,不占同一个插件槽位,职责不同,可以同时使用。
1. lossless-claw(LCM)
定位
- 作为 context engine 使用
- 负责长对话上下文的压缩、保留与恢复
- 替代原本单纯 sliding-window compaction 的部分能力
当前状态
- 已安装并启用
- 当前
plugins.slots.contextEngine = "lossless-claw" - 插件安装位置:
~/.openclaw/extensions/lossless-claw
主要作用
- 用 SQLite + DAG summaries 管理长上下文
- 当主会话变长时,帮助保留可恢复的历史结构
- 提供对被压缩/折叠历史的再访问能力
典型功能
lcm_greplcm_describelcm_expand
适合处理什么
- 长会话历史
- 最近/过往对话上下文恢复
- 被 compaction 后的历史细节回看
不适合替代什么
- 不替代持久 Markdown 知识库检索
- 不替代 QMD 对 memory repo / daily / tasks 等文件的索引搜索
2. QMD
定位
- 作为 memory backend 使用
- 负责
memory_search/memory_get这条记忆召回路线 - 主要检索 Markdown 记忆文件与配置路径中的知识内容
当前状态
- 当前
memory.backend = "qmd" - 当前仍是主记忆召回后端
memory.qmd.sessions.enabled = false
为什么禁用 sessions indexing
因为如果让 QMD 也去索引 session transcripts,会和 lossless-claw 在“会话回忆”层面产生重叠,导致:
- 同一段会话既能被 LCM 找回,也能被 QMD 找回
- QMD 结果容易被 session boilerplate / transcript 噪声主导
- 持久知识内容(daily / long-term / tasks)更容易被挤掉
因此当前约定:
- 会话历史回忆 → 优先走 LCM / context engine
- 持久知识/记忆文件搜索 → 走 QMD
当前 QMD 检索路径
~/project/collective-memory-repo/shared/long-term~/project/collective-memory-repo/daily~/project/collective-memory-repo/tasks~/project/collective-memory-repo/agents/openclaw-main
适合处理什么
- 长期记忆
- daily notes
- task memory
- agent private notes
- Markdown 文件型知识库
3. 内建 memorySearch 配置
当前状态
虽然当前主记忆后端仍是 QMD,但 agents.defaults.memorySearch 也已经配置为本机 oMLX embeddings:
- provider:
openai - model:
bge-m3-mlx-fp16 - baseUrl:
http://127.0.0.1:8000/v1 - apiKey:
omlx-local
说明
- 这是一条 内建 memorySearch 能力配置
- 目前它已配置好 embeddings 端点
- 但当前主记忆召回仍然是 QMD,而不是它
换句话说:
- 当前默认在用的是 QMD
- 内建 memorySearch embeddings 已准备好,后续如需切主路径可继续利用
当前推荐分工
会话相关
- lossless-claw / LCM
- 用于:长会话、上下文压缩恢复、历史对话回看
持久知识相关
- QMD
- 用于:memory repo、daily、tasks、长期知识检索
embeddings 预备能力
- 本机 oMLX (
bge-m3-mlx-fp16) - 用于:未来如需要将 OpenClaw 内建 memorySearch 切换到本地 embeddings 时复用
与 mac 集群规划的对应关系
- mac-5 = brain:记忆系统主入口、控制面、统一编排点;负责主会话、长期记忆写入决策、全局检索入口。
- mac-6 = hands:执行面主力;更偏向运行构建、脚本、ACP/CLI agent、批处理任务,本身不是记忆真相源,也不应承载独立 Gateway 身份。
- mac-7 = eyes:浏览器与验收面;更偏向网页验证、截图、页面巡检、browser-first 任务,同样不是独立记忆真相源。
- 记忆系统拓扑保持:单 Gateway / 单记忆主入口在 mac-5;
mac-6与mac-7通过控制面参与执行,不各自演化为独立控制面。
当前结论
当前记忆系统不是单一工具,而是分层架构:
- LCM / lossless-claw = 上下文引擎(context engine)
- QMD = 持久记忆后端(memory backend)
- oMLX embeddings memorySearch = 已配置好的备用/未来可切换能力
当前主工作流:
- 会话恢复靠 LCM
- 文件记忆召回靠 QMD
- 不让 QMD 索引 sessions,避免和 LCM 打架