六个钩子接住全部动作:先拿索引再取正文档,省下十倍 token
来源:GitHub — 2026-10-31 · ⭐ 105,782 stars · TypeScript
📋 概述
Claude-Mem 是给 Claude Code 做的持久记忆压缩系统,当前 15.7.0 版本,要求 Node 20 以上,Apache 2.0 授权。它的抓手是 Claude Code 的生命周期钩子:SessionStart、UserPromptSubmit、PreToolUse、PostToolUse、Stop、SessionEnd 各跑一条无 shell 拼接的命令 claude-mem hook claude-code ,由安装器放进 PATH 的小启动器执行。会话里发生的工具调用、观察与摘要落进本地 SQLite,另用 Chroma 向量库做语义加关键词的混合检索;一个常驻的本地 HTTP 服务提供网页查看器与搜索端点,进程由 Bun 管理。对外是三个 MCP 工具,按三层流程取数。
🔑 核心要点
- 钩子只做一件事:六个生命周期各跑一条 claude-mem hook claude-code ,没有 shell 字符串拼接,安装器负责把启动器放上 PATH。
- 三层取数省 token:search 先返回 50 到 100 token 一条的紧凑索引,timeline 补时间线上下文,get_observations 只对筛过的 ID 取 500 到 1000 token 的详情,官方说约省十倍。
- 双库分工明确:SQLite 存会话、观察与摘要,Chroma 做语义加关键词混合检索,不是二选一。
- 接口不止一种 harness:仓库明确列出 Claude Code、OpenClaw、Codex、Gemini、Hermes、Copilot、OpenCode 等入口。
- 记忆留在本机:本地 HTTP API 带网页查看界面与搜索端点,服务在 127.0.0.1 上,由 Bun 托管进程。
💡 金句
Persistent memory compression system built for Claude Code.
👍 0
👎 0
← 返回 GitHub Trending 首页