一、为什么 AI Agent 需要记忆系统
在第一篇的六层架构中,记忆系统负责管理 Claude Code 的"上下文"——它知道用户是谁、之前做过什么、当前任务进展到哪里。没有记忆,Agent 每次对话都会从零开始。
但 AI 的上下文窗口是有限的。以 Claude Code 支持的上下文窗口为例,当对话越来越长,历史记录会持续膨胀,直到超出窗口容量。记忆系统的核心任务,就是在有限窗口内,高效管理无限增长的信息。

▲ 上下文窗口的组成:系统提示 + 对话历史 + 工具结果 + 记忆文件 = 有限的总窗口容量
二、三层记忆架构
Claude Code 采用了"温度分层"的设计思路,将记忆按使用频率分为三层:

▲ 三层记忆架构:热层(MEMORY.md)→ 温层(话题文件)→ 冷层(历史对话),温度越高访问越频繁
🔥 热层:MEMORY.md
热层是 Claude Code 记忆系统的核心,它使用一个固定名称的文件 MEMORY.md 作为"高频信息高速缓存"。
这个文件的特点:
- 始终加载
— 每次对话开始时自动加载,不需要额外指定 - 手动维护
— Agent 和用户共同维护,包含用户偏好、关键项目信息、长期目标 - 不在对话历史中
— 通过工具读取,不占用宝贵的上下文 token
简单来说:MEMORY.md 是 Agent 的"长期记忆",而对话历史是"短期记忆"。

▲ MEMORY.md 工作原理:通过工具读取,不进入对话上下文,但 Agent 可以随时引用其中的内容
🌡️ 温层:话题文件(Topic Files)
当某个话题在当前会话中反复出现,温层机制会将该话题的相关上下文抽取出来,形成独立的"话题文件"。
温层的设计理念:当一个话题被讨论得足够深入,值得保存以便后续引用时,把它从嘈杂的对话历史中抽取出来,单独存储。
❄️ 冷层:历史对话(Archived Sessions)
已经结束的历史会话,被归档到本地存储。冷层的信息不主动加载,只有在 Agent 需要时(通过工具读取)才会召回。
冷层的设计理念:历史的完整记录,但按需召回,不需要在每次对话中反复携带。
三、五级上下文压缩策略
当对话持续增长,即使有分层记忆,上下文仍会逐渐逼近窗口上限。Claude Code 实现了五级压缩策略,在不同的严重程度下触发不同的压缩手段:
📦 五级压缩策略详解
- ① Snip
— 剪裁当前上下文,去掉低价值信息(如重复的确认语句) - ② Microcompact
— 微压缩,保留关键语义,将长输出提炼为短摘要 - ③ Context Collapse
— 折叠压缩,把多轮对话压缩为单条摘要 - ④ Autocompact
— 自动触发,基于窗口阈值判断,无需人工干预 - ⑤ Reactive Compact
— 应急压缩,在异常情况下(如单次输出超长)的紧急压缩

▲ 上下文压缩过程:大块对话历史被压缩为精炼摘要,释放窗口空间
压缩的优先级
Claude Code 在触发压缩时,有明确的优先级顺序:
- 优先压缩工具结果
— 工具输出往往很长,且语义价值相对对话低 - 其次折叠历史对话
— 保留用户意图,压缩具体措辞 - 最后考虑系统提示
— 系统提示是架构设计的一部分,尽量不压缩
四、MEMORY.md 的设计理念
MEMORY.md 是整个记忆系统中最有趣的设计之一。它不是 Agent 自动生成的文件,而是 Agent 与用户共同维护的。
核心设计理念:记忆不是 Agent 的独白,而是 Agent 与用户协作写作的文档。
在实际使用中,MEMORY.md 通常包含:
用户的偏好设置(编程语言、技术栈、代码风格) 当前项目的关键信息(项目结构、主要模块、数据模型) 用户明确希望记住的事项(用户说的"记住……") Agent 自己在工作过程中总结的重要发现
五、为什么这样设计:成本与效果的权衡
Token 成本是记忆系统设计的核心约束。每一段进入上下文的历史,都需要消耗 token,都需要付费。三层记忆的设计,本质上是在"信息完整度"和"token 成本"之间,找到的工程平衡。
这个平衡的逻辑是:
热层(MEMORY.md):始终在,最重要的信息,最低成本 温层(话题文件):按需加载,中等成本 冷层(历史对话):按需召回,最高成本,但延迟触发
Claude Code 的团队显然对 token 成本有极其深刻的认知。这套设计,不是"先做个完整版本再优化",而是从一开始就以成本为约束进行的架构设计。
六、小结
Claude Code 的记忆系统,展示了如何在有限资源下管理无限信息的设计思路。
三层记忆架构,解决了"什么信息存在哪里"的问题;五级压缩策略,解决了"上下文超限时怎么办"的问题;MEMORY.md 的设计,则创造了一种 Agent 与用户共同维护记忆的新范式。
这三个设计组合在一起,让 Claude Code 得以在保持对话连贯性的同时,控制 token 成本在合理范围内。这是大型语言模型应用工程中,一个非常值得学习的范例。
预告:下一篇(最后一篇)我们将解析 Claude Code 的安全与权限系统——纵深防御的设计、YOLO Classifier 的实现原理,以及在 AI Agent 场景下安全架构的最佳实践。
夜雨聆风