读 Claude Code 源码 - memory 机制
💡
原文中文,约7800字,阅读约需19分钟。
📝
内容提要
Claude Code 的内存机制包括会话内存和自动内存。会话内存通过后台子代理维护 summary.md 文件,定期更新以提取关键信息。自动内存支持跨会话回忆,使用 MEMORY.md 作为索引,保存持久记忆。更新和提取过程遵循特定阈值和配置,以确保高效管理内存内容。
🎯
关键要点
- Claude Code 的内存机制分为会话内存和自动内存。
- 会话内存通过后台子代理维护 summary.md 文件,定期更新以提取关键信息。
- 会话内存更新遵循特定阈值,包括最小上下文窗口令牌数和工具调用次数。
- 自动内存支持跨会话回忆,使用 MEMORY.md 作为索引,保存持久记忆。
- MEMORY.md 负责做入口索引,每个条目应为一行,长度不超过 150 个字符。
- 保存记忆的过程分为两步:第一步是将记忆写入各自的文件,第二步是在 MEMORY.md 中添加指向该文件的指针。
❓
延伸问答
Claude Code 的内存机制分为哪两种类型?
Claude Code 的内存机制分为会话内存和自动内存。
会话内存是如何维护的?
会话内存通过后台子代理维护 summary.md 文件,定期更新以提取关键信息。
自动内存的主要功能是什么?
自动内存支持跨会话回忆,使用 MEMORY.md 作为索引,保存持久记忆。
更新会话内存的条件是什么?
更新会话内存的条件包括最小上下文窗口令牌数和工具调用次数。
MEMORY.md 文件的作用是什么?
MEMORY.md 负责做入口索引,每个条目应为一行,长度不超过 150 个字符。
保存记忆的过程分为哪两步?
保存记忆的过程分为两步:第一步是将记忆写入各自的文件,第二步是在 MEMORY.md 中添加指向该文件的指针。
➡️