记忆文件怎么写:MEMORY.md 与每日笔记
OpenClaw 的记忆不是藏在数据库里的黑箱,而是智能体工作区里的一堆纯 Markdown 文件(默认 ~/.openclaw/workspace)。模型只记得存到磁盘上的内容——你能打开看,也能直接改。
三个核心文件
| 文件 | 角色 | 放什么 |
|---|---|---|
MEMORY.md | 长期记忆 | 持久事实、偏好、长期决定;会话开始时加载 |
memory/YYYY-MM-DD.md | 每日笔记 | 当天上下文与观察,供检索;/new、/reset 时自动加载今昨两天 |
DREAMS.md(可选) | 梦境日记 | 后台记忆整理流程的审阅记录 |
怎么让它记住
最直接的方式就是说:「记住我更喜欢 TypeScript」。它会自己把这条写进合适的文件。也可以让它「把今天的结论整理进长期记忆」。
分层逻辑:精炼层与工作层
MEMORY.md是精炼整理层——不是流水账。只放「应该每次会话都知道」的持久事实与偏好。memory/*.md是工作层——细节、过程、原始上下文,被索引供memory_search检索,但不会每轮都塞进提示词。- 助理会定期从每日笔记里提炼有价值的内容晋升到
MEMORY.md,并清掉过时条目;Heartbeat 与工作区指令也会自动做这件事,通常不用手改。
超预算怎么办
MEMORY.md 太大超出引导文件预算时,磁盘文件仍完整,但注入上下文的副本会被截断。这是信号:把细节挪去 memory/*.md,MEMORY.md 只留摘要。用 /context list 或 openclaw doctor 能看到原始大小、注入大小与截断状态。
操作敏感型记忆
有些记忆会改变未来行为(比如「API 迁移期间别动这个目录」)。官方建议这类笔记要写清边界:什么条件下生效、何时到期、应避免做什么、来源是谁。记忆本身不强制策略——真正的强制靠审批与沙箱(见沙箱审批)。
从别的工具搬记忆
Control UI 的 Settings → Import Memory 能从 Codex 与 Claude Code 导入现成的 Markdown 记忆:只复制 md、保留在独立导入目录、源文件不动,带导入前备份。
下一篇看记忆是怎么被搜出来的:记忆搜索。