009 · claude-mem

Persistent Context Across Sessions for Every Agent · thedotmack/claude-mem
给 Agent 装跨会话长期记忆;但它默认把记忆送去第三方压缩,这是关键取舍
传播热度 9
工程完成度 8
业务相关性 8
收藏观察价值 8
综合 8.3 上手门槛 L4 · 自建或写码 许可证 Apache-2.0 Stars 97,200 Fork 8,637 数据快照 2026-10-11快照 2 天前 打开仓库 ↗
一句话定位:给 AI Agent 装长期记忆。自动记录会话里发生的一切,用 AI 压缩成摘要,
下次开会话时把"相关的那部分"重新注入上下文。

一、核心档案

项内容
仓库github.com/thedotmack/claude-mem
作者Alex Newman(@thedotmack)
创建时间2025-08-31(不是新项目,今年才起量)
安装npx claude-mem install
兼容Claude Code、OpenClaw、Codex、Gemini、Hermes、Copilot、OpenCode
存储本地 ~/.claude-mem/,SQLite 3 + FTS5 全文索引 + Chroma 向量库
本地服务由 Bun 托管的本地 HTTP worker,提供网页面板与搜索端点

捕获机制:5 个生命周期钩子挂在 Agent 上——SessionStart、UserPromptSubmit、

PostToolUse、Stop、SessionEnd。你不管,它自己捞。

三层检索(官方称约省 10 倍 token)

  1. search 拿精简索引(每条约 50–100 token);
  2. timeline 看时间线上下文;
  3. get_observations 按 ID 拉完整细节(每条约 500–1,000 token)。

先过滤再取全文——比一股脑翻记忆库省得多。观察项按类型打标签:

decision、bugfix、security_alert、sensitive。

二、关键数据(快照 2026-10-11)

指标数值来源
Stars97,200(今日 +534)夜雨聆风
Stars 口径95,940 | 98,476(10-09)theterminal(10-04)| 掘金日榜
Forks8,637掘金日榜
Open issues110theterminal 引 GitHub API
许可Apache-2.0同上
三源区间 95.9k–98.5k,波动正常,可信度尚可;采信 97.2k 并标注区间。

三、真问题·硬伤 vs 建议

真问题 / 硬伤

  • 压缩默认不在本地跑(最关键的一条)。README 写明默认用 claude-mem observer

(14 天试用),替代项为 OpenRouter / Gemini API / 你自己的 Anthropic 计划。

你选谁,谁就收到被压缩的观察内容——"本地记忆库"和"本地压缩"是两回事,别混淆。

  • 记忆投毒(memory poisoning)是真实攻击面。2026-07-16 arXiv 论文

*Bad Memory: Evaluating Prompt Injection Risks from Memory in Agentic Systems*

测试了 Claude Code 与 Codex:Agent 能抵抗用外部内容覆写自身记忆,

但"已经植入文件里的载荷可以成功攻击当前与未来会话"。

该论文没有测试 claude-mem,但道理通用:**Agent 从网页或依赖里读到的东西会变成观察项,

被摘要后在下一周重新注入——模型会把它当成自己的历史。**

  • 约 10 倍 token 节省是自述,未找到独立测量。
  • 无公开安全分析。第三方明确说"没找到针对 claude-mem 本身的安全性分析"。
  • 排除敏感内容靠标签:想把秘密挡在存储与压缩之外,得你自己打 sensitive 标签。
  • 可选云同步指向 cmem.ai,写着"写入即同步",需邮箱 magic-link 登录。

建议 / 观察

  • 对 TextFlow 的参考价值很直接:老爷一直要求"多项目并行切换时上下文不丢",

这就是它的正面解法——自动捕获 + AI 压缩 + 按需注入,且三层检索省 token。

这套结构可以照搬进 TextFlow 的记忆节点设计。

  • 但必须换成本地压缩(接 Ollama 或自建)才符合老爷的数据习惯,

默认那条"14 天试用观察器"的路不要走。

  • 与 007 号 headroom 是同一族技术(都会话上下文处理),但方向相反:

headroom 压的是"这一次要发出去的",claude-mem 存的是"跨会话要留下的"。

四、评分

维度评分说明
传播热度⭐ 9/10近 10 万星,日增稳定
工程完成度⭐ 8/10钩子 + 三层检索设计扎实;但云依赖默认开启、安全未审计
业务相关性⭐ 8/10直接对治 TextFlow 的跨会话记忆需求
收藏观察价值⭐ 8/10"自动捕获 + 压缩 + 注入"范式值得跟踪

综合均分 8.3 / 10

五、锚点清单

  • 已验证:Apache-2.0、TypeScript、创建于 2025-08-31、110 open issues、

5 个生命周期钩子名称、SQLite+FTS5+Chroma 存储、三层检索的 token 区间、

默认压缩走 claude-mem observer(14 天试用)、可选云同步 cmem.ai、

独立媒体明确表示"未找到针对本项目的安全分析"

  • 待核实:Star 准确值(95.9k / 97.2k / 98.5k)、"约 10 倍省 token"的第三方复现
  • 已知风险:记忆投毒(arXiv 论文结论,虽未针对本项目,但机制通用)

六、给老爷的判断

结构值得抄,默认配置不值得用。 它的"自动捕获 + 压缩 + 按需注入"正是 TextFlow

跨会话记忆该长的样子;但默认把内容送去第三方压缩这一条,与老爷的数据习惯冲突。

建议:读它的三层检索设计,压缩环节换成本地。