Token导航 LogoToken导航TokenDH.com
Claude Total Memory logo
数据服务stdio官方级别未说明来源级核验

Claude Total Memory

MCP Server

为AI编程代理提供本地持久化记忆功能,支持知识图谱构建、跨项目类比和代码库分析,适用于长期开发协作场景。

工具数

58

提示词数

0

GitHub Stars

34

资源数

0
PythonClaude数据分析ClaudeCursorWindsurfCline

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

vbcherepanov

提供方

vbcherepanov

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m scripts.reembed --backend openai-3-large --confirm

详细介绍

总代理内存

唯一能学习的记忆层 _怎么_ 你不仅工作 _什么_ 你说的。 用于AI编码代理的持久本地内存:Claude Code、Codex CLI、Cursor、任何MCP客户端。 时态知识图·过程记忆·AST代码库摄取·跨项目类比·3D WebGL可视化。

](<>) ![Tests](<>) ![IDEs](<>) ![LongMemEval R@5](evals/longmemeval-2026-04-17.json) ![LoCoMo Acc](benchmarks/results/) ![vs Supermemory](docs/vs-competitors.md) ![p50 latency](evals/results-2026-04-17.json) ![Local-First](<>) ![License](LICENSE) ![MCP](https://modelcontextprotocol.io) ](https://www.npmjs.com/package/@vbch/total-agent-memory-client) ![Donate](https://PayPal.Me/vbcherepanov)

为什么不是mem0/Letta/Zep/Supermemory/Cognie?docs/v-competitors.md

______________________________________________________________________

v11.1——图形去重+主动保存提示

修复了两个客户端报告的错误(2026-05-14):

Bug#1——孤儿+重复 graph_nodes. 图表累积 案例变量重复(Vue / vue / VUE)类型碰撞 重复(vue/concept vs vue/technology 由不同 提取器),以及在两者之后边缘插入失败时的孤立节点 节点已提交。通过迁移修复 026_graph_nodes_dedup (name_norm 列、触发器、索引),不区分大小写的UPSERT 重写 add_node 利用类型碰撞检测,一种新的原子 GraphStore.link_pair() 助手和一次性清理工具 src/tools/merge_duplicate_nodes.py (默认情况下为干运行)。

# After upgrade migration 026 applies automatically. Then optionally:
.venv/bin/python src/tools/merge_duplicate_nodes.py --dry-run
.venv/bin/python src/tools/merge_duplicate_nodes.py --apply --add-unique

在真实的生产数据库(8304个节点)上验证:合并了102个重复项, 清洁1472个陈旧边缘,安装UNIQUE约束。

Bug#2——模型从不调用 memory_save 靠自己。 十四行诗/俳句 当SessionStart上下文消失时,跳过优先级-10保存规则。v11.1 添加会话 轻推:柜台 ~/.claude-memory/state/ 跟踪每个会话的写入与保存,以及 hooks/post-tool-use.{sh,ps1} 发出一条stdout行,Claude将其作为下一个系统上下文读取 转身。软轻推3次编辑,保存0次,硬轻推7次 MEMORY_FINAL_WARNING 在会话停止时。新的优先级10规则 指示模型进行处理 MEMORY_NUDGE 作为即时命令。

可调: MEMORY_NUDGE_DISABLE=1 沉默; MEMORY_NUDGE_SOFT / _HARD / _STEP 重新调谐(默认值 3 / 7 / 3).

测试覆盖率:+24个图形测试,+12个微调测试。详细信息请参见 CHANGELOG.md.

______________________________________________________________________

v11.0——生产内存引擎

v11.0=生产内存引擎:快速确定性内存核心+异步AI富集层。默认模式为 fast:保存/搜索/调用热路径中的LLM为零,Ollama为零,网络为零。

代码库现在分为两层:

  • **src/memory_core/*** --确定性外观模块(存储、嵌入、向量存储、分类器、分块器、去重、缓存、图形链接、遥测、健康、嵌入空间)。不允许LLM进口。被强迫 tests/test_no_llm_hot_path.py.
  • **src/ai_layer/*** --每个LLM接触路径(丰富工作器、总结器、关键字提取器、问题生成器、关系提取器、矛盾检测器、反射、自我改进,以及用于质量/核心解析器/重新排序器/查询编写器的薄垫片)。禁止使用memory_core。

架构细节和完整的热路径审计: docs/v11/audit.md.

模式

MEMORY_MODE 选择运行时配置文件。默认值为 fast.

|模式|热路径LLM |异步富集|重新排序|嵌入回退|使用时| |---|:-:|:-:|:-:|:-:|---| | ultrafast |off|off|off|仅限FastEmbed(矢量索引关闭,仅限FTS)|吞吐量压力/CI| | fast (默认)| | | | 仅限快速嵌入,Ollama后备门控 | 生产编码剂回路 | | balanced |关闭(同步)| |off |仅限FastEmbed |您需要LLM派生的刻面,但从不在关键路径上| | deep |on(同步)| on | on(当 rerank=true)|快速嵌入→ Ollama梯形图| v10.5行为:质量门/矛盾/核心/HyDE内联|

deep 模式精确地再现了v10.5.0的默认值。集 MEMORY_MODE=deep 如果你依赖于同步质量门、矛盾检测器或coref。 balanced 保持了相同的人体工程学,但将丰富性从线上移开。

从v10.5迁移: docs/v11/MIGRATION-FROM-V10.md.

v11.0热路径基准测试

温暖的内存SQLite,MacBook M系列, MEMORY_MODE=fast, MEMORY_ALLOW_OLLAMA_IN_HOT_PATH=false:

度量p50p95p99
save_fast6.59.027.8
save_fast 缓存0.30.41.1
search_fast3.74.06.2
cached_search0.00.00.0

llm_calls = 0, network_calls = 0 在整个热路径上。复制: bin/memory-bench.CI门: bin/memory-perf-gate.原始工件: docs/v11/benchmark.md.

v10.5→ v11.0——相同的工作负载,相同的脚本

v10.5原生长凳(benchmarks/v10_5_latency.py)在v11上相对于记录的v10.5基线快速重新运行(benchmarks/results/v10_5_latency.json):

指标v10.5同步(带LLM)v11.0快速加速
保存p952150.51毫秒8.51毫秒252×
保存p992178.98毫秒11.09毫秒196×
召回p951424.26毫秒5.81毫秒245×
召回p991771.70毫秒6.75毫秒262×
LLM调用/保存2-40gate
网络呼叫/保存1-30

与v10.5相比 _没有_ LLM23.3 ms p95)v11快速 2.7× 更快——在快速模式下,仅确定性阶段(质量状态探测、矛盾候选获取、偶发事件创建、project_wiki刷新)现在完全绕过,仅在以下情况下排队 MEMORY_ENRICHMENT_ENABLED=true.

召回质量得以保留:在30个问题的样本中,LongMemEval R@5=100%;混合检索(FTS5+密集+RRF+基础图)与v10.5相同,除了HyDE/analyze_query LLM扩展是通过选择加入的 MEMORY_MODE=deep。参见 docs/v11/benchmark.md 包括LoCoMo和每空间嵌入负载特性的完整表格。

v11.0中的新MCP工具

memory_save_fast · memory_search_fast · memory_explain_search · memory_warmup · memory_perf_report · memory_rebuild_fts · memory_rebuild_embeddings · memory_eval_locomo · memory_eval_recall · memory_eval_temporal · memory_eval_entity_consistency · memory_eval_contradictions · memory_eval_long_context

所有以前的工具名称(memory_save, memory_recall, ...)继续工作不变。

多嵌入空间契约

现在,每个矢量行都会记录 embedding_provider / embedding_model / embedding_dimension / embedding_space / content_type / language空格: text / code / log / config单色后端;每空间模型交换是一次环境翻转:

MEMORY_TEXT_EMBED_MODEL=sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
MEMORY_CODE_EMBED_MODEL=jinaai/jina-embeddings-v2-base-code   # optional
MEMORY_LOG_EMBED_MODEL=                                       # falls back to TEXT
MEMORY_CONFIG_EMBED_MODEL=                                    # falls back to TEXT

旧块在其空间中保持可搜索状态;新的块会拾取交换的模型。通过以下方式一次回填一个空间 memory_rebuild_embeddings.

以下v10.x部分保留为 遗留v10.5行为 --仍然可以通过 MEMORY_MODE=deep日期为2026-04-19/2026-04-25/2026-04-27(v10)的数字、屏幕截图和基准块描述了深度模式管道。v11替换 *默认值*,而不是能力。

______________________________________________________________________

目录

______________________________________________________________________

它解决的问题

AI编码剂有健忘症。 每个新的克劳德代码/代码/光标会话都从零开始。昨天的架构决策、错误修复、堆栈选择和来之不易的经验教训在您关闭终端的那一刻就消失了。你重新解释同样的事情,重新发现同样的解决方案,将同样的上下文粘贴到每个新的聊天中。

total-agent-memory 给代理一个持久的大脑——在你的机器上,而不是在别人的云中。

每个决策、解决方案、错误、事实、文件更改和会话摘要都是:

  • 捕获 --明确通过 memory_save 或者通过文件编辑/bash错误/会话结束上的钩子隐式执行
  • 链接 --自动提取到知识图中(实体、关系、时间事实)
  • 可搜索 --6级混合检索(BM25+密集+图+交叉编码器+MMR+RRF融合), 公共LongMemEval上的R@5为96.2%
  • 私人 --100%本地。SQLite+快速嵌入+可选Ollama。没有数据离开你的机器。

______________________________________________________________________

60秒演示

You:     "remember we picked pgvector over ChromaDB because of multi-tenant RLS"
Claude:  ✓ memory_save(type=decision, content="Chose pgvector over ChromaDB",
                       context="WHY: single Postgres, per-tenant RLS")

[3 days later, different session, possibly different project directory:]

You:     "why did we pick pgvector again?"
Claude:  ✓ memory_recall(query="vector database choice")
         → "Chose pgvector over ChromaDB for multi-tenant RLS. Single DB
            instance, row-level security per tenant."

这不仅仅是检索。这也是程序性的:

You:     "migrate auth middleware to JWT-only session tokens"
Claude:  ✓ workflow_predict(task_description="migrate auth middleware...")
         → confidence 0.82, predicted steps:
             1. read src/auth/middleware.go + tests
             2. update session fixtures in tests/
             3. run migration 0042
             4. regenerate OpenAPI spec
           similar past: wf#118 (success), wf#93 (success)

______________________________________________________________________

基准——如何比较

公共LongMemEval基准 (xiaowu0162/longmemeval清洁,470个问题,每个人都发布的数据集):

                   R@5 (recall_any) on public LongMemEval
                   ─────────────────────────────────────────
  100% ─┤
        │
  96.2% ┤  ████  ← total-agent-memory v7.0  (LOCAL, 38.8 ms, MIT)
  95.0% ┤  ████  ← Mastra "Observational"    (cloud)
        │  ████
        │  ████
  85.4% ┤  ████  ← Supermemory                (cloud, $0.01/1k tok)
        │  ████
        │  ████
        │  ████
   80%  ┤  ████
        └──────────────────────────────────────────

可复制性: evals/longmemeval-2026-04-17.json ·跑步者: benchmarks/longmemeval_bench.py

按问题类型细分(R@5 recall_any)

问题类型计数我们的R@5
知识更新72100.0%
单会话用户64100.0%
多会话12196.7%
单次会话助理5696.4%
时间推理12795.3%← 双时间KG回报丰厚
单会话偏好3080.0%← 最薄弱的环节
总计47096.2%

LoCoMo基准测试(v9中的新功能)

公共LoCoMo基准 (快照研究/机车,1986年,在10个长时间运行的对话中进行QA,数据集Mem0/Memobase/Zep/MemMachine发布):

              LoCoMo Acc (overall, no adversarial)
              ─────────────────────────────────────
  85% ─┤  ████  ← MemMachine        (commercial)
       │  ████
  80%  ┤  ████
       │  ████
  75%  ┤  ████  ← Memobase
       │  ████  ← Zep / Graphiti
       │  ████
  70%  ┤  ████
       │  ████
  67%  ┤  ████  ← Mem0
       │  ████
       │  ████  ← total-agent-memory v9.0  (LOCAL, MIT, gpt-4o-mini)
  60%  ┤  ████
  59%  ┤  ████  ← total-agent-memory (0.596)
       │  ████  ← LangMem (0.581)
  55%  ┤  ████
       └──────────────────────────────────────────
排名系统总体(无优势)许可证
1MemMachine0.849商用
2备忘录0.758Apache-2.0
3Zep/Graphiti0.751Apache-2.0
4模00.669阿帕奇-2.0
5总代理内存v9.00.596麻省理工学院
6长Mem0.581MIT

按类别细分(v9.0,gpt-4o-mini-gen+judge):

类别NAccR@5
1--单跳2820.4430.514
2--时间3210.5640.717
3--多跳960.4900.385
4--开放域8410.6610.601
5--对抗性4460.998 ← 我们领先0.421
总体(无优势)15400.5960.622

我们在对抗性方面领先(0.998 vs Memobase 0.90) 这要归功于法官加权合奏+弃权逻辑。前三名领导者通过主题感知的个人资料检索在猫1/2上获胜——这是我们的v10目标。

可复制性: benchmarks/results/v9_diag_v1_*.json ·跑步者: benchmarks/locomo_bench_llm.py (15个消融标志)。gpt-4o-mini的成本:1986年整个QA运行的成本约为5美元,集成=3。

延迟配置文件

  p50 (warm)   ▌ 0.065 ms
  p95 (warm)   ▌▌ 2.97 ms
  LongMemEval  ▌▌▌▌▌ 38.8 ms/query   ← includes embedding + CrossEncoder rerank
  p50 (cold)   ▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌▌ 1333 ms  ← first query after process start

温/冷可重复 evals/results-2026-04-17.json.

______________________________________________________________________

竞争对手比较

我们不是在替换聊天机器人的内存,而是在占用 编码代理+MCP+本地 利基市场。

||mem0|Letta|Zep|超级记忆|Cognee|LangMem| 总代理内存 | |---|:-:|:-:|:-:|:-:|:-:|:-:|:-:| |资金/状态|2400万美元YC | 1000万美元种子| 1200万美元种子|260万美元种子|| 750万美元种子|1angChain |自筹OSS| |100%本地运行|🟡 | ✅ | 🟡 | ❌ | 🟡 | 🟡 | | |MCP原生|通过SDK |❌ | 🟡 图形|🟡 | ❌ | ❌ | ✅ 60+工具 | |知识图谱|🔒 $249/月|❌ | ✅ | ✅ | ✅ | ❌ | | | 时间事实 (kg_at) | ❌ | ❌ | ✅ | ❌ | 🟡 | ❌ | | | 程序记忆 | ❌ | ❌ | ❌ | ❌ | ❌ | 🟡 | workflow_predict | | 跨项目类比 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | analogize | | 自我完善的规则 | ❌ | ❌ | ❌ | ❌ | 🟡 | ❌ | learn_error | | AST代码库摄取 | ❌ | ❌ | ❌ | ❌ | 🟡 | ❌ | ✅ 树保姆9郎 | | 预先编辑风险警告 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | file_context | |3D WebGL图形查看器|❌ | ❌ | 🟡 | ✅ | ❌ | ❌ | | |图表功能的价格|249美元/月|免费|云|使用|免费|免费| 自由 |

与定价、延迟、准确性、“何时选择每一项”完全并列→ docs/v-competitors.md.

______________________________________________________________________

你得到了什么

其他人无法提供的八种能力

能力工具单行
🧠 程序记忆workflow_predict / workflow_track“上次我是怎么解决的?”——自信地预测步骤
🔗 跨项目类比analogize“在另一个回购中有类似的东西吗?”——Jaccard+Dempster Shafer
⚠️ 预先编辑风险警告file_context显示您要编辑的文件上过去的错误/热点
🛡 自我完善的规则learn_error + self_rules_contextBash失败→ 模式→ N≥3时的自动合并行为规则
🕰 时间事实kg_add_fact / kg_at仅添加KG valid_from/valid_to --随时询问什么是真的
🎯 任务工作流阶段classify_task / phase_transition自动L1-L4复杂性分类,跨货车/计划/创意/构建/反映/归档的状态机
🧩 结构化决策save_decision选项+标准矩阵+基本原理+丢弃→ 基于标准嵌入的可搜索决策记录
💸 令牌高效检索memory_recall(mode="index") + memory_get三层工作流:紧凑的ID→ 时间线→ 分批全取。在典型查询中节省约83%的令牌

此外,基础知识做得很好

  • 6级混合检索 (BM25+密集+模糊+图形+交叉编码器+MMR、RRF融合)--96.2%R@5公开
  • 多表示嵌入 --每条记录都嵌入为原始+摘要+关键字+问题+压缩
  • AST代码库摄取 --跨9种语言(Python、TS/JS、Go、Rust、Java、C/C++、Ruby、C#)的树形图
  • 自动反射管道memory_save → LaunchAgent文件监视→ 图形边在约30秒后出现
  • rtk风格的内容过滤器 --从pytest/cargo/git/docker日志中去除噪声,同时保留URL、路径和代码
  • 3D WebGL知识图查看器 --3500+节点,120000+边,点击聚焦,过滤器
  • 蜂巢图和邻接矩阵 --按节点类型排序的备选图形视图
  • A2A协议 --多个代理之间共享内存(团队中的后端+前端+移动)
  • design-explore 技能 --输入克劳德代码技能,引导L3-L4任务完成选项→ 标准矩阵→ save_decision 代码之前(参见 examples/skills/design-explore/SKILL.md)
  • **`

... ` 内联编辑** 在任何已保存的内容中

  • 云LLM/嵌入提供商 具有每相路由(OpenAI/Anthropic/OpenRouter/Together/Groq/Cohere/任何OpenAI兼容)
  • activeContext.md 黑曜石投影 用于人类可读的会话状态
  • 阶段范围规则 (self_rules_context(phase="build"))--代币减少约70%

______________________________________________________________________

建筑

                  ┌─────────────────────────────────────────────────┐
                  │             Your AI coding agent                │
                  │   (Claude Code · Codex CLI · Cursor · any MCP)  │
                  └──────────────────────┬──────────────────────────┘
                                         │ MCP (stdio or HTTP)
                                         │ 60+ tools
                  ┌──────────────────────▼──────────────────────────┐
                  │            total-agent-memory server             │
                  │    ┌──────────────┐  ┌────────────────────┐     │
                  │    │ memory_save  │  │  memory_recall      │     │
                  │    │ memory_upd   │  │  6-stage pipeline:  │     │
                  │    │ kg_add_fact  │  │  BM25  (FTS5)       │     │
                  │    │ learn_error  │  │  + dense (FastEmbed)│     │
                  │    │ file_context │  │  + fuzzy            │     │
                  │    │ workflow_*   │  │  + graph expansion  │     │
                  │    │ analogize    │  │  + CrossEncoder †   │     │
                  │    │ ingest_code  │  │  + MMR diversity †  │     │
                  │    └──────┬───────┘  │  → RRF fusion       │     │
                  │           │          └──────────┬──────────┘     │
                  └───────────┼─────────────────────┼────────────────┘
                              │                     │
                  ┌───────────▼─────────────────────▼────────────────┐
                  │                   Storage                         │
                  │  ┌────────────┐  ┌────────────┐  ┌─────────────┐ │
                  │  │  SQLite    │  │  FastEmbed │  │   Ollama    │ │
                  │  │  + FTS5    │  │  HNSW      │  │  (optional) │ │
                  │  │  + KG tbls │  │  binary-q  │  │  qwen2.5-7b │ │
                  │  └────────────┘  └────────────┘  └─────────────┘ │
                  └───────────────────────────────────────────────────┘
                              │
                              │ file-watch + debounce
                  ┌───────────▼────────────────────────────────────┐
                  │  Auto-reflection pipeline  (LaunchAgent)        │
                  │  triple_extraction → deep_enrichment → reprs   │
                  │  (async, 10s debounce, drains in background)   │
                  └─────────────────────────────────────────────────┘
                              │
                  ┌───────────▼─────────────────────────────────────┐
                  │  Dashboard (localhost:37737)                     │
                  │   /           - stats, savings, queue depths   │
                  │   /graph/live - 3D WebGL force-graph           │
                  │   /graph/hive - D3 hive plot                   │
                  │   /graph/matrix - adjacency matrix             │
                  └─────────────────────────────────────────────────┘

  † CrossEncoder + MMR are on-demand via `rerank=true` / `diverse=true`

______________________________________________________________________

安装

两条路。相同的60多种工具,相同的仪表板,不同的部署形状。

IDE矩阵(v10.5)

相同的MCP服务器、相同的工具、相同的协议——不同的安装 每个IDE的位置和挂钩接线。安装程序(install.sh --ide ) 将所有这些自动化。

|IDE | Skill API | Hook API | Sub-agents | Install命令| |---|:-:|:-:|:-:|---| |克劳德代码|✅ | ✅ 满|✅ | ./install.sh --ide claude-code | |Codex CLI |✅ | ✅ | ❌ | ./install.sh --ide codex | |光标|规则窗格|❌ | 作曲家| ./install.sh --ide cursor | |Cline(VS代码)| .clinerules/ | ❌ | ❌ | ./install.sh --ide cline | |继续|规则文件|❌ | ❌ | ./install.sh --ide continue | |助手| .aider.conf.yml 阅读|❌ ¹ | ❌ | ./install.sh --ide aider | |风帆冲浪| .windsurfrules | ❌ | 级联| ./install.sh --ide windsurf | |Gemini CLI| .gemini/rules/ | ⚠️ 部分|❌ | ./install.sh --ide gemini-cli | |OpenCode| .opencode/skills/ | ✅ | 定制| ./install.sh --ide opencode |

¹Aider还没有MCP——大桥已经开通 lookup_memory.sh / save_memory.sh shell脚本。

完整的IDE设置、手动回退和模板片段: skills/memory-protocol/references/ide-setup.md.

平台矩阵

操作系统命令后台服务
macOS 10.15+./install.sh --ide claude-codeLaunchAgent(launchctl)
Linux(Ubuntu 22.04+,Debian 12+,Fedora 38+)./install.sh --ide claude-code系统d --user
WSL2(Windows 11+Ubuntu/Debian)./install.sh --ide claude-code系统d --user --要求 /etc/wsl.conf 随着 [boot] systemd=true;否则退回到shell循环自动启动
Windows 10/11本机.\install.ps1 -Ide claude-code任务调度器

完整的每平台演练,WSL2 Windows主机与WSL IDE的细微差别 wsl -e MCP命令模式、IDE覆盖矩阵和卸载/诊断 流量: docs/installation.md.

路径A--本机(macOS/Linux/WSL2)

git clone https://github.com/vbcherepanov/claude-total-memory.git ~/claude-memory-server
cd ~/claude-memory-server
bash install.sh --ide claude-code   # or: cursor | gemini-cli | opencode | codex

安装程序:

  1. 克隆+创建 ~/claude-memory-server/.venv/
  2. 安装日期 requirements.txtrequirements-dev.txt
  3. 预下载FastEmbed多语言MiniLM模型
  4. 通过注册MCP服务器 claude mcp add-json memory ... (存储在 ~/.claude.json,规范存储Claude Code实际读取)
  5. 副本 所有钩子 (session-*, user-prompt-submit.sh, post-tool-use.sh, pre-edit.sh, on-bash-error.sh等)进入 ~/.claude/hooks/ 并将其注册在 ~/.claude/settings.json
  6. 拨款 permissions.allow 20+ mcp__memory__* 工具,因此钩子驱动的调用不会提示确认
  7. 安装 后台服务 对于当前操作系统:

- macOS --4个发射代理(reflection, orphan-backfill, check-updates, dashboard)under ~/Library/LaunchAgents/ - Linux/WSL2 --7系统d --user 单位(*.service, *.timer, *.path)under ~/.config/systemd/user/;如果满足以下条件,则会优雅地降级 systemd --user 不可用(WSL不可用 /etc/wsl.conf)

  1. 将所有迁移应用于新的 memory.db
  2. 在以下位置启动仪表板 http://127.0.0.1:37737

重新启动Claude代码→ /mcpmemory 应显示 连接 60多种工具。

路径A--本机(Windows 10/11)

git clone https://github.com/vbcherepanov/claude-total-memory.git $HOME\claude-memory-server
cd $HOME\claude-memory-server
powershell -ExecutionPolicy Bypass -File install.ps1 -Ide claude-code

与Unix相同的9个步骤,但:

  • MCP配置路径为 %USERPROFILE%\.claude\settings.json (或 .cursor\mcp.json等等)
  • 钩子复制到 %USERPROFILE%\.claude\hooks\.ps1 版本(自动捕获、内存触发、用户提示提交、工具使用后、预编辑、bash错误、会话开始/结束、停止、codex通知)
  • 后台服务通过 任务计划程序:

- total-agent-memory-reflection --每5分钟一次(没有等效的本地FileSystemWatcher) - total-agent-memory-orphan-backfill --每日00:00+6小时重复 - total-agent-memory-check-updates --每周周一09:00 - ClaudeTotalMemoryDashboard --atlogon

卸载

所有安装人员保留 ~/.claude-memory/memory.db 以及您的配置文件;仅删除服务+钩子注册。

./install.sh --uninstall          # macOS/Linux/WSL2 — removes LaunchAgents OR systemd units
.\install.ps1 -Uninstall          # Windows — unregisters Scheduled Tasks + cleans settings.json

诊断

一次性健康检查——打印✓/✗ 对于每个子系统(操作系统检测、venv、MCP导入、服务、仪表板HTTP、Ollama、数据库迁移):

bash scripts/diagnose.sh          # macOS / Linux / WSL2
.\scripts\diagnose.ps1            # Windows

退出代码0=全绿,1=有东西坏了。

路径B——Docker(一切容器化,跨平台)

git clone https://github.com/vbcherepanov/claude-total-memory.git
cd claude-total-memory
bash install-docker.sh --with-compose

介绍5项服务:

服务角色已暴露
mcpMCP服务器(HTTP传输)127.0.0.1:3737/mcp
dashboardWeb用户界面127.0.0.1:37737
ollama本地LLM运行时127.0.0.1:11434
reflection文件监视队列排水器内部
scheduler奥菲莉娅·克戎(回填+更新检查)内部

首轮拉单 qwen2.5-coder:7b (约4.7 GB)+ nomic-embed-text (~275 MB)-5-10分钟冷启动。

GPU注意事项: macOS上的Docker Desktop不支持Metal。Mac上的原生安装速度更快。在Linux上使用NVIDIA容器工具包,取消注释 deploy.resources.reservations.devices 挡住 docker-compose.yml.

验证(两条路径)

memory_save(content="install works", type="fact")
memory_stats()

打开 --仪表板、知识图谱、代币储蓄。

______________________________________________________________________

快速开始

v11默认值为 MEMORY_MODE=fast. 保存/搜索/调用热路径中没有LLM、Ollama和网络。还原v10.5同步LLM行为集 export MEMORY_MODE=deep.模式切换: LAUNCH.md §调整.

安装后,在任何Claude Code/Copyx CLI/Cursor会话中:

1.从你中断的地方继续 (会话自动启动,但您也可以调用)

session_init(project="my-api")
→ {summary: "yesterday: migrated auth middleware to JWT",
   next_steps: ["update OpenAPI spec", "notify frontend team"],
   pitfalls: ["don't revert migration 0042 — dev DB already migrated"]}

2.保存决策(代理在钩子注册后自动执行此操作)

memory_save(
  type="decision",
  content="Chose pgvector over ChromaDB for multi-tenant RLS",
  context="WHY: single Postgres instance, per-tenant row-level security",
  project="my-api",
  tags=["database", "multi-tenant"],
)

3.跨会议/项目回忆

memory_recall(query="vector database choice", project="my-api", limit=5)
→ RRF-fused results from 6 retrieval tiers

4.在开始任务之前预测方法

workflow_predict(task_description="migrate auth middleware to JWT-only")
→ {confidence: 0.82, predicted_steps: [...], similar_past: [...]}

5.编辑前检查文件的风险 (通过挂钩自动,也可手动)

file_context(path="/Users/me/my-api/src/auth/middleware.go")
→ {risk_score: 0.71, warnings: ["last 3 edits caused test failures in ..."], hot_spots: [...]}

6.获取完整统计数据

memory_stats()
→ {sessions: 515, knowledge: {active: 1859, ...}, storage_mb: 119.5, ...}

______________________________________________________________________

CLI: lookup-memory 对于子代理

v9中的新功能。 Bash友好的内存搜索子代理工作流,其中启动完整的MCP服务器将是多余的(例如。 Bash(lookup-memory "fix slow Wave query") 从Claude Code代理提示符内部)。

两个等效的指挥部随包裹一起发货(注册为 [project.scripts] 条目--由自动安装 ./install.sh./update.sh):

lookup-memory "Caroline researched"          # human-readable bullets
ctm-lookup "Caroline researched"             # alias

lookup-memory --project myproj --limit 5 "auth flow"
lookup-memory --type solution --tag reusable "fix bug"
lookup-memory --json "claude code hooks"     # structured stdout for piping

它是如何工作的: 打开相同 $CLAUDE_MEMORY_DIR/memory.db 正在运行的MCP服务器使用→ 通过FTS5进行BM25排名→ 在较旧的DB上回落到LIKE。 零超出包裹。 CLI路径不需要Ollama、rag_chat.py和ChromaDB。适用于macOS、Linux、Windows。

$ lookup-memory --project locomo_0 --limit 2 "adoption"
1. [synthesized_fact|locomo_0] Caroline is researching adoption agencies.
2. [synthesized_fact|locomo_0] Melanie congratulates Caroline on her adoption.

为什么有两个名字? lookup-memory 匹配旧文档和子代理提示参考的旧bash脚本(~/claude-memory-server/ollama/lookup_memory.sh). ctm-lookup 是项目前缀的规范形式。两者都调用 claude_total_memory.lookup:main.

迁移说明: v7/v8文档指出 ~/claude-memory-server/ollama/lookup_memory.sh 应该更新——bash版本仍然适用于手动安装的用户,但是 ./install.sh / ./update.sh v9+上的客户端现在可以获得 lookup-memory 直接通过包的PATH [project.scripts] 进入。

______________________________________________________________________

MCP工具参考(60+工具)

工具类别

取芯(9): memory_save, memory_recall, memory_get, memory_update, memory_delete, memory_history, memory_extract_session, memory_relate, memory_search_by_tag

知识图谱(8): kg_add_fact, kg_invalidate_fact, kg_at, kg_timeline, memory_graph, memory_graph_index, memory_graph_stats, memory_concepts

情节/会话(6): memory_episode_save, memory_episode_recall, session_init, session_end, memory_timeline, memory_history

程序/工作流程(4): workflow_learn, workflow_predict, workflow_track, classify_task

任务阶段(4,v8.0): task_create, phase_transition, task_phases_list, complete_task

决定(1,v8.0): save_decision

意图(3,v8.0): save_intent, list_intents, search_intents

自我提升(5): self_rules, self_rules_context, self_insight, self_patterns, self_error_log, rule_set_phase (v8.0)

预编辑保护/错误学习(3): file_context, learn_error, self_error_log

类比/交叉项目(2): analogize, ingest_codebase

反思/巩固(4): memory_reflect_now, memory_consolidate, memory_forget, memory_observe

统计/出口(5): memory_stats, memory_export, memory_self_assess, memory_context_build, benchmark

技能(3): memory_skill_get, memory_skill_update, file_context

总计: 60多种工具。 下面分别记录了输入模式和示例。

令牌高效的三层工作流程

当你只知道主题而不知道哪些记录重要时,使用渐进式披露:

  1. 索引memory_recall(query="auth refactor", mode="index", limit=20) → ~2 KB of {id, title, score, type, project, created_at} 每次点击。没有内容,就没有认知拓展。
  2. 时间线memory_recall(query="auth refactor", mode="timeline", limit=5, neighbors=2) → 前K名按时间顺序排列,用同一时段的±个邻居填充。
  3. 获取memory_get(ids=[3622, 3606]) → 仅针对您选择的ID提供完整内容(每次通话最多50个, detail="summary" 截断为150个字符)。

典型节省: 代币数量减少80%-90% memory_recall(detail="full", limit=20) 当你最终使用20次点击中的2-3次时。

Core memory (15)

memory_recall · memory_get · memory_save · memory_update · memory_delete · memory_search_by_tag · memory_history · memory_timeline · memory_stats · memory_consolidate · memory_export · memory_forget · memory_relate · memory_extract_session · memory_observe

Knowledge graph (6)

memory_graph · memory_graph_index · memory_graph_stats · memory_concepts · memory_associate · memory_context_build

Episodic memory & skills (4)

memory_episode_save · memory_episode_recall · memory_skill_get · memory_skill_update

Reflection & self-improvement (7)

memory_reflect_now · memory_self_assess · self_error_log · self_insight · self_patterns · self_reflect · self_rules · self_rules_context

Temporal knowledge graph (4)

kg_add_fact · kg_invalidate_fact · kg_at · kg_timeline

Procedural memory (3)

workflow_learn · workflow_predict · workflow_track

Pre-flight guards & automation (8)

file_context (编辑前风险评分)· learn_error (自动合并错误捕获)· session_init / session_end · ingest_codebase (AST,9种语言)· analogize (跨项目类比)· benchmark (回归门)

完整的JSON模式: python -m claude_total_memory.cli tools --json 或打开仪表板 localhost:37737/tools.

______________________________________________________________________

TypeScript SDK

对于Node.js/浏览器/任何不是MCP本机代理的TS项目:

npm i @vbch/total-agent-memory-client
import { connectStdio } from "@vbch/total-agent-memory-client";

const memory = await connectStdio();

await memory.save({
  type: "decision",
  content: "Picked pgvector over ChromaDB for multi-tenant RLS",
  project: "my-api",
});

const hits = await memory.recallFlat({
  query: "vector database choice",
  project: "my-api",
  limit: 5,
});

还提供了LangChain适配器示例、过程内存集成和HTTP传输(用于团队/无服务器设置)。

软件包仓库:

______________________________________________________________________

仪表板(本地主机:37737)

  • / --实时统计数据、队列深度、过滤器节省的令牌、表示覆盖率
  • /graph/live --3D WebGL力图(Three.js),3500+节点/120000+边,点击聚焦,键入过滤器,搜索
  • /graph/hive --D3蜂窝图,按类型在径向轴上的节点
  • /graph/matrix --按类型排序的画布邻接矩阵
  • /knowledge --分页知识浏览器、标签过滤器
  • /sessions --最后50次会议,包括总结+下一步
  • /errors --综合误差模式
  • /rules --主动行为规则+火灾计数
  • SSE药丸在头部 --实时重新连接指示器

截图→ 文档/截图/ (即将到来)

______________________________________________________________________

更新

cd ~/claude-memory-server
./update.sh

7个阶段:

  1. 飞行前 --磁盘检查+数据库快照(保留最后7个)
  2. 源代码拉取 (git)或SHA-256验证的tarball
  3. 依赖pip install -r requirements.txt -r requirements-dev.txt (仅当哈希值更改时)
  4. 完整的pytest套件 --如果为红色,则中止快照
  5. 架构迁移python src/tools/version_status.py
  6. LaunchAgent重新加载 --反射+回填+更新检查
  7. MCP重新连接通知 --应用内 /mcpmemory → 重新连接

手动等效:

cd ~/claude-memory-server
git pull
.venv/bin/pip install -r requirements.txt -r requirements-dev.txt
.venv/bin/python src/tools/version_status.py
.venv/bin/python -m pytest tests/
# in Claude Code: /mcp → memory → Reconnect

______________________________________________________________________

从v8.x升级到v9.0

v9是 向后兼容现有的v8调用和DB模式保持不变——v9是一个基础版本,增加了可插拔后端、子代理的公共CLI和LoCoMo基准测试连接。没有强制启用任何功能。

一次命令升级

cd ~/claude-memory-server && ./update.sh
# pulls v9 src, installs new entry-points (ctm-lookup / lookup-memory),
# keeps existing memory.db untouched.

升级后,验证新CLI是否在PATH上:

lookup-memory --limit 1 "any-query-from-your-history"

新增内容(无需采取任何行动)

  • lookup-memory / ctm-lookup CLI现在已安装在旁边 claude-total-memory MCP服务器(注册为 [project.scripts] 所以 ./install.sh./update.sh 将它们自动放在PATH上)。子代理提示引用旧版 ~/claude-memory-server/ollama/lookup_memory.sh 脚本继续工作;新提示应首选已安装包的名称。
  • 嵌入后端 继续停留 fastembed 默认情况下。通过以下方式切换 V9_EMBED_BACKEND=openai-3-large (套 MEMORY_EMBED_API_KEY)--重新嵌入的成本约为0.10美元/5k行,预计对话数据的R@5提升。
  • 重新排序后端 我自岿然不动 ce-marco 默认情况下。 V9_RERANKER_BACKEND=bge-v2-m3 (或 off)运行时切换。
  • 主题感知检索 通过以下方式选择加入 --subject-awarebenchmarks/locomo_bench_llm.py未来:表面作为MCP工具标志。
  • 没有迁移。 架构与v8保持不变。

需要手动操作的内容

  • 重新嵌入 (仅当切换嵌入模型时,否则跳过):
  python -m scripts.reembed --backend openai-3-large --confirm
  • 旧的bash子代理提示 那个硬编码 ~/claude-memory-server/ollama/lookup_memory.sh "query" 将继续工作。要安装新套件,请更换为 lookup-memory "query".

重大变更

没有。所有v8 MCP工具、env变量、钩子和DB表的行为都是相同的。

______________________________________________________________________

从v7.x升级到v8.0

v8.0是 向后兼容 --您现有的v7安装保持不变。所有新功能都可以通过MCP工具调用或环境变量进行选择。

一次命令升级

cd ~/claude-memory-server && ./update.sh
# Applies migrations 011-013 idempotently, restarts LaunchAgents, updates dependencies

然后重新启动Claude Code: /mcp restart memory.

什么会自动改变

  • 迁移011–013 适用于MCP启动(隐私计数器、任务阶段、意图)。零停机时间,幂等。
  • 现有的 memory_save 通话仍在继续——现在它们还可以断开 `

... ` 部分(如有)。

  • 现有的 memory_recall 呼叫继续工作--默认模式仍然是 "search"mode="index" 是选择加入。
  • 现有的 session_end 通话继续有效-- auto_compress=False 默认情况下。通过 auto_compress=True 选择加入。
  • 现有的 self_rules_context 调用继续工作——默认返回所有规则(无阶段过滤器)。

需要手动设置的内容

1.云提供商 (仅当您想替换/增强Ollama时):

export MEMORY_LLM_PROVIDER=openai       # or "anthropic"
export MEMORY_LLM_API_KEY=sk-...
export MEMORY_LLM_MODEL=gpt-4o-mini     # or "claude-haiku-4-5"

云提供商 OpenRouter/每相路由/Coheres示例。

2.安装附加挂钩 (适用于UserPromptSubmit捕获+引用):

./install.sh --ide claude-code   # re-run installer; it now registers user-prompt-submit.sh hook

钩子是附加的——现有的钩子可以继续工作。

3.activeContext.md黑曜石集成 (如果你想要markdown投影):

export MEMORY_ACTIVECONTEXT_VAULT=~/Documents/project/Projects   # default
# Disable: export MEMORY_ACTIVECONTEXT_DISABLE=1

session_end/ /activeContext.md.

重大变更

没有。 保留所有v7 MCP工具签名。新参数是可选的,具有安全默认值。

嵌入尺寸注释

如果您切换到云嵌入提供商(MEMORY_EMBED_PROVIDER=openai/cohere),服务器 将拒绝开始 如果现有的DB嵌入具有与新提供者返回的维度不同的维度。这是经过深思熟虑的——它可以防止无声的数据损坏。

要么:

  • 保持 MEMORY_EMBED_PROVIDER=fastembed (默认384d),仅更改LLM提供者,或
  • 重新嵌入数据库: python src/tools/reembed.py --provider openai --model text-embedding-3-small

v8.0中的新MCP工具

快速参考——请参阅 MCP工具参考:

工具目的
classify_task(description)返回{级别1-4,建议阶段,估计标记}
task_create(task_id, description)在“货车”阶段启动状态机
phase_transition(task_id, new_phase, artifacts?)通过货车/计划/创意/构建/反思/归档移动任务
task_phases_list(task_id)按时间顺序的相位历史
save_decision(title, options, criteria_matrix, selected, rationale, ...)按标准索引的结构化决策
memory_get(ids, detail)从中批量获取ID的完整内容 memory_recall(mode="index")
save_intent / list_intents / search_intentsUserPrompt提交捕获的提示
rule_set_phase(rule_id, phase)标记阶段范围加载的规则

扩展工具:

  • memory_recall(mode="index"|"timeline", decisions_only=False, ...) --三层令牌高效工作流
  • session_end(auto_compress=True, transcript=None, ...) --LLM生成的摘要
  • self_rules_context(phase="build"|"plan"|...) --相位滤波器
  • save_knowledge(...) --现在脱衣 `

... ` 自动分段

回滚计划

v8.0不会删除任何v7功能。如果遇到问题,您可以:

  1. 将env-var设置为恢复行为:
   export MEMORY_LLM_PROVIDER=ollama           # revert to local LLM
   export MEMORY_EMBED_PROVIDER=fastembed      # revert to local embeddings
   export MEMORY_ACTIVECONTEXT_DISABLE=1       # disable markdown projection
   export MEMORY_POST_TOOL_CAPTURE=0           # disable opt-in capture (default anyway)
  1. 迁移011/012/013是累加的(否 DROP / ALTER 在现有表上),因此DB降级不是破坏性的——旧代码会继续读取旧表。
  1. 最坏情况: git checkout v7.0.0 && ./update.sh --skip-migrations.

______________________________________________________________________

Ollama设置(可选,但推荐)

没有Ollama: 完全有效——原始内容被保存,通过BM25+FastEmbed密集嵌入进行检索。

与Ollama: 您还可以获得LLM生成的摘要、关键字、问题表单、压缩表示和深度丰富(实体、意图、主题)。

brew install ollama     # or: curl -fsSL https://ollama.com/install.sh | sh
ollama serve &
ollama pull qwen2.5-coder:7b        # default — best quality/speed on M-series
ollama pull nomic-embed-text        # optional, alternative embedder

云提供商(可选)

使用OpenAI、Anthropic或任何OpenAI兼容端点(OpenRouter、Together、Groq、DeepSeek、LM Studio、llama.cpp)而不是本地Ollama。

OpenAI:

export MEMORY_LLM_PROVIDER=openai
export MEMORY_LLM_API_KEY=sk-...
export MEMORY_LLM_MODEL=gpt-4o-mini

人类学:

export MEMORY_LLM_PROVIDER=anthropic
export MEMORY_LLM_API_KEY=sk-ant-...
export MEMORY_LLM_MODEL=claude-haiku-4-5

OpenRouter(通过一个端点连接100多种型号):

export MEMORY_LLM_PROVIDER=openai
export MEMORY_LLM_API_BASE=https://openrouter.ai/api/v1
export MEMORY_LLM_API_KEY=sk-or-...
export MEMORY_LLM_MODEL=anthropic/claude-haiku-4.5

每相布线 (廉价型号适用于散装,优质型号适用于压缩):

export MEMORY_TRIPLE_PROVIDER=openai
export MEMORY_TRIPLE_MODEL=gpt-4o-mini
export MEMORY_ENRICH_PROVIDER=anthropic
export MEMORY_ENRICH_MODEL=claude-haiku-4-5

嵌入 (尺寸必须与现有数据库匹配或需要重新嵌入):

export MEMORY_EMBED_PROVIDER=openai
export MEMORY_EMBED_MODEL=text-embedding-3-small  # 1536d
# or Cohere:
export MEMORY_EMBED_PROVIDER=cohere
export MEMORY_EMBED_API_KEY=...

模型选择

型号尺寸用例
qwen2.5-coder:7b4.7 GB默认 --最佳质量/速度比
qwen2.5-coder:32b19 GB最高质量,需要32 GB+RAM
llama3.1:8b4.9 GB通用替代品
phi3:mini2.3 GB低RAM机器

______________________________________________________________________

配置

环境变量(全部可选):

v11.0——内存模式+多嵌入空间

变量默认值用途
MEMORY_MODEfast`ultrafast\fast\balanced\deep`。选择热路径配置文件。看 模式.
MEMORY_USE_LLM_IN_HOT_PATHfalse用于同步LLM级的主开关 save_knowledge / Recall.search. MEMORY_MODE=deep 将此翻转为 true.
MEMORY_ALLOW_OLLAMA_IN_HOT_PATHfalse重新启用静音FastEmbed→ 当FastEmbed不可用时,Ollama会回退梯子。
MEMORY_RERANK_ENABLEDfalse尊敬来电者 rerank=true.何时 false,即使工具调用请求,CrossEncoder重新排序也会被硬禁用
MEMORY_ENRICHMENT_ENABLEDfalse运行异步富集工作程序。默认开启 balanced / deep.
MEMORY_TEXT_EMBED_MODELsentence-transformers/paraphrase-multilingual-MiniLM-L12-v2型号 embedding_space=text.
MEMORY_CODE_EMBED_MODEL_空的→ 退回到TEXT模型_型号 embedding_space=code.该行仍有记录 space=code 因此,未来的交换仅限于配置。
MEMORY_LOG_EMBED_MODEL_空的→ TEXT_型号 embedding_space=log.
MEMORY_CONFIG_EMBED_MODEL_空的→ TEXT_型号 embedding_space=config.
MEMORY_DEFAULT_EMBEDDING_SPACEtext非机密内容的空间。

v10+更早版本

变量默认值用途
MEMORY_DB~/.claude-memory/memory.dbSQLite位置
MEMORY_LLM_ENABLEDauto`auto\true\false\force` --LLM富集开关
MEMORY_LLM_MODELqwen2.5-coder:7bOllama富集模型
MEMORY_LLM_PROBE_TTL_SEC60Ollama可用性探测的缓存TTL
MEMORY_LLM_TIMEOUT_SEC60Ollama请求的全局回退超时
MEMORY_TRIPLE_TIMEOUT_SEC30深度三重提取超时
MEMORY_ENRICH_TIMEOUT_SEC45深度浓缩超时
MEMORY_REPR_TIMEOUT_SEC60表示生成超时
MEMORY_TRIPLE_MAX_PREDICT2048num_predict 三重萃取盖
OLLAMA_URLhttp://localhost:11434奥拉马终点
MEMORY_EMBED_MODEfastembed`fastembed\sentence-transformers\ollama`
DASHBOARD_PORT37737HTTP仪表板端口
MEMORY_MCP_PORT3737HTTP MCP传输端口(Docker路径)
MEMORY_ASYNC_ENRICHMENTfalsev10.1 --将质量门/矛盾/实体消除/情节/wiki转移到后台工作人员。看 性能调优
MEMORY_ENRICH_TICK_SEC0.1工人勾选间隔(夹具 0.01..5)
MEMORY_ENRICH_BATCH5每勾索赔行数(夹紧 1..50)
MEMORY_ENRICH_MAX_ATTEMPTS3在翻转行之前进行重试 failed
MEMORY_ENRICH_STALE_AFTER_SEC60a前几秒 processing 行被回收(工人崩溃恢复)
仅CPU/WSL主机:如果Ollama保持超时,则降低 MEMORY_TRIPLE_MAX_PREDICT 在提高超时之前。 install-codex.sh 自动写入保守默认值。 在WSL2上节省30-40秒的延迟→ set MEMORY_ASYNC_ENRICHMENT=true --见下文。

完整配置:请参阅 claude_total_memory/config.py.

______________________________________________________________________

性能调优

v11.0快速模式热路径(默认)

MEMORY_MODE=fast (默认):

度量p50p95p99
save_fast6.28.911.4
save_fast 缓存0.30.41.4
search_fast3.44.76.0
cached_search3.13.43.6

llm_calls=0, network_calls=0.复制: ./bin/memory-bench.回归门: ./bin/memory-perf-gate架构原理和每个阶段的审计: docs/v11/audit.md.原始工作台工件: docs/v11/benchmark.md.

如果你的数字与表格不符,请运行 ./bin/memory-bench --warmup 首先,冷FastEmbed导入在第一次调用中占主导地位。

传统:v10.5深度模式 memory_save 延迟

同步v10热路径内联运行五个LLM绑定阶段,因此 drop 判决可能会阻止INSERT,并且矛盾会取代同一事务中的提交。在macOS上使用温暖的Ollama,中值约为340毫秒;在没有GPU/CoreML的WSL2盒子上,每次LLM往返都可以将同一个调用延长到30-40秒。

v10.1提供选择加入功能 收件箱/发件箱工作人员 将重型舞台移出乐队:

sync   : privacy → canonical_tags → INSERT → embed → enqueue → return
worker : quality_gate → entity_dedup_audit → contradiction → episodic → wiki

在您的环境中启用它:

export MEMORY_ASYNC_ENRICHMENT=true
# Optional knobs (defaults shown):
export MEMORY_ENRICH_TICK_SEC=0.1
export MEMORY_ENRICH_BATCH=5
export MEMORY_ENRICH_MAX_ATTEMPTS=3
export MEMORY_ENRICH_STALE_AFTER_SEC=60

重新启动MCP服务器。后台守护进程线程现在消耗 enrichment_queue;您可以在仪表板面板上观看 ⚡ v10.1浓缩工人.

Bench v10.5(10个记录语料库×2轮,开启LLM阶段)

memory_save 延迟:

分钟p50p95p99最大值平均值
同步 (默认)17.5毫秒25.3毫秒2150.5毫秒2179.0毫秒2186.1毫秒348.0毫秒
异步 (MEMORY_ASYNC_ENRICHMENT=true)18.1毫秒22.3毫秒26.7毫秒27.4毫秒27.5毫秒22.7毫秒

memory_recall 潜伏期:两种模式(稳态)下p50≈3-5ms, 第一次预热时出现冷缓存p95异常值。

p95塌缩80× 使用async(2150 ms → 27 ms).在WSL2上使用 缓慢的Ollama,形状不变——30-40秒的同步p95变为 异步p95约为300-1000ms(LLM完全移出热路径)。

复制: ./.venv/bin/python benchmarks/v10_5_latency.py --rounds 2 --with-llm. 完整报告: benchmarks/v10_5_results.md.

折衷——软降语义

当async打开时,a quality_gate drop 不再阻止INSERT(我们已经在同步路径中提交了)。相反,该行被标记 status='quality_dropped' 在工人打分之后。 memory_recall 忽略该状态(idx_knowledge_status_quality 在迁移020中添加)。审计历史记录保留在 quality_gate_log 所以没有什么损失。

如果需要严格的插入前门控(例如合规性),请保持默认同步路径。

崩溃恢复

排被卡住了 processing 长于 MEMORY_ENRICH_STALE_AFTER_SEC (默认60秒)翻转回 pending 自动覆盖工作进程在中间阶段终止。先前存在的 write_intents 发件箱仍然盖着一个崩溃 *之前* 插入。

______________________________________________________________________

路线图

在v11.0(2026-04-27)中发货——生产内存引擎

  • 默认 MEMORY_MODE=fast --保存/搜索/调用热路径中的LLM为零,Ollama为零,网络为零。集 MEMORY_MODE=deep 以恢复v10.5行为。
  • 内存核心/AI层拆分src/memory_core/* 是确定性的; src/ai_layer/* 拥有每个LLM绑定代码路径。被强迫 tests/test_no_llm_hot_path.py.
  • 4种模式: ultrafast / fast / balanced / deep.单个环境标志。
  • 多嵌入空间契约 --每个向量行记录提供者/模型/维度/空间/内容类型/语言。空间: text / code / log / config单色后端;每空间模型交换仅用于配置。
  • 嵌入带门控的后备梯 --沉默的Ollama后退 Store.embed 需要 MEMORY_ALLOW_OLLAMA_IN_HOT_PATH=true.
  • 新的MCP工具: memory_save_fast, memory_search_fast, memory_explain_search, memory_warmup, memory_perf_report, memory_rebuild_fts, memory_rebuild_embeddings, memory_eval_locomo, memory_eval_recall, memory_eval_temporal, memory_eval_entity_consistency, memory_eval_contradictions, memory_eval_long_context.
  • 迁移021(嵌入空间)+022(嵌入缓存_v11) --下次开始时幂等。
  • 基准测试套件: bin/memory-bench (人工制品 docs/v11/benchmark.md) + bin/memory-perf-gate 对于CI。

以v10.5版本发货(2026-04-27)

  • 通用 memory-protocol 技能 --单个规范SKILL.md+4个参考(所有60多个MCP工具的工具备忘单,15种常见情况的工作流配方,钩子参考,每个IDE设置)+4个模板(Claude Code settings.json,Codex config.toml,Cursor .mdc,克莱恩 .md).每个IDE的内容相同;只是布线不同。
  • install.sh --ide 扩展到9个IDE:克劳德码、代码、光标, 克莱恩, 继续, 帮助, 帆板运动,gemini-cli,opencode。新助手: register_mcp_cline / continue / aider / windsurf + _json_merge_mcp_nested 对于虚线键的情况(cline.mcpServers).
  • 跨平台硬化 --所有bash脚本都通过 bash -n 在macOS bash 3.2(默认)下。替换 ${var,,} 小写抨击 update.sh 随着 tr '[:upper:]' '[:lower:]'。已通过shellcheck验证。
  • 子代理内存协议 --任何子代理的通用标头(php-pro, golang-pro, vue-expert等)具有强制性 memory_recall 之前/ memory_save 之后。中的完整模板 skills/memory-protocol/references/subagent-protocol.md.
  • v10.5延迟基准benchmarks/v10_5_latency.py 苹果对苹果同步与异步比较。展示 减少80×p95 (2150 ms → 27 ms)当启用异步并打开LLM阶段时。

以v10.1版本发货(2026-04-27)

  • 异步富集工作者 --选择加入 MEMORY_ASYNC_ENRICHMENT=true 将质量门/实体消除/矛盾检测器/情节链接/wiki刷新移动到后台线程。在macOS上,最大节省延迟为5.4倍,在WSL2上为60-100倍。看 性能调优.
  • enrichment_queue 桌子 具有过时的处理恢复功能(行在中停留时间>60秒 processing 翻转回 pending).
  • 仪表板面板 对于工作人员健康:深度、吞吐量/分钟、每项任务p50/p95ms、最旧的待处理年龄、最近的失败。
  • _binary_search 值错误修复np.argpartition 需要 `kth STRICTLY N小时的虚拟会话)
  • MLX本地LLM集成(内存#3583中的A1计划)
  • 本地路径推测解码(+1.5-1.8×LLM速度)

______________________________________________________________________

支持项目

total-agent-memory 现在是,而且永远是免费的,麻省理工学院授权的。 没有付费层,没有门控功能,没有“企业版”。此页面上的基准是整个产品。

如果它每周为你节省了数小时的上下文粘贴时间,而你想帮助保持开发的进行——或者只是说谢谢——捐赠意义重大。

你的支持资金是什么

目标
$5 --一杯咖啡一个晚上专注于OSS工作
🍕 $25 --披萨一个新的端到端MCP工具(设计、代码、测试、文档)
🎧 $100 --一个周末一个主要功能:例如,偏好跟踪模块缩小了LongMemEval上80%的差距
💎 $500+ --冲刺发布周期:新子系统+迁移+文档+基准工件

非货币援助方式(同样受到赞赏)

  • 标记回购 --GitHub发现在此运行
  • 🐦 在X/HN/Redit上分享基准测试 --接触比捐款更重要
  • 🐛 待解决问题 对于repro案例,bug报告是无价之宝
  • 📝 写一篇博客文章 关于你如何使用它
  • 🔧 提交PR --修复、新工具、新集成
  • 🌍 翻译README --RU/DE/JA/ZH的第一批文件非常受欢迎
  • 💬 告诉你的团队 --同行推荐转化率比营销好10倍

商业/咨询

  • 构建一些可以从自定义集成、本地部署或团队共享内存中受益的东西? 电子邮件 vbcherepanov@gmail.com --对合同工作和合作关系持开放态度。
  • 谁的路线图重叠的AI/dev工具公司?同样的电子邮件——很乐意交谈。

______________________________________________________________________

哲学

麻省理工学院永远。 没有商业许可证转换,没有风险投资,没有黑暗模式。内存层属于使用它的开发人员,而不是SaaS供应商。

当地第一是产品。 如果你想要一个云内存服务,mem0和Supermemory都很棒。如果你想让你的数据在你的磁盘上,不受其他人的影响——这个。

诚实的基准。 此页上的每个数字都可以从中的工件中复制 evals/ 以及其中的脚本 benchmarks/如果你不能重现一个声明,那就打开一个问题——这是一个bug。

______________________________________________________________________

贡献

  • 在大型公关之前打开一个问题——节省了每个人的时间。
  • pytest tests/ 必须保持绿色。为新工具添加测试。
  • 更新 evals/scenarios/*.json 如果您更改检索行为。
  • 仅限文档/打印错误的PR不受讨论。

______________________________________________________________________

许可证

麻省理工学院——见 许可证.

______________________________________________________________________

Built for coding agents. Runs on your machine. Free forever.

Compare to mem0 / Letta / Zep / Supermemory · Benchmark artifact · TypeScript SDK · Donate

目录标签

目录标签

PythonClaude数据分析AI编码辅助本地部署本地持久化内存知识图谱程序记忆跨项目类比

支持客户端

ClaudeCursorWindsurfCline

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

58

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP