2026-08-20 · GitHub
thedotmack/claude-mem
An AI-assisted editorial analysis of this GitHub repository, based on the source information and signals available on 2026-08-20.
Analysis
claude-mem 是一个给 AI agent 装上“长期记忆”的开源工具,让它们跨会话记住你做过的事、说过的话,不用每次从头开始。
你用过 AI agent 吗?就是那种你让它写代码、查资料、整理文档的“数字实习生”。刚开始用的时候挺爽,你告诉它“帮我重构这个模块”,它刷刷刷就干完了。但问题出在第二天。你打开一个新的会话,想让它继续昨天的工作,结果它一脸茫然地看着你,好像你们从没见过。你不得不把昨天的上下文、代码结构、你的偏好重新说一遍。更烦的是,如果你同时在跑好几个 agent——一个在写测试,一个在调 API,一个在分析日志——每个 agent 都像得了失忆症,每次对话都是第一次见面。你花在“重新介绍”上的时间,比让它们干活的时间还多。
claude-mem 就是来解决这个问题的。它不是一个 agent 本身,而是一个记忆层,可以插到任何 agent 后面。你用的 agent 是 Claude Code、OpenClaw、Codex、Gemini、Hermes、Copilot、OpenCode——随便哪个——只要接上 claude-mem,它就开始自动记录。记录的不是原始对话日志,而是经过 AI 压缩和提炼的“记忆”。比如你让 agent 调试一个 bug,它试了三种方案,最后用第二种解决了。claude-mem 不会记下你说了什么废话,而是记下“用户偏好第二种调试路径,该 bug 的根因是内存泄漏”。下次你再遇到类似问题,agent 打开新会话时,claude-mem 会自动把这条记忆注入进去,agent 就会直接说:“上次我们遇到类似情况,你选了第二种方案,要不要再试试?”
它的工作流是这样的:你启动 agent,agent 启动时加载 claude-mem 插件。agent 每做一件事——调用工具、写代码、查文档——claude-mem 都在后台抓取这些操作,然后用 AI 模型把它们压缩成结构化的记忆片段,存到本地数据库里。它支持 SQLite 和 ChromaDB 两种存储后端,前者轻量,后者适合做向量检索。下次 agent 启动时,claude-mem 会根据当前任务的关键词,从数据库里检索相关的旧记忆,然后像塞小纸条一样塞进 agent 的上下文窗口里。agent 看到这些纸条,就知道“哦,这个用户之前做过这个,那个项目有坑”。整个过程对你是透明的,你不需要手动管理任何东西。
你可以把 claude-mem 想象成给 AI agent 装了一个“私人助理”。这个助理不干活,但它有一本笔记本,随时记下 agent 做过什么、你喜欢什么、哪些方案失败了。每次 agent 开始新任务,助理就把相关的笔记翻出来放在桌上。agent 不用再问“你上次是怎么做的”,直接看笔记就行。
市面上已经有类似的项目,比如 Mem0、Supermemory、OpenMemory。它们的目标都是给 AI 加记忆,但路径不同。Mem0 走的是“记忆即服务”路线,它自己管理一个向量数据库,提供 API 让你存和查。Supermemory 更偏向个人知识管理,像一个 AI 版的 Notion。claude-mem 的选择是“嵌入 agent 的工作流”。它不是让你手动去存笔记,而是自动抓取 agent 的每一个操作,然后压缩、索引、注入。这意味着你不需要改变使用 agent 的习惯,装个插件就行。这种路径的好处是“零摩擦”——你不需要学习新工具,不需要手动分类记忆,agent 自己就学会了记住你。坏处是,它依赖 agent 的插件系统,如果某个 agent 不支持插件,你就用不了。目前它支持的主流 agent 已经很多了,但如果你用的是某个小众的 agent,可能就得等社区适配。
代价也很清楚。第一,它需要额外的计算资源。每次会话结束后,它都要跑一次 AI 压缩,把原始操作变成记忆。如果你一天开几十个会话,这个压缩过程会消耗不少 token 和本地算力。第二,记忆的质量取决于压缩模型。如果模型压缩得太狠,可能会丢失关键细节;如果压缩得太松,记忆会膨胀,占用上下文窗口。第三,隐私问题。所有记忆都存本地,但如果你用的是云端 agent,你的操作数据会被传到 agent 的服务器,claude-mem 只能保证本地存储的安全,管不了传输过程。第四,它不适合那些“每次任务都完全不同”的场景。比如你让 agent 每天写一篇不同的新闻稿,昨天的记忆对今天几乎没有帮助,那 claude-mem 就白费力气了。
想象一下这个场景:你是一个独立开发者,维护着一个开源项目。你让 Claude Code 帮你写测试、修 bug、重构代码。以前你每天打开终端,输入“继续昨天的重构”,Claude Code 会问“哪个模块?什么重构目标?你上次改到哪了?”你得翻聊天记录,找到昨天的对话,复制粘贴。装了 claude-mem 之后,第三天早上你打开终端,输入“继续昨天的重构”,Claude Code 直接说:“好的,继续重构 user 模块的认证逻辑。你昨天已经完成了单元测试,今天要改的是 session 管理部分。上次你提到想用 JWT 替代 cookie,要现在开始吗?”你愣了一下,然后笑了。它记住了。