OpenClaw 的记忆不是“神秘黑盒”,而是可读可改的文件系统。只要你把 daily 记录和长期记忆分层管理,模型的连续性和稳定性会明显提升。
本章完成标准
你能清楚区分 daily memory 和 MEMORY.md 的用途,并完成一套可长期维护的记忆写入与检索策略。
先理解记忆的两个层级
memory/YYYY-MM-DD.md:按天沉淀过程信息、临时上下文、阶段结论。MEMORY.md:记录稳定偏好、长期目标、固定规则。
MEMORY.md 更适合“长期不变”的内容,daily 更适合“当天变化”的内容。
步骤一:先建立记忆写作规则
- 每天只写关键结论,不写流水账。
- 长期规则集中写在
MEMORY.md,避免散落在多个文件。 - 每周做一次合并清理,把过期内容从长期记忆移除。
步骤二:确认检索索引路径
记忆检索通常会落到按 agent 隔离的 SQLite 索引。
~/.openclaw/memory/<agentId>.sqlite
这意味着不同 agent 的记忆检索天然可隔离,适合多角色场景。
步骤三:做一次策略化配置
- 如果你不需要记忆搜索,可禁用 memory slot,减少复杂度。
- 如果你是多 agent 场景,明确设置索引路径模板并保留
{agentId}。 - 定期备份 workspace 和记忆索引,避免误删后不可恢复。
步骤四:快速自测记忆是否有效
- 在 daily memory 里写入一条今天的关键决策。
- 在同一会话中追问该决策细节。
- 重启服务后再次追问,看是否能正确召回。
openclaw status
openclaw logs --follow
常见误区
- 把所有信息都塞进 MEMORY.md:会让长期记忆变得臃肿。
- 多 agent 共用一份工作区:容易互相污染上下文。
- 只看召回结果,不做文件治理:后期可维护性会迅速下降。