Claude-Mem:为 Claude Code 实现跨会话长期记忆
本文介绍开源插件 Claude-Mem,旨在解决 AI 编程助手(如 Claude Code)缺乏跨会话长期记忆的问题。通过事件驱动捕获关键操作,利用本地 SQLite 和 Chroma 向量库进行混合存储,并采用三层渐进式披露机制检索记忆。该方案显著降低 Token 消耗(约 90%-95%),支持隐私合规,适用于企业团队及个人开发者,是 Agent 时代的基础能力雏形。

本文介绍开源插件 Claude-Mem,旨在解决 AI 编程助手(如 Claude Code)缺乏跨会话长期记忆的问题。通过事件驱动捕获关键操作,利用本地 SQLite 和 Chroma 向量库进行混合存储,并采用三层渐进式披露机制检索记忆。该方案显著降低 Token 消耗(约 90%-95%),支持隐私合规,适用于企业团队及个人开发者,是 Agent 时代的基础能力雏形。

用 Claude Code 写代码的人,终于不用每次开新会话都从头解释项目背景了。
我们就借着 Claude-Mem 这个爆火项目,系统聊聊:为什么 AI 编程助手必须要'长期记忆'?Claude-Mem 具体怎么实现?它在工程上有什么值得借鉴的地方?以及,它的边界和未来会走向哪儿?
先说清楚,这篇文章主要写给三类人看:
我们围绕一个核心问题展开: 如何用一个开源插件,把'金鱼记忆'的 Claude Code,改造成年纪再大也记得你项目细节的'老同事'?
举一个很多人都经历过的场景:
你被迫重新解释项目背景、模块划分、约定规范。这些本来应该是'共享上下文'的东西,每次新会话都要重来一遍。
GitHub 上也有人在 issue 里直接把这种体验称为'重大工作流程中断',并明确提出要'跨会话持久记忆'能力。
AI 编程助手现在广泛存在几个共性问题:
本质上,现在多数 IDE 插件的记忆方式是'短期 + 纯上下文',而不是'长期 + 按需召回'。
这会带来几个直接后果:
GitHub 上已经出现不少自建方案:memory-mcp、mcp-memory-keeper、rlm-claude 等。
这些项目说明两件事:
Claude-Mem 恰好踩在这个需求点上:专门针对 Claude Code 做跨会话持久记忆,而且是免费开源,装完就能用。
用一句话概括 Claude-Mem:
这是一个给 Claude Code 用的本地持久化记忆插件,通过事件驱动 + 混合存储 + 三层渐进式检索,把你和 AI 一起做过的事,压成结构化'长期记忆',在后续会话中按需注入,同时大幅减少 Token 消耗。
几个关键信息:
对于习惯用 GitHub 看热度的人来说,一个'记忆插件'能涨到这个量级,已经说明它不只是'玩具小工具',而是踩到了真实需求。
Claude-Mem 的整体思路,可以拆成三步:
Claude-Mem 内部挂了 5 个生命周期钩子:
| 钩子 | 触发时机 | 作用 |
|---|---|---|
| SessionStart | 会话启动 | 初始化检索和上下文准备 |
| UserPromptSubmit | 用户提交问题时 | 记录用户意图和上下文 |
| PostToolUse | 工具调用完成之后 | 捕获文件读写、代码改动等 |
| Stop | 任务暂停 | 保存中间状态 |
| SessionEnd | 会话结束 | 触发总结、压缩与入库 |
这些钩子有几个特点:
这一步解决的是:怎么把人机协作过程变成结构化、可追溯的历史,而不是散落一地的对话记录。
Claude-Mem 的存储设计也比较'务实':
所有数据统一存放在用户本地目录 ~/.claude-mem/ 下,不走云端服务,这点对隐私敏感行业(金融、医疗)比较重要。
从工程角度看,这套组合有几个优势:
只存是第一步,更关键的是:会话结束时,要把大量零散的观察记录压成模型看得懂、又不费 Token 的摘要。
Claude-Mem 在 SessionEnd 阶段会调用 Claude Agent SDK,把会话中累计的 Observations 汇总成结构化摘要,典型包含四块:
这一步的关键是:不再把完整的原始历史直接塞进上下文,而是只注入高度浓缩后的'记忆索引 + 摘要'。
它为后面的'渐进式披露'打好了基础。
Claude-Mem 的核心创新,总结为'三层渐进式披露'(progressive disclosure)。
简单理解:不是一开始就把所有历史端给模型,而是分三层,按需解锁。
| 层级 | 主要内容 | Token 开销(大致) | 使用场景 |
|---|---|---|---|
| 第一层:Search | 摘要级索引与概要 | 约 50–100 / 结果 | 快速定位相关历史 |
| 第二层:Timeline | 会话 / 事件时间轴 | 中等开销 | 理解前后因果 |
| 第三层:Get_Observations | 完整观察记录详情 | 约 500–1000 / 结果 | 深挖实现细节、重现过程 |
大致流程可以想象成这样:
如果没有这三层,常规做法有几种:
三层渐进式披露,本质上是把'召回'和'注入'这两步拆开,优先只注入压缩后的高价值摘要。
对开发者来说,体感上就变成:同样的预算,AI 可以陪你做更长时间的活,而且不会越用越'傻'。
几个实测和反馈场景,我们可以按使用者身份来拆开看。
在大型代码库、多团队协作的企业场景,Claude-Mem 能做的事包括:
有团队反馈过这样的数字:
对于动辄数月、多人接力的企业项目来说,这种提升是实实在在的: 记忆系统不是多一个'功能点',而是让 AI 真正融入现有协作流程。
对一个长期在搞 side project 的个人开发者,Claude-Mem 带来的变化会更直接一些:
http://localhost:37777),能实时看到记忆流和会话摘要,类似'项目日记自动生成版'。这对很多'间歇性推进'的个人项目尤其友好 —— 哪怕你中间停了两周,回来之后不会全靠自己翻 Git commit 和脑补。
在金融、医疗这类对隐私特别敏感的行业,大家最担心的是:
Claude-Mem 的做法主要有两点:
这意味着你可以根据项目和合规要求,自定义'能记什么、不能记什么',而不是一刀切地'要么全记,要么全不记'。
/plugin marketplace add thedotmack/claude-mem
/plugin install claude-mem
执行完插件安装后,重启 Claude Code,大部分功能就能直接用上。
对普通开发者来说,有几点体验上的好处:
当然,如果你想进一步定制(比如不同项目用不同记忆策略),就需要了解一些配置项和阈值设定,这对高级用户来说也是可控的工程成本。
几个常见的'替代方案',我们可以稍微整理成一张表:
| 方案类型 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 传统 RAG 系统 | 功能强大,可接多种数据源 | 部署复杂,依赖额外基础设施 | 企业内部知识库 / 大型系统 |
| 简单文件注入 | 实现容易,维护成本低 | 缺乏智能检索,容易信息过载 | 小项目、一次性任务 |
| 手动复制粘贴 | 不需要额外工具 | 非常耗时,无法扩展 | 偶发需求,临时补充上下文 |
| Claude-Mem(现状) | 本地混合存储 + 渐进式披露 | 依赖 Claude Code 生态,需调阈值 | Claude 用户,日常持续开发项目 |
从工程折中来看,Claude-Mem 走的是一条'中等复杂度'的路线:
这也是为什么很多人把它称为:在 IDE 内部实用层面,目前最接地气的一种长期记忆方案。
Claude-Mem 的几个局限,展开讲一下,方便评估是否适合自己的场景。
记忆压缩是靠 Claude Agent SDK 来做的。 这意味着,在极端复杂场景下(比如几十个相关模块、跨多团队改动),摘要可能会出现信息遗漏或侧重点不太符合预期的问题。
所以在一些关键决策类项目中,仍然有必要保留人类写的设计文档和决策记录,不能完全依赖自动摘要当'唯一真相来源'。
因为它是为 Claude Code 量身定制的插件,所以:
这对走企业大规模部署的团队来说,需要在内部有一套插件版本管理和回滚机制,不然遇到版本冲突会比较头疼。
虽然默认配置可以直接用,但要在复杂项目里用得顺手,多少需要调一下参数,比如:
这些都关系到:既要让 AI 记得你,又不要记得太多,把上下文弄成'信息垃圾场'。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online