导读:你是否厌倦了每次打开 Claude Code 都要重新介绍项目背景?Claude-Mem 是一个开源插件,能够自动捕获你的编程会话内容,用 AI 压缩后存储,并在下次会话时智能注入相关上下文。目前已获得 17.4k GitHub Stars,成为 Claude Code 生态中最受欢迎的记忆扩展方案。
AI 编程Claude Code记忆系统RAG开源工具
一、痛点:AI 的"金鱼记忆"
使用 Claude Code 编程的开发者都有过这样的体验:
😩 每次新会话,都要重新解释项目结构
😩 昨天修的 Bug,今天 AI 又忘了
😩 上周的讨论结论,这周需要重新说明
😩 Context Window 有限,历史对话被截断
这是因为 大语言模型本身没有持久记忆。每次会话结束,之前的所有对话都会"消失"。下一次会话时,模型对你的项目一无所知。
二、解决方案:Claude-Mem
Claude-Mem 是一个专为 Claude Code 设计的记忆插件,它的核心思路是:
💡 核心机制
1. 自动捕获:每次会话结束时,自动记录 Claude 做了什么
2. 智能压缩:用 AI 压缩这些观察记录,提取关键信息
3. 向量存储:使用 Chroma 向量数据库存储,支持语义搜索
4. 按需注入:新会话开始时,只注入相关的历史上下文
这套方案实现了 约 10 倍的 Token 节省——通过先搜索索引,筛选后再获取完整内容,而不是把所有历史一股脑塞进去。
三、技术架构
Claude-Mem 由六个核心组件构成:
🔧 架构组件
① 生命周期钩子(5个)
SessionStart / UserPromptSubmit / PostToolUse / Stop / SessionEnd
② 智能安装检查器
③ Worker 服务 - HTTP API 运行在 37777 端口
④ SQLite 数据库 - 本地持久化存储
⑤ mem-search 技能 - 自然语言搜索接口
⑥ Chroma 向量数据库 - 语义 + 关键词混合搜索
四、三层搜索模式
Claude-Mem 设计了一套优雅的"渐进式检索"模式:
Layer 1 - search
获取紧凑的索引列表,只返回 ID 和摘要
Layer 2 - timeline
查看时间线上下文,了解历史脉络
Layer 3 - get_observations
根据筛选后的 ID 获取完整详情
这种"先过滤、再获取"的策略,避免了把所有历史记录都塞进 Context Window,大幅节省 Token 消耗。
五、隐私保护
Claude-Mem 提供了细粒度的隐私控制:
🔒 隐私功能
<private> 标签:被标记的内容不会被存储
可配置注入:精细控制哪些上下文被注入
本地存储:所有数据存在本地,不上传云端
六、快速上手
安装只需两行命令:
> /plugin marketplace add thedotmack/claude-mem
> /plugin install claude-mem
重启 Claude Code 后,记忆系统自动生效。你还可以通过 localhost:37777 访问 Web UI 查看器。
📋 环境要求
• Node.js 18.0.0+
• Claude Code(最新版)
• Bun(缺失时自动安装)
• uv(缺失时自动安装)
• SQLite 3(已内置)
七、为什么值得关注
✨ 项目亮点
「17.4k Stars」—— GitHub 社区高度认可
「1.2k Forks」—— 活跃的开发者社区
「22 Contributors」—— 持续的功能迭代
「AGPL-3.0」—— 开源可商用(copyleft)
Claude-Mem 代表了 AI 编程工具的一个重要趋势:让 AI 不再是"无状态"的工具,而是能够积累经验、理解上下文的智能伙伴。
· · ·
如果你正在使用 Claude Code 进行日常开发,Claude-Mem 值得一试。它解决了一个真实的痛点,而且安装配置都非常简单。
项目地址:github.com/thedotmack/claude-mem
技术栈:TypeScript (83.6%) / JavaScript / HTML
开源协议:AGPL-3.0
本文基于 GitHub 项目信息整理