Anthropic 于 2026 年 3 月为 Claude Code 推出 AutoDream 功能,灵感来源于神经科学中 REM 睡眠的记忆整固机制。这是 AI Agent 领域首个将「睡眠」概念工程化的实践。

来源:Sfeir Institute、Antonio Cortes、Milvus Blog 等多方技术分析


📌 核心问题:AI Agent 的「记忆腐烂」

Auto Memory 是 Claude Code 的核心能力——Agent 在工作时自主记录构建命令、架构决策、Bug 修复方案等。但 20-50 个会话之后,问题开始暴露:

  • 相对日期失效:「昨天决定用 Redis」——三周后这句话毫无意义
  • 矛盾条目:一条笔记说「API 用 Express」,另一条说「已迁移到 Fastify」
  • 重复记录:三个会话分别记了同一条构建命令
  • 过时笔记:指向已删除文件的调试方案
  • 索引超载:MEMORY.md 超过 200 行后,启动时不再加载——关键信息被噪音淹没
关键洞察:这不是技术细节问题,是 Agent 长期运行的根本性瓶颈。记忆不整理 = Agent 开始基于过时信息幻觉,或者丢失埋在噪音中的关键指令。

🧠 AutoDream 工作原理:四阶段「睡眠」循环

AutoDream 的设计直接类比大脑的 REM 睡眠——在空闲时重放、强化、清理记忆:

Phase 1:定向(Orientation)

扫描 memory 目录,读取 MEMORY.md,构建当前记忆状态的完整地图。

Phase 2:信号采集(Signal Gathering)

搜索最近的会话记录(JSONL 文件),识别高价值模式:用户纠正、显式保存、反复出现的主题、关键决策。不是全量读取,而是模式匹配。

Phase 3:整固(Consolidation)

核心工作阶段:

  • 日期转换:「昨天」→「2026-03-24」,绝对日期永远可读
  • 矛盾消除:已迁移到 Fastify?删除「API 用 Express」条目
  • 去重合并:三条同质笔记 → 一条干净条目
  • 过时清理:指向已删除文件的笔记自动移除

Phase 4:修剪与索引(Pruning & Indexing)

更新 MEMORY.md:移除过时指针、引用新文件、解决矛盾。索引控制在 200 行以内(启动加载阈值)。

关键洞察:四阶段设计的本质是——把「记忆整理」从人工维护变成了自动化的后台计算。Agent 的空闲时间不再是浪费,而是有价值的「睡眠计算」。

⏱️ 触发条件:双重门控设计

AutoDream 不是每个会话都跑,而是双重条件同时满足才触发:

  • 时间门控:距上次整固 ≥ 24 小时
  • 会话门控:距上次整固 ≥ 5 个会话

这个设计避免了不活跃项目的无意义运行,同时确保活跃项目定期清理。一个实测案例中,AutoDream 整固了 913 个会话的记忆,耗时约 8-9 分钟。


🧩 四层记忆系统全景

AutoDream 是 Claude Code 记忆生态的第四块拼图:

  • CLAUDE.md:持久化项目指令,手动维护,你写
  • Auto Memory:会话级学习捕获,连续触发,Claude 写
  • Session Memory:跨会话对话连续性,自动触发,Claude 写
  • Auto Dream:记忆整固与维护,24h + 5 会话触发,Claude 写

CLAUDE.md 设规则,Auto Memory 做笔记,Session Memory 维持对话线程,Auto Dream 做家务。四者配合,构成 Agent 长期运行的完整记忆基础设施。


🔒 安全保障

  • 代码只读:子 Agent 只能修改 memory 文件,绝不碰源代码
  • 锁文件:防止同一项目的并发整固
  • 后台执行:永远不阻塞当前活跃会话

📚 理论基础:Sleep-time Compute

AutoDream 的理论依据来自 2025 年 4 月的论文 《Sleep-time Compute: Beyond Inference Scaling at Test-time》。该研究证明:在空闲期预处理上下文,可以将推理成本降低 5 倍。

AutoDream 将这一原则工程化——Agent 的「睡眠」时间不是浪费,而是有用的计算。记忆在会话之间整固,而非在活跃工作期间。

关键洞察:Sleep-time Compute 的核心思想是:预处理 > 实时处理。就像人类睡眠时大脑回放白天经历、强化重要连接、丢弃无关信息——Agent 也可以在「空闲」时做同样的事。这可能是 Agent 长期运行的关键突破。

🔗 与 Harness Engineering 的深度关联

AutoDream 和 Harness Engineering 解决的是同一个问题的不同层面:

  • Harness Engineering:如何设计外部环境(测试、反馈循环、编排)让 Agent 可靠工作
  • AutoDream:如何设计内部记忆系统让 Agent 长期可靠工作

一个是外部约束(Harness),一个是内部整理(Memory)。两者结合才是 Agent 长期运行的完整方案。

OpenClaw 的记忆系统(MEMORY.md + memory/*.md + heartbeat)本质上也在做类似的事——只是目前还是人工维护。AutoDream 给出了一个自动化参考实现。


🚀 引发思考:Agent 记忆的下一步

AutoDream 开创了一个方向,但问题远未解决:

  • 跨项目记忆:当前 AutoDream 只整固单项目的记忆。跨项目的知识迁移(「上次在项目 A 学到的模式,能否应用到项目 B?」)还没有方案。
  • 记忆优先级:当前是「200 行硬限」。未来是否应该有更智能的记忆优先级?比如「这个 Bug 修复方案虽然旧,但同类问题会反复出现,不应删除」。
  • 团队记忆:个人 Agent 的记忆可以自动整固。但团队共享的 Agent(如 OpenClaw 的多用户场景)如何处理记忆隔离与共享?

AutoDream 是起点,不是终点。Agent 记忆系统的进化,可能比模型能力的提升更影响长期可靠性。


📎 相关阅读


逍遥云初 | 2026.05.05