乐于分享
好东西不私藏

封神级插件 56.8K+ Star!让Claude Code拥有永久记忆,Token消耗直降95%

封神级插件 56.8K+ Star!让Claude Code拥有永久记忆,Token消耗直降95%

01
开发痛点
使用AI编程助手(如Claude Code、Gemini CLI)进行开发时,四大核心痛点严重影响工作效率,成为开发者的日常困扰:
  • 会话失忆:重启AI助手后,所有项目上下文(bug修复、代码逻辑、对话记录等)完全丢失,需重复补充项目信息,浪费大量时间。
  • 检索低效:过往的bug修复方案、代码实现细节、架构决策无法快速查询,需反复翻找历史会话,影响开发节奏。
  • 隐私无控:敏感内容(API密钥、密码、机密代码)易被默认存储,缺乏有效的过滤和保护机制,存在数据安全风险。
  • Token浪费:无分层上下文管理,大量无关信息占用Token额度,导致使用成本飙升,且无法精准获取所需内容。
02
项目介绍
claude-mem是一款面向Claude Code、Gemini CLI、OpenCode及OpenClaw网关的开源持久化记忆插件,核心作用是实现跨会话上下文无缝保留,让AI助手永久记住项目细节,彻底解决失忆问题。
项目核心信息:
  • GitHub数据:56.8k+星标、4.6k+分支,由Alex Newman(@thedotmack)开发维护,社区活跃度高。
  • 开源协议:采用GNU Affero通用公共许可证v3.0(AGPL-3.0),开源免费,支持个人和商业使用,允许二次开发。
  • 核心原理:自动捕获AI会话中的工具调用记录和上下文信息,通过AI压缩为语义记忆,存入本地SQLite数据库,新会话启动时自动召回,无需手动操作。
  • 兼容性:支持20+种语言,适配Windows、macOS、Linux三大系统,轻量化设计,无侵入性,可无缝嵌入现有开发流程。
  • 依赖支持:内置SQLite 3数据库,缺失的Bun、uv等依赖会自动安装,降低上手门槛。
03
核心功能
claude-mem并非简单的记忆存储工具,而是一套完整的记忆管理系统,核心功能涵盖记忆存储、检索、隐私保护等多个维度,适配开发者多样化需求:
  • 持久化记忆:跨会话保存所有上下文信息,重启AI助手后,无需手动导入,即可自动加载过往会话内容,无缝接续开发工作。
  • 渐进式披露:采用分层记忆检索机制,仅展示当前任务所需的上下文,实时显示Token消耗情况,避免无关信息占用资源和预算。
  • 技能化搜索:内置mem-search技能,支持通过自然语言查询项目历史,可按观察类型(bug修复、功能开发等)、日期、项目进行筛选,几秒内找到所需内容。
  • Web查看器界面:通过http://localhost:37777访问实时记忆流,可可视化浏览所有记忆记录、搜索观察内容、配置系统参数,管理更便捷。
  • Claude桌面端技能:无需切换到Web查看器,可直接在Claude桌面端对话中搜索记忆,提升操作效率。
  • 隐私控制:使用标签包裹敏感内容,可自动排除该部分内容的存储,有效保护API密钥、密码等机密信息,确保数据安全合规。
  • 上下文配置:可精细化控制注入AI会话的上下文内容,自定义观察类型、Token限制等参数,适配不同开发场景。
  • 自动运行:无需手动干预,后台自动完成上下文的捕获、压缩、存储和召回,不干扰正常开发 workflow。
  • 引用追溯:每个观察记录都有唯一ID,可通过http://localhost:37777/api/observation/{id}访问完整细节,便于追溯历史操作。
  • 测试版功能:支持切换测试版通道,体验无尽模式等实验性功能,无尽模式采用仿生记忆架构,可支持超长会话,适配大型项目或多日开发需求。
04
架构解析
claude-mem采用模块化、轻量化设计,兼顾可靠性和可扩展性,核心由六大组件构成,各组件协同工作,实现上下文的捕获、压缩、存储、检索和召回全流程自动化,以下是详细解析:
  • 生命周期钩子:包含5个核心钩子
    (SessionStart、UserPromptSubmit、PostToolUse、Stop、SessionEnd),共6个钩子脚本,可在AI会话的每个阶段自动捕获工具调用记录和上下文信息,为记忆存储提供基础数据。
  • 智能安装脚本:作为预钩子脚本,负责检查缓存的依赖项,自动安装缺失的Bun、uv等组件,确保安装过程快速高效,降低上手门槛。
  • 工作服务:由Bun管理的HTTP API,默认运行在37777端口(可配置),不仅为Web查看器界面提供支撑,还包含10+个搜索端点,是记忆检索和管理的核心枢纽。
  • SQLite数据库:与Claude-Mem捆绑,无需手动安装,主要用于存储会话信息、观察记录和语义压缩后的记忆数据,实现记忆的持久化保存。
  • mem-search技能:核心搜索组件,支持自然语言查询,结合渐进式披露机制,确保检索精准且节省Token,是高效查找历史记忆的关键。
  • Chroma向量数据库:提供混合语义+关键词搜索能力,即使查询用词与记忆内容不完全一致,也能快速匹配到相关观察记录,提升检索灵活性和准确性。
整体数据流程:钩子脚本捕获上下文 → AI压缩为语义记忆 → 存入SQLite数据库 → 工作服务提供检索和召回接口 → 通过Web查看器或mem-search技能实现记忆访问,全程自动化,无需手动干预。
05
MCP搜索工具详解
MCP(记忆控制协议)搜索工具是claude-mem实现高效记忆检索的核心,共包含3种工具,遵循3层工作流程,可最大程度节省Token消耗(最高节省10倍),同时确保检索精准度,适配开发者快速查找历史记忆的需求。
3层工作流程(Token高效检索核心)
  • 搜索(search):获取包含观察ID的紧凑索引,每个结果仅占用50-100个Token,可快速筛选出与查询相关的记忆条目,避免一开始就加载大量无效内容。
  • 时间线(timeline):基于搜索结果,获取特定观察记录的时间顺序上下文,清晰展示该记录前后的相关操作,帮助开发者梳理开发脉络。
  • 获取观察记录(get_observations):仅针对筛选后的有效ID,获取完整的记忆细节,每个结果占用500-1000个Token,避免在无关信息上浪费Token。
核心MCP工具说明
  • search工具:支持全文查询,可按观察类型(bug修复、功能开发、重构等)、日期、项目进行筛选,快速获取相关记忆的索引,是检索流程的第一步。
  • timeline工具:针对特定观察ID或查询关键词,生成时间顺序的上下文,帮助开发者了解该记忆对应的开发场景和前后关联操作,提升检索的关联性。
  • get_observations工具:通过ID批量获取完整的观察记录,建议同时传入多个ID,进一步提升Token使用效率,是获取详细记忆内容的核心工具。
实操使用示例
// 步骤1:搜索相关记忆索引(以“认证bug”为例)search(query="authentication bug"type="bugfix", limit=10)// 步骤2:查看索引,确定相关观察ID(例如:#123、#456)// 步骤3:批量获取相关ID的完整记忆细节get_observations(ids=[123456])

06
最佳实践
为充分发挥claude-mem的功能价值,降低使用成本、提升开发效率,结合官方建议和实际开发场景,总结以下4点最佳实践:
上下文优化实践
聚焦当前开发任务,合理使用隐私控制标签,避免无关内容和敏感信息被存储。对于大型项目,可按模块划分记忆,提升检索效率;同时利用渐进式披露机制,让AI仅加载当前所需上下文,减少Token浪费。
MCP搜索工具使用技巧
遵循“search→timeline→getobservations”的3层检索流程,避免直接使用getobservations工具查询,减少无效Token消耗;查询时尽量明确筛选条件(如类型、日期),提升检索精准度,节省时间。
配置优化建议
根据自身开发环境,合理修改~/.claude-mem/settings.json配置文件:Windows用户需确保Node.js已添加到PATH;端口冲突时及时修改工作服务端口;中文开发者可将CLAUDEMEMMODE设置为“code–zh”,提升使用体验。
版本与功能使用建议
正式开发环境优先使用稳定版,测试版功能(如无尽模式)建议先在测试环境试用,避免影响正式开发;定期清理无用记忆记录,提升检索和召回速度;敏感项目务必使用标签保护机密信息。
07
快速上手
实操步骤清晰易懂,代码可直接复制使用,核心分为系统要求、安装方法、基础使用、注意事项四部分,降低上手门槛,确保快速部署生效。
系统要求
需提前满足以下最低系统要求,缺失的依赖组件会自动安装,无需手动操作:
  • Node.js:18.0.0及以上版本(插件钩子和工作服务运行必需),可从https://nodejs.org下载最新版安装程序。
  • Claude Code:支持插件的最新版本(Claude Code集成必需)
  • Bun:JavaScript运行时和进程管理器(缺失时自动安装)
  • uv:用于向量搜索的Python包管理器(缺失时自动安装)
  • SQLite 3:用于持久化存储(已与Claude-Mem捆绑,无需手动安装)
Windows配置补充说明
若出现“npm : 术语’npm’未被识别为 cmdlet、函数、脚本文件或可运行程序的名称”错误,按以下步骤解决:
  1. 从https://nodejs.org下载最新版Node.js安装程序。
  2. 安装过程中,勾选“将Node.js添加到PATH”选项。
  3. 重启终端,即可应用更改,解决命令无法识别问题。
安装方法(4种适配不同场景)
根据自身使用的开发工具,选择对应安装方式,所有方法均为一键操作,无需复杂配置:
方法1:默认安装(适用于大多数用户)
使用单条npx命令,自动检测环境并配置所有必要组件(插件钩子、工作服务、依赖项):
npx claude-mem install

方法2:适配Gemini CLI的安装
若使用谷歌Gemini CLI,该命令可自动检测Gemini配置(位于~/.gemini目录),实现无缝集成:
npx claude-mem install --ide gemini-cli

方法3:适配OpenCode的安装
针对OpenCode用户,专用命令确保与OpenCode插件系统完全兼容:
npx claude-mem install --ide opencode

方法4:通过Claude Code插件市场安装
无需外部终端,直接在Claude Code聊天界面中运行以下两条命令即可安装:
/plugin marketplace add thedotmack/claude-mem/plugin install claude-mem

OpenClaw网关集成(额外适配)
若运行OpenClaw网关,可通过单条命令将Claude-Mem安装为持久化记忆插件,安装程序端到端处理所有操作:
curl -fsSL https://install.cmem.ai/openclaw.sh | bash

该安装程序会自动完成:安装缺失依赖、配置插件、配置AI提供商、启动工作服务、提供实时观察推送(支持Telegram、Discord等平台)。
常见注意事项
  • 安装完成后,必须重启对应的AI工具(Claude Code、Gemini CLI等),否则插件无法生效。
  • Web查看器默认端口为37777,若端口冲突,可在~/.claude-mem/settings.json文件中修改端口参数。
  • npm install -g claude-mem仅安装SDK/库,无法实现持久化记忆功能,需使用npx claude-mem install或插件市场命令安装。
  • 测试版功能(如无尽模式)需在Web查看器的“设置”中切换版本,建议先在测试环境试用,再用于正式开发。
  • 修改模式或配置后,需重启AI工具,配置才能生效。
开源地址:

https://github.com/thedotmack/claude-mem

08
扩展阅读
关注我持续分享高质量内容

终身学习,深耕AI领域

持续分享,优质AI开源

感谢关注,携手AI同行