
Claude Code SDK #17:Memory 与 CLAUDE.md 全解——两套机制 × 四层作用域 × 路径级按需加载,让 Claude 跨 session 记住一切
每次新 session Claude 都从零记忆出发,CLAUDE.md 和 Auto Memory 是解决这个问题的两套互补机制。本篇完整拆解四层作用域(Managed/User/Project/Local)与加载顺序、`.claude/rules/` 的路径级按需加载如何省 token、Auto Memory 的存储结构与懒加载设计、企业 Managed 层部署与 claudeMdExcludes 策略,以及「/compact 后规则消失」等三个高频调试坑,附五条可落地的实践建议。
npm run test:unit」「别直接往 main 分支推」。两套机制,互补而非替代
| CLAUDE.md | Auto Memory | |
|---|---|---|
| 由谁写 | 开发者手动写 | Claude 自动记录 |
| 内容类型 | 项目规范、工作流程、架构约定 | 构建命令、调试经验、Claude 观察到的偏好 |
| 作用域 | 项目 / 用户 / 组织级 | 单仓库,跨 worktree 共享 |
| 加载方式 | 每次 session 全量注入上下文 | 每次 session 加载前 200 行或 25KB |
| 最适合 | 你想主动控制的规则与约定 | 让 Claude 从使用中学习、减少重复纠正 |

CLAUDE.md 的四层作用域
| 层级 | 路径 | 作用范围 | 典型用途 |
|---|---|---|---|
| Managed 层 | macOS: /Library/Application Support/ClaudeCode/CLAUDE.md / Linux: /etc/claude-code/CLAUDE.md | 机器上所有用户、所有项目 | 公司编码规范、合规要求(IT 通过 MDM/Ansible 分发) |
| User 层 | ~/.claude/CLAUDE.md | 当前用户的所有项目 | 个人代码风格偏好、常用工具快捷方式 |
| Project 层 | ./CLAUDE.md 或 ./.claude/CLAUDE.md | 当前项目(通过版本控制与团队共享) | 项目架构、测试命令、命名约定 |
| Local 层 | ./CLAUDE.local.md(加入 .gitignore) | 仅当前用户、当前项目 | 本地 sandbox URL、个人测试数据 |
./CLAUDE.md 在 ~/.claude/CLAUDE.md 之后进入上下文,项目级指令优先级更高。foo/bar/ 目录下启动 Claude,它会加载:foo/CLAUDE.md → foo/bar/CLAUDE.md → 各层对应的 CLAUDE.local.md,全部拼接进上下文(不是覆盖)。用 .claude/rules/ 做路径级按需加载
your-project/
├── .claude/
│ ├── CLAUDE.md # 全局主指令
│ └── rules/
│ ├── code-style.md # 始终加载(无 paths 声明)
│ ├── testing.md # 始终加载
│ └── api-design.md # 只有操作 API 文件时才加载.md 文件头部加 YAML frontmatter:---
paths:
- "src/api/**/*.ts"
- "src/api/**/*.tsx"
---
# API 开发规范
- 所有 API endpoint 必须包含输入验证
- 使用标准错误响应格式(见 src/lib/errors.ts)
- 必须包含 OpenAPI 注释src/api/users.ts 时,这份规则才会进入上下文;操作 src/components/Button.tsx 时不会加载。~/.claude/rules/ 下的文件在所有项目中生效——优先级低于项目级 rules,但高于 managed 层之外的全局默认。
Auto Memory:Claude 自己做笔记
~/.claude/projects/<project-hash>/memory/
├── MEMORY.md # 入口索引(每次 session 加载前 200 行或 25KB)
├── debugging.md # Claude 整理出的调试经验
├── api-conventions.md # Claude 观察到的 API 约定
└── ... # 其他主题文件(按需创建)MEMORY.md 是一份索引,记录「去哪里找什么」。细节内容放在主题文件里,不在 session 启动时加载,而是 Claude 认为需要时通过文件工具按需读取。{
"autoMemoryEnabled": false
}CLAUDE_CODE_DISABLE_AUTO_MEMORY=1。
企业部署场景
/Library/Application Support/ClaudeCode/CLAUDE.md),由 IT 通过 MDM/Ansible 推送,覆盖该机器上所有用户的 Claude 会话,且无法被 claudeMdExcludes 排除1。managed-settings.json:{
"claudeMd": "提交前始终运行 `make lint`。\n禁止直接推送到 main 分支。"
}| 要控制的事情 | 配置位置 |
|---|---|
| 限制特定工具、命令、文件路径 | managed-settings.json → permissions.deny |
| 强制沙箱隔离 | managed-settings.json → sandbox.enabled |
| 代码风格、合规提示、行为指令 | Managed CLAUDE.md |
{
"claudeMdExcludes": [
"**/monorepo/CLAUDE.md",
"/home/user/monorepo/other-team/.claude/rules/**"
]
}.claude/settings.local.json 使排除只在本机生效。三个高频调试坑
/memory 命令,查看当前 session 实际加载了哪些文件。如果你的 CLAUDE.md 不在列表里,说明路径不对或不在加载层级内。/compact 后,工作目录的 CLAUDE.md 会重新从磁盘读取并注入——这部分不会丢失。@path/to/file 语法把内容拆分成多个文件并不能缓解这个问题,因为被 @ 导入的文件仍然在 session 启动时全量注入。真正的解法是用 .claude/rules/ 加 paths frontmatter,让规则只在需要时加载。五条实践建议
/init 生成起步文件,再手动精炼
/init 命令让 Claude 自动分析当前代码库,生成包含构建命令、测试方法和项目约定的初始 CLAUDE.md。设置 CLAUDE_CODE_NEW_INIT=1 启用多阶段交互式流程,能进一步定制要生成的 Skills 和 Hooks。初始文件生成后,删掉 Claude 能从代码里自己推断的内容,只保留它靠静态分析无法得知的规则。rules/api-design.md 加 paths: ["src/api/**/*.ts"]。「所有文件都用 2-space 缩进」→ 放进主 CLAUDE.md。规则的触发范围越窄,越应该放进 rules/ 的路径级文件。/memory → 打开 auto memory 目录查看 Claude 记录了什么。Auto Memory 里的内容有时比你自己写的 CLAUDE.md 更准确地反映了「Claude 在这个项目里实际学到了什么」。发现过时或错误的记录直接编辑对应的 .md 文件即可;Auto Memory 是普通 Markdown,不需要特殊工具管理。permissions.deny。Settings 里的限制是客户端强制执行的,Claude 自己无法绕过;CLAUDE.md 里的限制是上下文约束,Claude 通常遵循但在极少数情况下可能忽略。References
Related content
Picked from other channels by content similarity—find new creators to follow.
Article·X Feed 每日中文简报|2026年6月9日
2026年6月9日简报:Claude Code 一周年深度方法论(Auto Mode 取代 Plan Mode、错误写入规则);Cognition FrontierCode 评测 Opus 4.8 Diamond 子集 13.4%;Skills 仓库新增 Teach Skill;傅盛判断人形机器人行云流水大概率非真自主;Elon Musk 宣布 FSD 丹麦获批;Genspark 推出 Skill Plaza 让普通用户也能用 Skills。
X Feed 每日中文简报
Article·Memory 技术日报 2026-06-16:KV 共享、可执行用户记忆、搜索栈持久化
本期筛出 3 条大模型 memory 方向的一手进展:SwiftCache 用跨模型显存共享降低长对话 KV 加载成本,User as Code 把个性化记忆变成可执行状态,Elastic 展示用 Elasticsearch 承载 Claude Code 跨会话记忆的工程路线。读完可快速判断今天该跟进哪一层 memory 基础设施。
大模型 Memory 技术日报
- AudioAudio·
收件箱 Freestyle(6月6日)
今天 1 封未读邮件:Medium Daily Digest 塞满 15 篇 AI 工程文章——Claude Code spec-driven 开发、Anthropic Opus 4.8 发布、技术面试宣告终结、开源帝国威胁开发者、Uber 每秒 83K GPS ping、CLAUDE.md 九万一千颗 star 里面没有代码。一首 trap rap 打包全部,收件箱清零。
Gmail 未读邮件 Daily Rap
Article·Claude Code 出实时评审页,Gemini 补临时聊天管控——6 月 21 日 AI 动态
本期补看 6 月 16-21 日可核验的 AI 产品更新:Claude Code Artifacts 把编码会话变成组织内可共享的实时页面,Gemini app 给企业管理员补临时聊天和删除对话控制,Copilot Chat Auto mode 面向所有 Copilot 计划开放,Gemini in Sheets 扩展到更多语言。
AI 产品日报
Audio·Claude Tag:Anthropic 把 Claude 放进团队频道
Anthropic 发布 Claude Tag,把 Claude 从个人聊天窗口推进 Slack 频道。本期解读它为什么更像团队里的持久代理,而不是一个新版机器人。
Claude 博客解读播客
Article·AI Agent 生态速报 | 2026-05-22:Karpathy 加入 Anthropic,美国 AI 监管令突然叫停
Karpathy 宣布加入 Anthropic 领导预训练新团队,目标是用 Claude 加速 Claude 自身的研究迭代;特朗普 AI 行政令(90 天预发布审核 + NSA 机密测试)在签署前几小时因「中美竞争担忧」叫停;Claude Code 上线「Dreaming」持久记忆并完成 Managed Agents 沙盒化;Kore.ai Artemis 企业 Agent 平台首发 Azure;delta-mem 以 0.12% 参数开销实现超越 RAG 的 Agent working memory。
Agent 生态周报
Add more perspectives or context around this Post.