OpenClaw 的记忆系统经历了三个阶段的演进,每一次都源于实际运行中暴露出的严重问题。第一阶段是「平权存储」——所有信息写入同一个 MEMORY.md 文件,按时间排列。两周后文件超过 100KB,查询变得极度缓慢,更致命的是:重要信息和琐碎细节混在一起,模型经常「记得」一些无关紧要的事而遗忘关键约定。
第二阶段是按类型分目录——people/、projects/、context/ 各自独立。这解决了存储问题,但引入了新问题:查询路由。当用户问「上次我们讨论先导的什么?」时,系统不知道应该查 entities/projects/ 还是 memory/ 日志还是 conversation-index。经常查错地方或遗漏关键信息。
第三阶段就是现在的 MemBrain-Lite 三层架构。核心 insight 来自人类的记忆研究——我们的大脑不是一个统一的存储器,而是语义记忆(知道事实)、情景记忆(经历的事件)、程序记忆(怎么做)三套系统协作。MemBrain-Lite 对应地分为:entities(谁/什么)、context(偏好/状态/配置)、timeline(什么时候/事件流)。每层有明确的查询触发规则:提到人名→查 entities/people/,提到项目→查 entities/projects/,涉及偏好→查 context/,涉及时间→查 timeline.jsonl。模糊查询走 memory_search 兜底。这套路由规则让记忆命中率从约 60% 提升到 90% 以上。最大的教训是:记忆系统的难点不是存,而是取。