做过稍微复杂一点项目的同学,大概都有相同痛点:每次在 Claude Code 开新会话,先别写代码,得花五到十来分钟重述项目上下文——架构、环境坑点、命名约定……确认“理解了”之后才能开工。频繁重复,既打断思路,也浪费时间。
好消息是,Anthropic 工程师 Thariq 宣布:Claude Code 正式上线 Auto Memory(自动记忆)。
它能跨会话记住你的项目关键信息与个人偏好,新开会话无需再手撸 Context,直接进入状态。
Auto Memory 怎么运作
机制很简单:Claude Code 在你工作时,会把“值得长期保留”的信息写进本地文件,按项目维度隔离存放:
~/.claude/projects//memory/MEMORY.md
其中 MEMORY.md 是主索引,系统会将其前 200 行自动注入到对话上下文。
除主文件外,还会按主题创建子文件(如 debugging.md、patterns.md),并从 MEMORY.md 链接过去,需要时再读取,像一本带索引的工作笔记。
它会记什么,不记什么
- 建议保存:稳定的模式与约定、关键架构决策与重要路径、项目结构、你的工具/流程/沟通偏好、复现率高的问题解法与调试洞见。
- 不建议保存:一次性任务上下文、未经项目文档验证的片段、与
CLAUDE.md重复或冲突的内容、只读过单个文件就下的推论。 - 显式指令:你说“以后都用 bun”“别自动 commit”,会立刻写入;你说“别记了”,它会定位并删除对应条目。
- 去重与维护:按主题而非时间组织;先查是否已有相近条目,更新而非重复写入;对错误或过期记忆要及时更正或移除。
- 上下文限制:
MEMORY.md超过 200 行的部分不会注入到会话,需要你定期精简与整理。
/memory 命令:可见、可控、可关
内存管理的中枢是 /memory:
- 浏览 Claude Code 自动记录的所有条目
- 手动编辑、删除不再需要的内容
- 必要时直接关闭自动记忆
如果你想彻底禁用自动记忆,也可以用一行命令关闭:
export CLAUDE_CODE_DISABLE_AUTO_MEMORY=1
所有记忆文件都存于本地,按项目哈希隔离,不会上传云端,项目之间互不影响。
和 CLAUDE.md 的关系
CLAUDE.md 是你主动写给 Claude Code 的“入职手册”:不变的规则、常用命令、禁止事项等,所有会话通用。Auto Memory 则是 Claude Code 在协作中形成的工作笔记:项目模式、你的习惯、踩过的坑等。两者互补不覆盖——先读手册,再翻笔记,协同效果最佳。
使用前你该知道的两点
- 200 行上限:当前实现是“前缀加载”,不做相似度检索。条目多了,靠后的内容不会进上下文。建议用
/memory定期归档与瘦身。 - 记忆会过期:临时方案与旧结论可能在数月后失效,反而误导推理。目前官方未提供自动衰减或过期机制,需要手动维护。
为什么选本地 Markdown,而非向量库
这延续了 Claude Code 一贯的产品哲学:用最简单的方案先把核心体验跑通,再视反馈迭代。相比复杂的 RAG 架构,本地 Markdown 更轻、更透明、更好控;也更容易嵌入日常工作流。
我的真实体验
在 Auto Memory 发布前,我通常把关键背景塞进 CLAUDE.md,再在新会话首条补任务细节,相当于“人肉记忆”。也遇到过长流程分析被压缩、换会话就丢思路的情况,重复劳动难免。现在有了 Auto Memory,这些在协作中沉淀出来的“高价值结论”能被稳定继承,尤其在多 Agent 协作里更明显:前一个 Agent 记录的边界处理,下一个 Agent 开场就能直接读到。
和 OpenClaw 的对比
OpenClaw 能在短期内冲到 10 万星,“持久记忆”是其核心卖点之一。它在 Markdown 之外叠加了向量检索,做成混合检索,等于内置 RAG。对比之下,Claude Code 的 Auto Memory 目前更“克制”:纯本地 Markdown、200 行前缀加载、无向量检索。从功能完备度看还有差距,但路径清晰——先把记忆的“刚需”解决,再补检索、衰减与质量评估。
接下来可以期待什么
- 引入语义检索,突破 200 行前缀的天花板
- 自动过期与记忆质量评分,减少陈旧记忆带来的干扰
- 更细粒度的主题化与冲突检测,提升长期可维护性
相关链接
Auto Memory 官方文档:https://code.claude.com/docs/en/memory
Thariq 的公告:https://x.com/trq212
先写到这儿。若你也在探索与使用 AI 编程,欢迎关注「苏米客」公众号,我会持续分享一线实践与踩坑复盘。