OpenClaw 记忆系统深度解析:让 AI Agent 真正「过目不忘」
想象一个场景:你花了一整个下午,跟你的 AI 编程助手磨合好了一套工作流——它知道了你的代码风格、你的项目结构、你的偏好。然后你关掉终端去吃晚饭。回来打开新的对话窗口,AI 一脸茫然地看着你,仿佛你们从未见过面。这不是 bug,这是当前 AI Agent 的默认行为。上下文窗口就是 AI 的「海马体」,窗口清空,记忆归零。而 OpenClaw 给出的答案出奇简单:让 AI 像人类一样,把重要的事情写下来。
OpenClaw 的记忆系统有一个极其朴素但强大的设计原则——Agent 只「记住」写入文件的内容,没有隐藏状态,没有黑盒魔法。它的 AGENTS.md 模板里写着一句令人深思的话:「记忆是有限的——如果你想记住什么,写到文件里。『心理笔记』活不过会话重启,文件可以。」这句话定义了整个系统的设计方向:记忆不是数据库里的一张表,而是一个结构化的文件系统。默认情况下,所有记忆文件存放在 ~/.openclaw/workspace 目录下,以纯 Markdown 格式存储。这意味着你的 AI 记忆完全由你掌控——可读、可编辑、可版本控制、可备份。
三大记忆文件:AI 的「长期」、「短期」和「潜意识」
OpenClaw 用三个核心文件构建了 AI 的多层次记忆体系。MEMORY.md 存储持久化事实、用户偏好和重要决策——这是 AI 的「长期记忆」,每次新会话启动时自动加载。你可以把它想象成 AI 对你的「人物档案」。memory/YYYY-MM-DD.md 是按日期组织的运行日志,记录会话中的上下文和观察,当天和昨天的日志会自动注入会话——这是 AI 的「工作记忆」。第三层是DREAMS.md,这是一个可选的「梦境日记」,用于记录 Dreaming 后台处理的摘要,不会自动加载到会话中,而是留给你——人类用户——来审查和决定哪些信息值得晋升为永久记忆。这三层设计巧妙地对应了认知科学中「长期记忆-工作记忆-记忆巩固」的经典模型。
记忆光有读取不够,写入才是系统真正高明的地方。OpenClaw 提供了两条记忆写入路径。第一条是 Agent 主动写入——当你说「记住我不用 mock 做测试」,Agent 会根据 LLM 的判断自主决定将该偏好写入 MEMORY.md。这是显式的、用户主导的记忆形成。第二条是 Memory Flush(记忆刷新)——这是一个精心设计的「安全网」。当会话接近上下文 token 上限、触发 Compaction(压缩)之前,系统会运行一个静默回合,提醒 Agent 将尚未记录的重要上下文保存到记忆文件。这意味着即使你忘了让 AI 记住某件事,系统也会在压缩丢掉上下文之前自动抢救关键信息。这一机制是默认开启的,它解决了 Agent 系统中最常见的问题——「压缩导致的上下文丢失」。
记忆存进去只是第一步,用的时候找得到才是真正的挑战。OpenClaw 的 memory_search 工具实现了一套混合搜索策略:70% 向量相似度 + 30% BM25 关键词匹配。向量搜索捕捉语义含义——即使你搜索「测试策略」,系统也能找到关于「mock」和「stub」的记忆;而 BM25 关键词匹配确保精确术语(如 ID、代码符号、API 名称)不会被语义模糊吞掉。这套混合策略在实践中表现出色,因为工程师的对话里充满了既需要语义理解又需要精确匹配的混合查询。系统会自动检测可用的 Embedding API Key(OpenAI、Gemini、Voyage、Mistral 等),开箱即用地启用语义搜索能力。默认内置后端使用 SQLite + FTS5 + sqlite-vec 扩展,零依赖,即装即用。
Dreaming 梦境系统:AI 在「睡眠」中巩固记忆
这是 OpenClaw 记忆体系中最独特、也最容易被低估的组件。Dreaming 是一个可选启用的后台记忆巩固过程——没错,你的 AI Agent 会在后台「做梦」。它通过 Cron 定时调度(通常是每天凌晨),经历三个阶段:浅睡眠阶段从多个来源摄取候选记忆片段并去重;快速眼动睡眠阶段进行模式分析和候选真理识别;深度睡眠阶段用六维评分系统——频率、相关性、多样性、时效性、巩固度、概念丰富度——对每条记忆打分。只有通过分数门槛、召回频率和多维度门控的候选记忆,才能最终「毕业」晋升到 MEMORY.md 成为长期记忆。这套机制模仿了人类睡眠中的记忆巩固过程,让 AI 在你不使用它的时候,自动整理和提炼之前积累的信息。默认是关闭的——因为不是所有人都需要 AI 做梦,但对于重度使用者来说,Dreaming 是记忆质量的分水岭。
我们正在从 Copilot 时代进入 Agent 时代。Copilot 的核心动作是补全——一行代码、一个句子,它不需要知道你是谁。但 Agent 的核心动作是自主完成长链任务——一个任务可能持续数小时、跨越数十轮交互、需要记住中间决策、偏好和约束条件。没有记忆的 Agent 就像一个每次开会都从零了解项目的员工——你可以想象他能做出什么成果。OpenClaw 记忆系统的真正价值不在于「能记住东西」,而在于它把记忆设计成了一个开放、透明、用户可控的文件系统。这意味着:你的 AI 记忆可以用 Git 做版本控制,可以用任何编辑器修改,可以在不同设备间同步,甚至可以写脚本批量处理。这比任何黑盒向量数据库方案更安全、更灵活、更有生命力。未来六个月,记忆系统会成为 AI Agent 框架的标配——就像今天的工具调用一样基本。而 OpenClaw 选择了一个正确的方向:让记忆回归文件的本质,简单而强大。
OpenClaw 的记忆系统告诉我们一个朴素的道理:最好的记忆不是最复杂的,而是最可控的。Markdown 文件、混合搜索、Memory Flush 自动抢救、Dreaming 后台巩固——这四个组件构成了一个完整而优雅的记忆体系。它不是学术论文里的概念,而是你今天打开终端就能跑起来的东西。当你真正用上 AI 记忆的时候,你会发现:智能的质变,不来自更大的模型,而来自更持久的记忆。