一个简单案例理解OpenClaw的做梦过程
摘要
OpenClaw 的梦境(Dreaming) 是一套模仿人类睡眠的后台记忆自动巩固系统,核心是把短期对话、任务记录,筛选、反思、评分后,把高价值内容固化为长期记忆,让 AI 智能体越用越懂你、上下文不丢失。
此篇通过一个可对照的实例,模拟 OpenClaw 梦境流程,观察memory和dream两个文件,帮助我们看懂龙虾到底是咋做梦的。
举个例子
比如你今天跟 OpenClaw 说了三件事:
- 你叫 Wade,在做 OpenClaw Skill 开发
- 你喜欢用 GLM-5.1 做视觉+键鼠自动化
- 你今天随便聊了句"今天天气不错"
当然这里也只是举个例子,现实中跟龙虾玩嗨的大佬们,哪个不都是每日一亿token俱乐部的么。
为了让龙虾了解你,不可能每次都把这成亿的信息都塞过去,于是龙虾需要做梦了。
然后半夜三点了,龙虾触发了一次梦境,我们来分析下memory.md和dream.md两个文件的内容,来看看龙虾到底做的是什么梦。
memory.md 长期记忆,做梦的最终产出
这个梦最终会写点东西到memory.md里,并且只有重要、高频、和任务强相关、会反复用到 的信息才会进来。
以下是一个示例:
markdown
## Memory (OpenClaw 长期记忆)
### 用户信息
- 用户名:Wade
- 主要工作:开发 OpenClaw Skill
- 偏好模型:GLM-5.1(擅长工程、长程任务、视觉+键鼠自动化)
### 工作偏好
- 专注方向:AI Agent 自动化、GUI 键鼠控制、视觉执行
- 技术栈:Python + FastAPI + Vue3 + OpenClaw MCP
等一下,这个内容是不是跟用户画像很像?确实,能进入 memory.md 的内容,本质就是 LLM 自动构建的「用户画像」。只是它更智能、更自动、更工程化、更适合 Agent 干活。
那么它为什么要叫 "梦境" 不叫 "用户画像"?因为它不止记你,还会记很多东西比如:
- 任务
- 项目
- 执行历史
- 踩过的坑
- 技能配置
- 自动化规则
- 多次对话里的模式
它是 **"用户画像 + 任务记忆 + 技能记忆" 的混合体 **,所以叫梦境更形象。
dreams.md 梦境日志,梦里都干了些啥
按照大家的说法,这是做梦过程记录 ,不会变成长期记忆,只用来给你看它反思,回顾了什么。
比如以下内容:
markdown
# Dream Log 2026-04-21
## Light Sleep 浅睡阶段
- 读取短期记忆:3 条
- 去重:无重复内容
- 过滤低价值信息:1 条("今天天气不错")
- 候选记忆:2 条有效
## REM Sleep 快速眼动反思
- 识别主题:用户身份、AI 开发、OpenClaw、模型偏好
- 发现高频关键词:Wade、Skill、GLM-5.1、视觉键鼠自动化
- 反思摘要:用户专注于 OpenClaw 自动化开发,偏好强工程模型。
## Deep Sleep 深睡评分
- 用户名 Wade → 得分 0.92 → 进入长期记忆
- 开发 OpenClaw Skill → 得分 0.90 → 进入长期记忆
- 偏好 GLM-5.1 → 得分 0.88 → 进入长期记忆
- 天气不错 → 得分 0.15 → 丢弃
- 最终晋升 3 条记忆到 memory.md
这些内容不会被 AI 当成记忆加载,只是日志,只是过程,不参与对话上下文,不影响 AI 行为。
我个人理解,这更像是龙虾记忆的一次ETL。类似把数据提炼,精炼的一个过程。大家有什么不同的看法欢迎来讨论。
总结
咱们可以这样理解:
-
你说:"我叫Wade,做OpenClaw开发,用GLM-5.1"
→ 进 memory.md
-
你说:"今天吃了米饭、天气很好、刚才卡了一下"
→ 只在 dreams.md 里被标记为"低价值 → 丢弃"
→ 不会进 memory.md
吐槽
最后我也想吐槽一点,关于OpenClaw把这个起名为dream。我不知道大家做的梦是什么样的,我记得我做的梦都很有随机性,有些梦只是大脑里的记忆临时拼出的剧本,或者是自己的一个愿望比如我想要一个iPhone 17pro。
OpenClaw的这个过程更像是把当天发生的事情全都过了一遍,然后根据打分做一个提取写入到备忘录里,方便未来快速查找。这样的梦我是从来没做过,我们只有深夜加班的时候才可能做这个事。。。