克劳德·恩格拉姆
AI编码助手的持久内存和会话智能。连接到Claude Code的生命周期以自动跟踪错误、决策和上下文,然后挖掘您的完整会话历史以显示模式,预测您需要什么,并搜索您讨论过的所有内容。
无需手动操作。适用于任何兼容MCP的客户端。
它的作用
自动(钩子--零调用):
- 跟踪每个编辑、错误、测试结果和会话事件
- 自动根据提示捕获决策(“让我们使用X”、“切换到Y”)
- 在每次文件编辑之前注入3个最相关的内存
- 当你即将重蹈覆辙时发出警告
- 检测编辑循环(同一文件3次以上没有进度)
- 在上下文压缩中幸存下来——之前检查点,之后重新注入
- 每次会话后在后台挖掘会话历史记录
会话挖掘(自动,后台):
- 每次会话后解析Claude Code的完整对话日志(JSONL),包括子代理对话(Explore、Plan、代码审阅者等)
- 使用结构分析+AllMiniLM语义评分(拼写容忍)提取决策、错误、方法和用户更正
- 在所有过去的对话中构建一个可搜索的索引(20000多个包含子代理的块)
- 检测重复出现的挣扎、错误模式和文件编辑相关性
- 预测编辑前需要哪些文件和上下文
- 反思使用本地LLM综合根本原因和架构见解的模式
- 首次安装时,追溯挖掘您的整个会话历史记录
按需(MCP工具):
memory--存储、搜索、存档和管理内存session_mine--搜索过去的对话,查找决策,回放文件历史记录,检测模式work--用推理记录决策和错误- 另外:范围保护、上下文检查点、约定跟踪、影响分析
运作原理
Claude Code
|
+-- Hooks (remind.py) Extractors -> Search index -> Pattern detection
|
+-- MCP Server (server.py) 修复序列、方法更改),而不是模板匹配。
- **工具内容索引** --bash命令+输出、编辑差异和错误跟踪可以与对话文本一起搜索。
- **批量嵌入** --比通过批处理TCP协议的单个呼叫快22倍。
- **跨会话搜索** --44k+会话块索引,语义+关键字+混合搜索。
- **模式检测** --反复出现的挣扎、错误模式、跨会话的编辑相关性。
- **预测性上下文** --在编辑之前,显示与历史相关的文件和可能的错误。
- **跨项目学习** --聚合所有项目中的模式。
- **回溯式引导** --在首次安装时挖掘所有现有会话历史记录。
- **记分器自动启动** --如果未运行,AllMiniLM服务器将按需启动。没有无声的退化。
### 生命周期
- **自动捕捉决策** --结构模式(确认、重定向、明确选择)+语义评分作为额外奖励。
- **自动跟踪错误** 从任何失败的工具。仅记录项目文件中的错误(过滤瞬态噪声)。重复编辑前发出警告。
- **在压实过程中幸存下来** --带有会话决策/错误的检查点,之后重新注入。检查点和交接是按项目范围进行的。
- **亚智能体意识** --对子代理跳过内存注入和钩子输出(保存上下文),但仍会跟踪文件编辑。
- **编辑循环检测** --当同一文件被编辑3次以上而没有进度时,会标记。
## 配置
|变量|默认值|描述|
|---|---|---|
| `CLAUDE_ENGRAM_MODEL` | `gemma3:12b` |Ollama模型(可选——仅用于搜索、惯例检查)|
| `CLAUDE_ENGRAM_ARCHIVE_DAYS` | `14` |距离非活动记忆存档还有几天|
| `CLAUDE_ENGRAM_SCORER_TIMEOUT` | `1800` |AllMiniLM服务器空闲超时(秒)|
## 重新索引
如果搜索质量差或您想在更新后重建:
python scripts/reindex.py "E:\workspace" --force # rebuild search index python scripts/reindex.py "E:\workspace" --force --extract # also re-extract decisions/mistakes
或通过MCP: `session_mine(operation="reindex", mode="bootstrap")`
## 文档
**[馆藏图书](./library-book/)** -设计理念、内部结构、完整使用指南、API参考、gotchas和changelog。
**`/engram`** --带快速工具参考的slash命令(由安装 `install.py`).
## 许可证
麻省理工学院