1. 项目定位与用途
Claude-Mem 是专为 Claude Code 及兼容 AI 编码助手设计的持久内存压缩插件。其核心用途是自动捕获编码会话期间的所有操作、工具调用和对话内容,利用 AI 技术(基于 Claude Agent SDK)对捕获的长上下文进行智能压缩,形成可重用的记忆片段,并在未来的编码会话中根据当前任务智能检索并注入相关记忆,从而实现跨会话的上下文连续性。该项目不仅是一个工具,更是一个旨在提升 AI 辅助开发效率的上下文管理系统,支持多平台适配,为不同编码环境提供一致的持久记忆体验。
2. 核心问题与解决方案
AI 编码助手(如 Claude Code)在每次会话结束后会丢失上下文,导致用户需要在每次新会话中重复解释项目背景、目标和历史决策,严重影响开发效率。Claude-Mem 通过三个核心步骤解决此问题:首先在会话期间自动捕获所有操作、工具调用和对话内容;其次在会话结束时使用 AI 压缩技术将长上下文提炼为关键记忆;最后在后续会话开始时,根据当前任务智能检索并注入相关记忆,使 AI 能够'记住'之前的讨论和决策,从而消除重复工作,保持开发流程的连贯性。
3. 适用场景
Claude-Mem 主要适用于以下场景:使用 Claude Code 进行日常开发,希望保持跨会话的上下文连续性;在多个编码会话中处理同一项目或相关任务,需要共享项目知识和背景信息;团队协作环境中,希望 AI 能够记住项目约定、技术决策和架构 rationale;同时,通过平台适配器,也为使用 Cursor、Gemini CLI、Windsurf 等工具的开发者提供相同的持久记忆能力。项目特别适合长期项目、复杂系统维护、重构任务以及任何需要深度上下文理解和记忆累积的编码工作。
4. 安装方式
Claude-Mem 的安装需要满足环境要求:Node.js >=18.0.0 或 Bun >=1.0.0。安装方式为通过 npm 全局安装包名 `claude-mem`。安装后,Claude Code 插件文件位于 `plugin/.claude-plugin` 目录,Claude Code 可自动检测并加载。对于其他平台(如 Cursor),需要参考 `cursor-hooks/` 目录下的集成文档(如 STANDALONE-SETUP.md、INTEGRATION.md)进行手动配置。仓库中未明确给出具体的安装命令示例,但基于 package.json 的 bin 字段,典型安装命令应为 `npm install -g claude-mem`。
5. 使用方式
Claude-Mem 的主要使用方式为:在 Claude Code 中启用插件后即可自动工作,无需额外配置。插件会在会话开始时自动注入相关上下文,在会话期间捕获观察和操作,在会话结束时生成压缩记忆。对于其他平台,需通过对应的适配器集成,如 Cursor 需安装 hooks,Gemini CLI 和 Windsurf 有各自的适配器。项目提供 CLI 工具 `claude-mem`,可能支持手动触发记忆操作。事件驱动架构处理 `session-init`、`observation`、`summarize`、`session-complete` 等事件,具体命令和参数在仓库中未完全明确给出,需参考 docs/public/ 目录下的详细文档。
6. 实现特点与架构
Claude-Mem 采用高度模块化的架构设计。核心模块包括:CLI 适配器层支持多平台(claude-code、cursor、gemini-cli、windsurf、raw);事件处理器层管理会话生命周期事件;SDK 提供公共 API 供外部集成;上下文服务负责记忆生成与检索;基础设施服务处理存储、压缩、进程管理和健康监控;Worker 服务处理知识图谱构建和搜索。技术栈使用 TypeScript,目标模块为 ESNext,输出目录为 dist。项目支持 MCP(Model Context Protocol)集成,具有高度可扩展性,并通过 AGPL-3.0 许可证开源。架构文档位于 docs/public/architecture/ 目录。