每天学一点AI知识:Claude code中有关memory(记忆)能力的设计
Claude的memory能力设计揭示了AI产品如何突破上下文限制的终极解法。从Session Memory的实时会话压缩,到extractMemories的长期知识沉淀,再到teamMemorySync的团队协作同步,这套三层记忆体系正在重新定义人机交互的深度。本文将深入解析每个模块的工程实现与产品逻辑,看顶尖AI如何用结构化记忆打破LLM的遗忘诅咒。

前几天发生了大家都知道的Claude code事件,我们也有机会学习世界顶尖的AI产品的设计。
我选择了LLM短板并且对用户使用影响较大的memory(记忆)能力,进行了学习,收获颇多,也分享给各位。
其中有关记忆的有3个能力,分别是:Session Memory(会话记忆)、teamMemorySync(团队记忆同步)、extractMemories(自动提取长期记忆)。
1、Session Memory(会话记忆)
- 自动维护一份当前会话的 Markdown 总结/笔记文件(用于续航和后续压缩接续)
- 按阈值触发更新:达到初始化 token 门槛、且在上次抽取后上下文增长到位(并结合 tool 调用情况判断是否在“自然断点”更新)
- 更新方式是后台 fork 子 agent去抽取并写回这份会话笔记
- 安全限制:子 agent 只被允许编辑这一份会话笔记文件路径(避免误改其它文件)
- 额外支持手动触发:例如命令行 /summary 可以强制抽取
这样的好处是用户与智能体对话超出上下文限制后,下次对话可以通过读取这个markdown文件里的摘要继续进行对话,提升体验,也节省token消耗。
Markdown 会话笔记中内容:
保留「当前在干什么、关键文件/命令、踩过的坑」等高密度信息;
与 自动压缩(auto-compact)能力 配合:笔记里尤其强调 「Current State」要在压缩后仍能接续上下文。
prompt.ts提示词要求写入至会话笔记文件中内容:
# 会话标题 (5-10个词的简短标题,信息密集,不废话)
# 当前状态 现在正在做什么?还没完成的任务。下一步马上要做的事。
# 任务说明 用户让做什么?有哪些设计要求、背景信息。
# 文件与功能 重要文件有哪些?简单说它们是干嘛的、为什么重要。
# 工作流程 通常要运行哪些命令?按什么顺序?命令结果怎么看懂。
# 错误与修正 遇到了什么错误?怎么修好的?用户纠正过什么?哪些方法失败了、不要再试。
# 系统文档 重要的系统组件有哪些?它们怎么配合工作。
# 经验总结 什么有效?什么无效?要避免什么?不重复其他部分内容。
# 关键结果 如果用户要了明确结果(答案、表格、文档),在这里完整写出来。
# 工作记录 一步一步做了什么?每一步极简总结。
文件中函数的作用有:
1)给 AI 一套严格的记笔记规则
不许改标题结构、不许删模板说明、只准在每个标题下面填内容。要写详细:文件、命令、错误、步骤都要记等。
2)自动加载笔记模板
优先使用用户自定义笔记格式,否则使用默认固定格式。
3)检查笔记会不会太长
每一部分不能太长,整体笔记也不能太长,超了就提醒 AI精简。
4)自动替换变量
把 {{笔记路径}} {{当前笔记内容}} 自动换成真实信息,让 AI 直接看懂。
5)判断笔记是不是空的
如果 AI 还没记任何东西,就用老办法处理。
6)笔记太长就自动截断
防止笔记占太多空间,导致 AI 变笨。
2、extractMemories(自动提取长期记忆)。
就像一个“后台整理员”:每次对话快结束时,它会从你这轮聊天里挑出值得长期记住的要点,并且只允许它把结果写进记忆目录(保证不会乱改项目其它文件)。
详细内容:
1)在每次对话“收尾”(一轮完整 query loop 结束)时,从本轮对话内容里抽取可长期保存的信息抽取写入“auto-memory 目录”,形成一种可复用的记忆体系(通常是多文件 + 索引文件)
2)触发策略包括:
- 跳过重复:如果主 agent 已经直接写了记忆文件,就不会再 fork 抽取
- 节流:每隔 N 个合格轮次才抽取一次(避免频繁消耗 token)
- 支持“trailing run”:如果抽取过程中又来了新上下文,会再补做一次尾巴抽取
3)安全限制:子 agent 的工具权限被严格限制
- 只允许写入 memory 目录内部
- 其它工具会被 deny,保证写入边界
4)强调不要把敏感信息写进共享团队记忆(这是模板/策略层面的约束)
这样的好处是用户在与智能体对话的过程中,智能体会越来越了解用户,因为它可以从对话中抽“值得长期保存”的要点,逐渐积累维护长期记忆,逐渐提升用户体验。
prompt.ts提示词文件中有
给子 agent 提供两套“写记忆规则”的提示词拼装函数。
- 每条记忆写到单独的文件(用 frontmatter 格式)
- 用 MEMORY.md 做索引(指向这些文件),MEMORY.md 不是记忆正文
- 强调:不要重复、可以更新/删除过期信息
3、teamMemorySync(团队记忆同步)
“全组共享记忆”机制,针对 某个 Git 仓库(一个项目),在本地有一块专门的“团队记忆文件夹”;你(或 Claude)把一些 对整个团队都有用的说明/文档 写进这个文件夹里的文件;这个服务会 自动同步这些文件到云端,你的同事只要在同一个仓库里用 Claude,也能看到/使用这些记忆。
详细内容:
1)把“本地团队 memory 目录里的文件”与服务器上的团队记忆条目做同步
2)同步语义(非常关键):
- Pull:以服务器为准覆盖本地(server wins)
- Push:只上传“本地内容和服务器不一致”的增量 delta(依赖每条的 hash/校验和)
3)触发方式:
- 监听本地团队 memory 目录变化,2 秒 debounce 后自动 push
- 启动时会先 pull,避免新仓库出现“等不到第一轮写入”的死等待
4)安全策略(另一块很关键):
- 上传前做密钥扫描:发现疑似 secret 的文件会被跳过、不上传(并且日志只记录规则类型,不泄露 secret 值)
- 写入时也有 guard:防止模型把敏感内容写入 team memory 共享区域
这样的好处是用户在同一代码仓库中与其它用户合作时,通过共享信息提高合作效率,并且整个过程AI会自动完成,其他同事可以通过team memory文件直接查看共享内容。
本文由@宇智波冰 原创发布于人人都是产品经理,未经许可,禁止转载。
题图来自Unspalsh, 基于CC0协议。
- 目前还没评论,等你发挥!

起点课堂会员权益




