066、Claude Code 记忆系统架构:MEMORY.md 索引与 memory 文件的持久化机制
066、Claude Code 记忆系统架构:MEMORY.md 索引与 memory 文件的持久化机制
上周五凌晨两点,我盯着终端里那条诡异的报错——Claude Code 在第三次对话后突然“失忆”,把昨天刚确认过的项目配置忘得一干二净。同事说“重启试试”,我试了,没用。直到我扒开~/.claude/memory/目录,才发现那个MEMORY.md索引文件里,有一条记录的last_accessed时间戳还停留在三天前。
这不是 bug,是记忆系统的持久化机制在特定场景下失效了。今天这篇笔记,就从这个坑开始,把 Claude Code 的记忆系统架构彻底拆一遍。
记忆系统的三层存储模型
Claude Code 的记忆不是简单塞进一个 JSON 文件完事。它用了三层结构,每一层解决不同的问题。
第一层:工作记忆(Working Memory)
这是当前对话上下文里直接可用的信息。Claude Code 会在每次交互时,把MEMORY.md索引文件的内容注入到系统提示词中。注意,这里注入的不是完整记忆文件,而是索引——一个轻量级的摘要列表,每条记录包含id、summary、tags和last_accessed。索引文件大小被严格控制在 8KB
