跳到正文
This is Oscar
返回

Claude Code Memory 实战:把“每次重来”变成“持续进化”

很多团队在使用编码 Agent 一段时间后都会遇到同一个问题:

为什么它在这个会话里很懂我,换个会话又像“失忆”了?

Memory 机制就是解决这个问题的关键。

这篇文章基于 Claude Code 官方文档,尝试用工程视角回答三个问题:

  1. 哪些信息该写成“规则”?哪些该交给“自动记忆”?
  2. 规则为什么会“有时生效、有时失效”?
  3. 团队怎么把 Memory 做成可维护的系统,而不是一坨越来越长的提示词?

一、先建立正确心智模型:Memory 不是“魔法配置”,而是“上下文供给系统”

Claude Code 里有两套互补机制:

最重要的一点是:

这些内容是“会话启动时的上下文”,不是硬性强制策略。

这意味着写法会直接影响执行效果:

如果你把 Memory 理解成“知识输入层”而不是“配置开关”,很多现象就能解释通了。


二、CLAUDE.md:你定义“该怎么做”

官方给的层次很清晰,可以理解成四层作用域:

  1. 组织级(Managed policy):公司统一要求
  2. 项目级(Project):仓库共享规范
  3. 用户级(User):你的个人偏好
  4. 本地级(Local):只在本机、当前项目生效的私有偏好

2.1 什么时候该写进 CLAUDE.md?

适合写入“稳定、可复用、可检查”的约束,例如:

不适合写入的内容:

2.2 常见误区

误区 A:把 CLAUDE.md 当“百科全书”
文件越来越长,最后谁也不看、模型也不稳。

误区 B:把冲突规则堆在一起
比如“必须严格分层”与“允许业务急用时跨层调用”并存,没有优先级说明。

误区 C:只写原则,不写可执行动作
比如“注意性能”不如“列表接口默认分页且限制上限 100”。


三、.claude/rules:把规则从“大文件”拆成“可组合模块”

当项目变大后,推荐把规则拆到 .claude/rules/,并按主题管理(如 testing.mdsecurity.mdapi-design.md)。

更实用的是路径作用域规则(paths frontmatter)

这有两个直接好处:

  1. 减少噪音:当前任务只加载相关规则
  2. 节省上下文预算:提升规则命中率

一句话:

.claude/rules 不是“更多规则”,而是“更精准地给规则”。


四、Auto memory:你不写,它也会学

Auto memory 默认开启。它会在项目维度沉淀经验,例如:

4.1 关键机制(容易被忽略)

这意味着你应该把 MEMORY.md 当成索引页,不是日志堆放处。

4.2 Auto memory 适合记什么?

适合:

不适合:


五、团队落地建议:从“会写提示词”升级到“会设计记忆系统”

下面是一个可执行的最小方案:

第一步:建立三层结构

第二步:给规则做“瘦身目标”

第三步:把 Auto memory 当“经验缓存”


六、一个实用判断题:这条信息该放哪?


结语

Memory 的本质不是“让 Agent 记住一切”,而是:

在每次会话开始时,给它刚好够用、结构清晰、可执行的长期上下文。

你真正要优化的,不是“记忆数量”,而是记忆质量与加载精度

当这套机制稳定下来,Agent 的表现通常会从“偶尔惊艳”变成“稳定可靠”。


原始链接(官方文档)

推荐延伸阅读(重要)


分享到:

上一篇
用 GitHub Workflow + Claude GitHub App 打造自动化 AI 开发流水线
下一篇
如何提升轻技术产品的DX(Developer Experience)