三层记忆架构
概述
三层记忆架构是 Claude Code 中实现的记忆管理系统,通过不同的存储层级来管理项目知识,具备自我修复能力。第一层是 MEMORY.md(轻量级指针索引),第二层是 Topic Files(按主题组织的知识库),第三层是 Transcripts(只 Grep 不全读的历史记录)。此外还包括作为稳定规则的 CLAUDE.md 层。这一架构解决了AI Agent在长任务中的"失忆"问题,保证了用户体验。
关键内容
- 架构层次:
- 第一层:MEMORY.md — 轻量级指针索引,始终加载在上下文中,每行约150字符,存储指向数据的指针而非实际数据,提供全局可见性
- 第二层:Topic Files — 按需加载的主题知识库,存储实际项目知识,按主题组织在 memory/topics/ 目录下,可包含详细内容
-
第三层:Transcripts — 只 Grep 不全读的历史记录,存储会话历史原始记录,但从不完整读回上下文,仅通过 grep 查找特定内容
-
CLAUDE.md 层(稳定规则层):
- 层 1:CLAUDE.md(稳定规则,每月变化)- 架构约束、技术栈声明、禁止事项
- 层 2:记忆文件(累积上下文,每周变化)- 已尝试方案、调试决策记录、重要发现备忘
- 层 3:Skills(复用指令集,按需演化)- 调试模式、代码审查模式等
-
注意:记忆会过时,需定期审查,删除已完成项目的"当前优先级"引用
-
Self-Healing 特性:
- 系统能够自动检测和修复记忆不一致
- 通过 MEMORY.md 文件实现记忆的自我修复机制
- 定期清理过时或冲突的记忆条目
-
具备矛盾检测与解决机制,能将暂时观察升华为已验证事实
-
工程重点:
- Anthropic 为记忆系统投入了可能超过任何其他模块的工程资源
- 记忆系统不是事后添加的功能,而是必须在架构初期就设计好的核心基础设施
-
实现了 Strict Write Discipline(严格写入纪律)防止脏索引
-
设计哲学:
- "grep > 向量搜索(对于精确需求)":对于历史记录的精确查询,grep 比向量搜索更准确、更便宜
- MEMORY.md 指针设计:150 字符/行的索引,而非全量数据加载,实现了成本驱动架构
-
两阶段写入(先写文件,后写索引):所有涉及状态更新的操作都应该是原子的,或者至少是可恢复的
-
竞争优势:
- 相比传统的单一记忆池,三层架构提供更好的组织性和检索效率
- 通过分层管理降低了上下文熵增问题
- 为KAIROS和AutoDream等高级功能提供了数据基础
-
MEMORY.md的指针设计大幅减少内存占用,同时保持高效的检索能力
-
设计优势:
- 全局可见:Agent 在任何时候都知道有哪些主题可以检索
- 按需加载:只有真正需要的 topic 才会被读取
- 极小开销:MEMORY.md 索引文件只有几 KB
- 防污染机制:通过 Strict Write Discipline 防止错误信息污染记忆系统
来源
- raw/articles/ai-tools/claude-code/03_memory_architecture.md — Claude Code 源码泄露深度解析(三)
- 05_to_08_combined.md — 05 · CLAUDE.md & 上下文管理系统
- raw/articles/ai-tools/claude-code/08_engineering_summary.md — Claude Code 源码泄露深度解析(八):工程总结
相关
- Claude Code — implemented_in
- MEMORY.md — related_file
- Self-Healing Memory — characteristic
- Topic Files — component
- Transcripts — component
- Strict Write Discipline — relies_on
- CLAUDE.md — relates_to
- Context Management — relates_to
- KAIROS — supports
- AutoDream — supports
- grep-tool — uses
- BashTool — uses