Skip to content

访问受限

会员专属内容

Claude Code 记忆功能

课程导读

这节课主要讲 Claude Code 如何跨会话“记住”重要信息:全局记忆适合保存你的长期偏好,项目记忆适合保存当前项目规范,自动记忆则由 Claude Code 根据对话内容自行整理。

二、记忆类型

Claude Code 的记忆可以先分成两类:

类型谁来写典型文件适合保存什么
手动记忆你或 Claude Code 按你的要求写入CLAUDE.mdCLAUDE.local.md明确规则、项目规范、个人偏好
自动记忆Claude Code 自动整理MEMORY.mdClaude Code 从对话中学到的长期规则和模式

需要注意:这些记忆本质上都是上下文信息,不是强制配置。

也就是说,Claude Code 通常会尽量遵守,但它依然可能理解偏、忘记细节,或者在上下文混乱时犯错。

三、使用 memory 命令

管理记忆可以使用:

text
/memory

/memory 通常可以看到:

入口作用
用户记忆查看或编辑用户记忆
项目记忆查看或编辑当前项目相关记忆
自动记忆查看自动记忆目录,或切换自动记忆开关

它也会列出当前会话已经加载的 CLAUDE.mdCLAUDE.local.md 和规则文件,方便你确认 Claude Code 到底读到了哪些记忆。

四、用户(全局)记忆

用户记忆对所有项目生效,适合保存你的长期个人偏好。

常见路径:

系统路径
macOS / Linux~/.claude/CLAUDE.md
Windows%USERPROFILE%\.claude\CLAUDE.md

适合写入的内容:

markdown
# 个人偏好

- 我的名字叫小由。
- 所有对话使用简体中文。
- 所有文档使用简体中文。
- 所有代码注释使用简体中文。
- 在 macOS 中,运行 Python 脚本优先使用 `python3`,安装依赖优先使用 `pip3`

保存后,重新开启 Claude Code 会话时,这些内容会自动加入上下文。

打开全局记忆文件

系统方式
Claude Code 内部使用 /memory,选择用户记忆文件
macOS FinderShift + Command + G,输入 ~/.claude/CLAUDE.md
Windows 资源管理器在地址栏输入 %USERPROFILE%\.claude\CLAUDE.md

如果文件在终端编辑器里打开,操作不熟悉时可以直接退出,改用侧边栏或系统文件管理器打开编辑。

五、项目记忆

项目记忆写在当前项目文件夹里。macOS / Linux 与 Windows 规则相同,只是路径写法不同(/\)。

常见文件如下(路径都相对于当前项目根目录):

macOS / LinuxWindows用途会不会进 Git(Git 是一种记录项目文件改动的工具,进阶课中讲解)
./CLAUDE.md.\CLAUDE.md写这个项目的正式说明和规范(个人项目是写给你自己看;有团队时则大家共用)会,团队也能看到
./.claude/CLAUDE.md.\.claude\CLAUDE.md同上,只是换到 .claude 文件夹里存放会,团队也能看到
./CLAUDE.local.md.\CLAUDE.local.md只给你自己看的补充说明,例如本地怎么跑、个人备注不进 Git,只留在你电脑上

如果你是一个人做项目,前两行照常用 CLAUDE.md 就行。需要「只给自己看、不想上传 Git」的内容时,再用 CLAUDE.local.md

和全局记忆的区别

用户(全局)记忆,适合每个项目都要遵守的个人偏好,例如「全程使用简体中文」。

CLAUDE.local.md 适合只在这个项目里才有意义的个人说明,不想写给团队看,也不适合写到全局记忆里。

新手建议:先在项目根目录建一个 CLAUDE.md 即可;只有当你有一些「只想自己看、不想随项目分享出去」的补充说明时,再额外建 CLAUDE.local.md

项目记忆(尤其是 CLAUDE.md)适合保存:

  • 项目简介
  • 技术栈
  • 常用运行命令
  • 测试命令
  • 代码风格
  • 目录结构说明
  • 当前项目的特殊注意事项

六、使用 init 生成项目记忆

如果你接手一个已有项目,可以使用:

text
/init

Claude Code 会分析当前项目,并生成一份项目说明文件。

这份文件通常会包含:

内容说明
项目简介当前项目是做什么的
常用命令启动、构建、测试等命令
项目结构主要目录和模块
开发规范命名、代码风格、注意事项

它本质上是给 Claude Code 看的“项目说明书”。后续你重新开启会话时,Claude Code 可以更快理解当前项目。

如果你不知道 CLAUDE.md 应该写什么,可以先跑一次 /init,让 Claude Code 自动生成一版,再慢慢调整。

七、新版 init

新版 /init 更像一个交互式项目初始化向导。

开启方式是在全局设置中添加环境变量:

json
{
  "env": {
    "CLAUDE_CODE_NEW_INIT": "1"
  }
}

配置文件通常位于:

系统路径
macOS / Linux~/.claude/settings.json
Windows%USERPROFILE%\.claude\settings.json

配置完成后,需要重启 Claude Code 才会生效。

九、自动记忆

自动记忆不需要你手动编辑文件。

Claude Code 会根据对话内容,自行判断哪些信息值得长期保存。

例如你说:

text
要记住一点,以后在这个项目中编写 Python 脚本的时候,要在开头添加两个注释:开发者是小由,Python 文件创建时间。

Claude Code 可能会判断这是一条长期规则,并写入自动记忆。

自动记忆默认是项目级别的,但不会直接放在项目根目录里。

常见路径:

系统路径
macOS / Linux~/.claude/projects/<project>/memory/
Windows%USERPROFILE%\.claude\projects\<project>\memory\

目录里通常会有:

文件作用
MEMORY.md自动记忆入口和索引
其他主题文件Claude Code 拆分出的详细规则或说明

MEMORY.md 启动时只会加载前 200 行或前 25KB,超出的部分不会自动加载。

十一、记忆使用建议

建议说明
CLAUDE.md 尽量短目标控制在 200 行以内
不要堆太多规则文件太长会占用上下文,也会稀释重点
错误重复两次就记录同一个错误出现两次以上,可以写入记忆
不确定写什么就先留空项目早期没有 CLAUDE.md 也没关系
优先让 Claude Code 帮你整理直接用自然语言说明规则,让它写入记忆

十二、记忆不是强制规则

重要提醒:记忆只是上下文,不是硬规则

CLAUDE.md 和自动记忆都属于上下文信息,不是强制配置。

你可以把它理解成给 Claude Code 的“参考说明”,而不是必须执行的系统开关。

Claude Code 通常会尽量遵守这些记忆,但如果规则写得太模糊、互相冲突,或者当前上下文比较混乱,它仍然可能理解偏或执行错。