2026年3月27日,来腾讯会议(限30人)了解掌握如何用Openclaw构建企业AI生产力
免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


我要投稿

1 个文件让 Claude Code 记住你:MEMORY.md 全解析

发布日期:2026-03-20 09:46:37 浏览次数: 1532
作者:活水智能

微信搜一搜,关注“活水智能”

推荐语

Claude Code 终于可以记住你的项目了!MEMORY.md功能让跨会话协作更高效,告别重复交代的烦恼。

核心内容:
1. 自动记忆功能的工作原理与默认设置
2. MEMORY.md文件的结构与存储位置
3. 200行限制规则与记忆管理技巧

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

点击上方↗️「活水智能」,关注 + 星标🌟

图片

作者:Youssef Hosni

编译:活水智能

用过 Claude Code 的人大概都有这个体验:关掉会话,第二天回来,Claude 从零开始。你得重新交代项目细节、编码偏好、架构决策,才能回到昨天的进度。

Anthropic 现在推出了 Claude Code 的自动记忆功能(auto-memory),目标很简单:让会话之间的衔接更顺畅。Claude 会在你工作的过程中,自动记录有用的上下文——构建命令、编码偏好、架构选择,甚至你们一起解决过的疑难 bug。

下次打开新会话,这些上下文已经在那里了。你可以从上次停下的地方继续,而不是从头来过。

大多数 Claude Code 用户已经熟悉 CLAUDE.md——用来给 Claude 写指令的文件。自动记忆在此基础上新增了一个文件:MEMORY.md。和 CLAUDE.md 不同,这个文件由 Claude 自己创建和更新,相当于一个跨会话的持续笔记本。

本文将详细介绍自动记忆的工作原理、CLAUDE.md 与 MEMORY.md 的区别、实际测试结果,以及如何控制这个功能。

1. 自动记忆的工作原理

更新 Claude Code 后,自动记忆默认开启,无需安装或配置。在你工作的过程中,Claude 会默默观察并记录笔记,自行决定哪些信息值得保存到下次会话。

Claude 会记录这些信息:

  • • 项目模式:构建命令、测试流程、代码库组织方式
  • • 调试经验:疑难问题的解决方案和错误根因
  • • 架构笔记:重要文件、模块关系、核心抽象
  • • 你的偏好:沟通风格、工作流习惯、工具选择

关键在于,这一切不依赖手动输入。Claude 自己判断什么重要,自动记下来。

记忆存储在哪里?

每个项目有自己的记忆目录,存储在:

~/.claude/projects//memory/ 路径基于 Git 仓库根目录,同一仓库内的所有子目录共享同一个记忆位置。如果使用 Git worktree,每个 worktree 有独立的记忆目录。  

目录结构通常是这样的:

~/.claude/projects/<project>/memory/
├── MEMORY.md          # 主索引,每次会话开始时自动加载
├── debugging.md       # 调试历史和常见问题笔记
└── ...                # Claude 按需创建的其他主题文件
MEMORY.md 是主入口,相当于 Claude 保存的所有内容的索引,也是每次新会话开始时唯一自动加载的记忆文件。  

200 行限制

一个重要细节:新会话启动时,Claude 只会将 MEMORY.md 的前 200 行加载到系统提示中。

当 MEMORY.md 变得太长时,Claude 会把详细笔记拆分到独立的主题文件(如 debugging.md 或 api-conventions.md),保持主文件简短实用。这些额外的主题文件不会在启动时加载,Claude 只在需要时按需读取。

工作流程是这样的:

  • • 新会话启动,加载 MEMORY.md 的前 200 行
  • • Claude 需要某段调试历史,按需读取 debugging.md
  • • Claude 学到新东西,更新 MEMORY.md 或某个主题文件

值得注意的是,这不是后台进程——你可以在会话中实时看到 Claude 读写记忆目录。

2. CLAUDE.md 和 MEMORY.md 有什么区别?

很多开发者会问:既然已经有 CLAUDE.md 了,为什么还需要 MEMORY.md?

CLAUDE.md 一直是 Claude Code 的一部分,是你写指令、规则和偏好的地方。  

MEMORY.md 不一样。你不需要自己写 MEMORY.md,Claude 会自动创建和更新它。  

最简单的理解方式:CLAUDE.md 是你给 Claude 的指令,MEMORY.md 是 Claude 自己的笔记本。

在 MEMORY.md 中,Claude 会记录工作中学到的有用上下文:

  • • 你的偏好
  • • 反复出现的项目模式
  • • 哪些命令有效、哪些会失败
  • • 过去会话中的有用笔记

区别很简单:

  • • CLAUDE.md:你告诉 Claude 该怎么做
  • • MEMORY.md:Claude 给自己记笔记

两个文件配合使用,让 Claude 在会话开始时就有更好的上下文。一个告诉 Claude 你希望它怎么表现,另一个帮它记住关于你项目的已有认知。

记忆层级体系

Claude Code 不只依赖 CLAUDE.md 和 MEMORY.md,它实际上通过一个分层记忆系统工作。核心原则是:更具体的指令会覆盖更宽泛的指令。

项目级的 CLAUDE.md 优先于全局用户级记忆。自动记忆也在项目级别,意味着它的作用范围是你和你正在工作的特定项目。

还有一个实用细节:CLAUDE.local.md 会自动加入 .gitignore,适合存放私有的本地设置,比如沙箱 URL、本地测试笔记等不需要团队共享的内容。

会话启动时加载什么?

打开新的 Claude Code 会话时,Claude 会从多个层级加载上下文:

  • • 组织策略(如果有的话)
  • • 项目级 CLAUDE.md(团队共享指令)
  • • 个人 ~/.claude/CLAUDE.md 偏好
  • • MEMORY.md 的前 200 行(Claude 保存的笔记)

所以在你写第一条提示之前,Claude 已经对你的项目规范、个人偏好和之前会话的上下文有了基本了解。

3. 实战:自动记忆上手体验

第一步:更新 Claude Code

确保你使用的是支持自动记忆的版本:

claude update

然后检查版本号,需要 1.0.18 或更高:

claude --version

第二步:创建测试项目

创建一个测试项目并初始化 Git:

mkdir test-claude-memory && cd test-claude-memory
git init

初始化 Git 很重要,因为 Claude Code 依赖 Git 仓库根目录来确定记忆的存储位置。如果项目不是 Git 仓库,项目级记忆就无法正常工作。

然后在项目中启动 Claude Code:

claude

第三步:触发自动记忆

自动记忆不会因为你打开了会话就创建文件。Claude 需要和你一起做点事情,才会开始记笔记。

在会话中给 Claude 一个任务,比如:

Build a simple RAG pipeline with LangChain

完成后,运行 /memory 命令,你会看到自动记忆已开启,并有三个记忆选项:

  • • 选项 1:用户记忆 — 打开全局 ~/.claude/CLAUDE.md,这是你的个人偏好文件,跨所有项目生效
  • • 选项 2:项目记忆 — 打开当前项目的 CLAUDE.md,存放团队级别的上下文
  • • 选项 3:打开自动记忆文件夹 — 这是 Claude 管理的部分,包含 MEMORY.md 和各主题文件

第四步:开关自动记忆

输入 /memory 命令时,你会看到:

Auto-memory: on

你可以直接在这里切换开关,无需修改配置文件。选中 Auto-memory: on 这一行按回车,就会切换为 Auto-memory: off

如果你要做一些不想让 Claude 记住的探索性工作,或者只是一次性会话,这是暂停记忆的最快方式。

第五步:冷启动测试

关闭 Claude Code,在同一项目中启动新会话,不提供任何上下文,直接问:

What do you know about this project?

Claude 会从 MEMORY.md 中读取之前的记忆,给出项目的详细概述。所有信息都是从上一次会话中自动保存的——这就是自动记忆的实际效果。

4. 控制自动记忆

自动记忆默认开启,大多数情况下这是合理的设置。但有些场景你可能需要关闭它。

单个项目关闭

在项目的设置文件中添加:

// .claude/settings.json
{
  "autoMemoryEnabled": false
}

只影响当前项目,其他项目不受影响。

全局关闭

在用户级设置文件中添加:

// ~/.claude/settings.json
{
  "autoMemoryEnabled": false
}

所有项目都会停用自动记忆。

CI 环境强制关闭

在 CI 流水线或其他自动化环境中,使用环境变量是最可靠的方式:

export CLAUDE_CODE_DISABLE_AUTO_MEMORY=1  # 强制关闭
export CLAUDE_CODE_DISABLE_AUTO_MEMORY=0  # 强制开启

这个环境变量会覆盖 /memory 开关和 settings.json 中的设置,确保自动化环境中 Claude 不会保存 CI 会话的笔记。

手动编辑记忆文件

记忆文件就是普通的 Markdown 文件,你随时可以打开编辑。

最方便的方式是在 Claude Code 中使用 /memory 命令,它会打开记忆文件选择器,让你直接跳转到系统编辑器中编辑。

你也可以从终端直接打开:

open ~/.claude/projects/<project>/memory/MEMORY.md

当你想删除过时的笔记、清理不再相关的条目,或者随着项目变化重新组织记忆时,这个功能很实用。



活水智能,成立于北京,专注通过AI教育、AI软件及高质量社群,持续提升知识工作者的生产力。

  • •   10+ 人气AI课程:线下工作坊与实操训练,聚焦最新AI应用。
  • •   2600+深度成员社群:知识星球汇聚大厂程序员、企业高管、律师、创业者等各领域精英。
  • •   城市分舵:北/上/广/深/杭/成/渝等城市均有线下组织,连接志同道合的伙伴。

🎁 活水智能福利群开放加入

每周独家AI新知、专属优惠券、干货方法论、同学交流心得,更有不定期赠书活动,等你来参与!

👇🏻👇🏻👇🏻

福利群图片
 点击阅读原文,立即入群

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询