TL;DR
Claude-Mem 是一个为 Claude Code 及多种 AI IDE(如 OpenCode、T3 Code)设计的持久化记忆插件。它通过拦截生命周期 Hook 捕获 Agent 行为,利用本地 Worker 服务进行语义压缩与检索,解决 AI Coding Assistant 在会话断开后丢失上下文的关键痛点。
它解决什么问题
LLM Agent(尤其是代码助手)的核心缺陷在于“失忆”。每次新会话启动,Agent 都需重新理解项目结构、历史决策和技术债。虽然 RAG(检索增强生成)概念已普及,但在本地 IDE 插件层面实现低延迟、高保真的记忆注入仍具挑战。Claude-Mem 的出现旨在填补这一空白,通过自动捕获工具调用、代码修改和决策日志,构建可跨会话检索的项目知识图谱。
核心做法
架构上采用“Hook + Worker”模式: 1. 数据捕获:注册 5-6 个生命周期 Hook(SessionStart, UserPromptSubmit, PostToolUse 等),实时捕获 Agent 的操作观察值(Observations)。 2. 本地服务:使用 Bun 运行一个 HTTP Worker,管理 SQLite(存储原始数据)和 ChromaDB(向量索引),提供混合搜索能力。 3. 记忆压缩:利用 AI 对捕获的原始日志进行语义摘要,而非简单存储全文。 4. 渐进式披露:通过 MCP 工具实现三层检索工作流(Search -> Timeline -> Get Observations),显著降低 Token 消耗,仅在必要时加载详细上下文。
作者
eOwner thedotmack (Alex Newman) 是该项目的主要维护者。README 未提供其详细的过往职业履历,但项目明确标注基于 Claude Agent SDK 构建,且作者积极参与社区运营(拥有官方 Discord 和 X 账号)。项目已获得 Vercel OSS Program、Greptile 等知名技术社区的支持,显示出一定的行业认可度。
社区反应
截至数据抓取时,该项目 Stars 数高达 ~98.5k,Forks ~8.6k,增长曲线极为陡峭(Trendshift 徽章显示其处于热门上升期)。Open Issues 为 112,相对于 Star 数而言比例较低,表明核心功能相对稳定或用户容忍度较高。TypeScript 为主语言,生态兼容性好。鉴于其极高的 Star 数,这已不是一个 MVP 项目,而是拥有庞大用户基础的成熟插件。
怎么上手
环境要求:Node.js >=20.0.0,Bun(自动安装),SQLite 3。
最小复现步骤:
1. 安装:在 Claude Code 中运行 /plugin marketplace add thedotmack/claude-mem,或终端执行 npx claude-mem install --ide <your-ide>。
2. 配置:安装后会自动引导浏览器登录以获取 Memory Key(可选,也可使用本地 Provider 跳过)。
3. 验证:重启 IDE。新会话中,Agent 应能自动引用之前的项目上下文。
4. 搜索:使用内置的 mem-search Skill 或 MCP Tools (search, timeline) 查询历史记忆。
争议与局限
- 隐私风险:虽然支持
<private>标签,但默认行为是将代码和决策上传至云端(CMEM Pro)或本地 Worker。对于企业级敏感代码,需仔细审查数据流向。 - 侵入性:通过 Hook 机制深度集成,可能影响 IDE 性能或与其他插件冲突(README 提及了 Windows PATH 等兼容性问题)。
- 依赖绑定:目前主要深度优化 Claude Code,对其他 IDE 的支持(如 OpenCode、T3 Code)虽已覆盖但可能不如原生体验稳定。
- Token 成本:尽管有压缩机制,长期运行的项目记忆库可能导致检索 Token 开销累积。
相关项目
- Mem0 — 通用的 Agent Memory Layer,支持多种 LLM Provider,更偏向云端 API 服务而非本地 IDE 插件。
- OpenMemory — 开源的长期记忆解决方案,强调去中心化和用户数据主权,架构更复杂。
- Supermemory — 专注于代码库的语义索引和检索,通常作为独立服务运行,与 IDE 集成方式不同。
- Cline — 另一个流行的 Claude Code 插件,主要关注自动化执行任务,记忆功能不如 Claude-Mem 系统化。
- Aider — 基于 Git diff 的轻量级 AI 编程助手,记忆依赖本地文件结构,缺乏语义压缩和跨会话检索。