Claude-Mem - AI 编程持久化记忆系统
为 Claude Code 打造的持久化记忆压缩系统,自动捕捉工具使用观察并跨会话注入上下文
GitHub: thedotmack/claude-mem (58,128 stars)
2026年4月16日
claude-codememorycontextproductivity
什么是 Claude-Mem?
Claude-Mem 是一个持久化记忆压缩系统,为 Claude Code 设计。它自动捕捉工具使用过程中的观察和洞察,生成语义摘要,并在未来的会话中自动注入这些上下文,让 AI 在项目中保持跨会话的记忆连贯性。
核心价值:解决 AI 编程中的”上下文丢失”问题——每次新会话都是从零开始的困境。
核心特性
| 特性 | 说明 |
|---|---|
| 🧠 持久化记忆 | 跨会话保持上下文 |
| 📊 渐进式披露 | 分层记忆检索,token 消耗可见 |
| 🔍 技能搜索 | 用自然语言查询项目历史 |
| 🖥️ Web Viewer UI | 实时记忆流,访问 http://localhost:37777 |
| 💻 Claude Desktop 技能 | 从 Claude Desktop 对话中搜索记忆 |
| 🔒 隐私控制 | 使用 <private> 标签排除敏感内容 |
| ⚙️ 上下文配置 | 细粒度控制注入哪些上下文 |
| 🤖 自动运行 | 无需手动干预 |
| 🔗 引用系统 | 用 ID 引用历史观察 |
| 🧪 Beta 通道 | 可切换到 Endless Mode 等实验功能 |
工作原理
核心组件
- 5 个生命周期钩子 — SessionStart、UserPromptSubmit、PostToolUse、Stop、SessionEnd
- Worker 服务 — 端口 37777 上的 HTTP API + Web 界面
- SQLite 数据库 — 存储会话、观察、摘要
- mem-search 技能 — 自然语言查询 + 渐进式披露
- Chroma 向量数据库 — 混合语义+关键词搜索
三层搜索工作流
Claude-Mem 提供 4 个 MCP 工具,遵循三层搜索模式:
1. search → 获取紧凑索引(~50-100 tokens/结果)
2. timeline → 获取时间上下文
3. get_observations → 仅对过滤后的 ID 获取完整详情(~500-1000 tokens/结果)
节省约 10 倍 token:先搜索过滤,再获取详情。
快速入门
安装
# Claude Code(推荐)
npx claude-mem install
# Gemini CLI
npx claude-mem install --ide gemini-cli
# OpenCode
npx claude-mem install --ide opencode
# Claude Code 内置 marketplace
/plugin marketplace add thedotmack/claude-mem
/plugin install claude-mem
OpenClaw 集成
curl -fsSL https://install.cmem.ai/openclaw.sh | bash
重启后
重启 Claude Code 或 Gemini CLI,之前的上下文会自动出现在新会话中。
使用场景
场景 1:回忆之前的工作
问题:昨天改了什么来着?
# 在 Claude Code 中查询
> "之前修复了什么认证 bug?"
Claude-Mem 会:
- 搜索记忆索引
- 返回相关历史观察
- 展示完整细节,包括当时的修复方案
场景 2:继续之前的工作
新会话开始时,Claude 会自动收到:
- 项目的整体架构认知
- 最近工作的摘要
- 重要决策的上下文
不再需要重复解释项目背景。
场景 3:跨项目记忆管理
通过 Web Viewer(http://localhost:37777)可以:
- 查看所有项目的记忆摘要
- 搜索特定内容跨越多个项目
- 管理和删除不需要的记忆
场景 4:Beta 通道体验
开启 Endless Mode(生物仿生记忆架构):
- 访问 http://localhost:37777 → Settings
- 切换到 Beta 版本
- 重启 Claude Code
搜索技能详解
search
搜索记忆索引,支持全文查询和类型/日期/项目过滤。
search(query="authentication bug", type="bugfix", limit=10)
timeline
获取特定观察周围的时间上下文。
timeline(observation_id=123)
get_observations
根据 ID 获取完整观察详情(批量)。
get_observations(ids=[123, 456])
配置
配置文件
~/.claude-mem/settings.json(首次运行自动创建)
模式配置
通过 CLAUDE_MEM_MODE 设置工作流模式和语言:
{
"CLAUDE_MEM_MODE": "code--zh"
}
| 模式 | 说明 |
|---|---|
code | 默认英文模式 |
code--zh | 简体中文模式 |
code--ja | 日语模式 |
隐私控制
排除敏感内容
在内容中使用 <private> 标签:
// 这个不会被存入记忆
const apiKey = "<private>sk-xxxx</private>";
与类似工具对比
| 工具 | 开源 | 免费 | 向量搜索 | token 效率 | 平台支持 |
|---|---|---|---|---|---|
| Claude-Mem | ✅ AGPL-3.0 | ✅ | ✅ Chroma | ⭐⭐⭐⭐⭐ | Claude Code |
| OpenClaw Memory | ✅ | ✅ | ✅ | ⭐⭐⭐⭐ | 跨平台 |
| Cursor Memory | ❌ | ✅ | ❌ | ⭐⭐⭐ | 仅 Cursor |
常见问题
Q: 安装后没反应? A: 重启 Claude Code。如果是首次安装,可能需要等待依赖下载。
Q: 如何迁移记忆到新机器?
A: 备份 ~/.claude-mem/ 目录,复制到新机器的相同位置即可。
Q: 如何备份记忆数据库?
A: SQLite 数据库位于 ~/.claude-mem/claude-mem.db,定期复制备份即可。
参考链接
- GitHub: thedotmack/claude-mem
- 官方文档: docs.claude-mem.ai
- 趋势排名: Trendshift