Hermes Decision Trace

agentmemory 与 Hindsight 长期记忆选型评估

长期主链路建议继续选 Hindsight,不要把 rohitg00/agentmemory 替换成主记忆系统。

HTML完整论证
Wiki可检索归档
Feishu短入口交付
🎯
核心结论

长期主链路建议继续选 Hindsight,不要把 rohitg00/agentmemory 替换成主记忆系统。

🧭
推荐路径

暂不改当前 memory.provider,继续 Hindsight。

🛡️
关键边界

项目很新:2026-02 创建,仍在 0.x 快速演化。

关键判断

判断项摘要
推荐方案长期主系统继续选 Hindsight。
关键依据见完整记录中的评分依据、状态摘要和证据链。
落地方式暂不改当前 memory.provider,继续 Hindsight。
风险边界项目很新:2026-02 创建,仍在 0.x 快速演化。

证据摘要

  • 由 Hermes 会话生成。证据点 1
  • 如涉及外部事实,应在正文中保留来源或验证路径。证据点 2

行动清单

暂不改当前 memory.provider,继续 Hindsight。
把 agentmemory 标记为 Watch + Sidecar Trial,不进入主链。
若要试验,单独建一个薄项目/sidecar,用 1 天做隔离评测:安装、健康检查、MCP 工具面、一次 coding session capture、一次 recall 对比。

边界 / 风险

风险点

项目很新:2026-02 创建,仍在 0.x 快速演化。

风险点

open issues 多:185 个。

风险点

npm 依赖存在 warning 信号,包括 peer dependency 与 deprecated 包。

风险点

Hermes 集成近期还在修 AGENTMEMORY_URL 默认值问题,说明边界还没完全稳定。

风险点

53/43 MCP tools 可能污染工具面,增加 prompt/tool schema 负担。

风险点

若开启 context injection,可能和 Hindsight auto recall、LCM、Feishu long guard 形成重复注入。

完整记录

agentmemory 与 Hindsight 长期记忆方案选型评估

结论

长期主链路建议继续选 Hindsight,不要把 rohitg00/agentmemory 替换成主记忆系统。

agentmemory 值得关注,甚至可以做一个隔离 sidecar 试验,但它更适合补“coding agent 运行时记忆 / MCP 多 agent 共享 / 本地轻部署体验”,不适合接管我们现在的长期知识治理主层。

推荐决策:Watch + Sidecar Trial,不 Core Merge,不替换 Hindsight。

一句话判断

  • Hindsight:更像长期知识治理与记忆事实层,适合 Hermes 当前的 retain pointer、decision trace、wiki 归档、graph/entity/document 治理。
  • agentmemory:更像面向 coding agent 的本地 memory daemon + MCP toolset + hook 集成包,工程包装很强,但项目仍年轻、API/依赖/生态波动大,适合作为旁路实验。

项目定位

agentmemory 是什么

目标仓库:https://github.com/rohitg00/agentmemory

根据 GitHub API 与 README,agentmemory 是一个 TypeScript / Node 项目,npm 包名为 @agentmemory/agentmemory,提供:

  • 本地 memory server,默认端口 3111
  • 独立实时 viewer,文档提到端口 3113
  • MCP server 包:@agentmemory/mcp
  • REST API
  • 面向 Claude Code、Codex、Cursor、Gemini CLI、OpenCode、Hermes、OpenClaw 等 coding agent 的 hook / plugin / MCP 集成
  • hybrid search:BM25 + vector + graph
  • memory versioning、decay、auto-forget、Obsidian export、real-time viewer 等包装能力

项目 README 宣称:

  • 95.2% retrieval R@5
  • 92% fewer tokens
  • 53 MCP tools / 集成文档里对 Hermes 写 43 MCP tools
  • 12 auto hooks
  • 0 external DBs
  • 950+ tests passing

这些指标来自项目自带 benchmark 和 README,不应直接等同于我们生产链路上的结果。

Hindsight 是什么

当前 Hermes 已使用 Hindsight 作为 memory provider:

  • ~/.hermes/config.yamlmemory.provider: hindsight
  • 本机 HTTP API:http://localhost:8889
  • 健康检查:/health 返回 {"status":"healthy","database":"connected"}
  • API version:0.6.2
  • 当前 bank:hermes
  • 当前统计:
  • total_nodes: 3283
  • total_links: 81419
  • total_documents: 167
  • total_observations: 1588
  • pending_operations: 0
  • failed_operations: 0
  • tags 包括 decision-trace / hermes / html-archive / wiki-index

Hindsight plugin README 定位:

  • long-term memory
  • knowledge graph
  • entity resolution
  • multi-strategy retrieval
  • 支持 cloud、local embedded、local external
  • 工具:hindsight_retainhindsight_recallhindsight_reflect
  • 支持自动 retain、自动 recall、bank template、tags filter、memory_mode hybrid/context/tools

当前我们实际用它承载:

  • session-end retain
  • decision trace retain pointer
  • wiki/HTML 指针索引
  • 长期方案回捞入口
  • knowledge graph / document / tag 层治理

证据摘要

agentmemory 官方与维护信号

GitHub API 读取到:

  • repo 创建时间:2026-02-25
  • 最近 push:2026-05-25
  • star:17680
  • fork:1447
  • open issues:185
  • license:Apache-2.0
  • language:TypeScript
  • topics 包括 hermesopenclawmemoryagentsclaudecodex

npm registry:

  • @agentmemory/agentmemory latest:0.9.21
  • npm modified:2026-05-19
  • versions:41 个版本
  • Node engine:>=20.0.0
  • direct dependencies:@anthropic-ai/claude-agent-sdk@anthropic-ai/sdk@clack/promptsdotenviii-sdkzod
  • optional dependencies:@node-rs/jieba@xenova/transformersonnxruntime-nodeonnxruntime-webtiny-segmenter

最近 commit 里有专门修 Hermes 集成的问题:

  • fix(hermes): seed AGENTMEMORY_URL default at import (closes #520) (#643)
  • 说明它已经在尝试兼容 Hermes,但也说明 Hermes 集成仍处在快速修补期。

open issue 里看到安装警告:

  • npm peer dependency warning:@anthropic-ai/claude-agent-sdk 需要 @anthropic-ai/sdk >=0.93.0,但包内存在 @anthropic-ai/sdk ^0.39.0
  • prebuild-install deprecated
  • 这不一定阻断使用,但对生产长期依赖是风险信号。

agentmemory 实现面

从源码与文档看,核心结构包括:

  • StateKV / KV schema:sessions、observations、memories、summaries、embeddings、bm25Index、relations、profiles、graphNodes、graphEdges、semantic、procedural、teamShared、audit、actions、leases、checkpoints、lessons、retentionScores、accessLog、slots 等。
  • mem::observe:捕捉 session observation,支持隐私过滤、去重、写 KV、合成压缩、索引。
  • mem::remember:写长期 memory,支持 supersede、TTL、BM25/vector 索引。
  • mem::search:BM25 + vector 索引,支持 token budget、compact/narrative/full 格式。
  • mem::context:按 token budget 生成 <agentmemory-context> 注入块。
  • mem::consolidate:用 LLM 把 observation 合成长期 memory。

配置面:

  • 数据目录默认 ~/.agentmemory
  • REST port 默认 3111
  • stream port 默认 3112
  • viewer 文档提到 3113
  • AGENTMEMORY_AUTO_COMPRESS 默认关闭,打开后会增加 LLM token 消耗
  • AGENTMEMORY_INJECT_CONTEXT 默认关闭,避免每次 tool turn 注入上下文导致 token burn
  • embedding 可用本地默认或 OpenAI/Voyage/Cohere/OpenRouter/Gemini 等

这个设计对 coding-agent runtime 很有吸引力,因为它更贴近工具调用流、session observation、MCP 工具面和多 agent 共享。

Hindsight 当前实现面

Hindsight 在 Hermes 内是正式 memory provider,不只是 MCP 外挂:

  • provider 配置已经进入 memory.provider: hindsight
  • Hindsight API 服务独立运行在 127.0.0.1:8889
  • PostgreSQL 实例独立运行,当前数据库 connected
  • OpenAPI 包含:banks、memories、recall、reflect、graph、entities、documents、tags、operations、profile、config、import/export、audit logs、webhooks 等
  • 当前 bank stats 无 pending/failed operation,说明运行态健康

它和我们已有治理体系耦合点更成熟:

  • decision_trace_publish.py --retain 写入 compact pointer
  • tag 体系已经形成 decision-trace / html-archive / wiki-index
  • 用户偏好的“HTML + wiki + retain”流程已经验证并运行
  • MEMORY.md / USER.md / session_search / exact recall / wiki / skills 分层已经围绕它形成边界

对比矩阵

维度Hindsightagentmemory判断
当前落地状态已运行,bank 有 3283 nodes / 167 docs / 81419 links未接入本机生产链Hindsight 赢
Hermes 集成深度官方 memory provider,直接参与 retain/recall/reflect项目自带 Hermes plugin/MCP,但本仓未内置Hindsight 稳
长期知识治理graph/entity/document/tags/operations/audit 更完整更偏 observation/session/memory daemonHindsight 更贴近长期治理
Coding agent runtime可用,但不是专为 coding hooks 打包强项:hooks/MCP/多 agent/session observationagentmemory 赢
部署复杂度已经有本机服务 + Postgres;复杂但稳定npm/npx 起步快,0 external DB 宣称agentmemory 体验轻
依赖风险Python + Postgres + Hindsight API;当前已托管Node >=20,npm 依赖、optional onnx/transformers、peer warningHindsight 对当前更低风险
数据可治理bank/doc/tags/export/import/audit 明确KV schema 多、功能很丰富,但仍快速演化Hindsight 更稳
生态成熟度当前 Hermes 插件已在本地跑通repo 热度高但创建于 2026-02,0.x 快速迭代Hindsight 更适合作主链
Exact recall 替代不替代 session_search_exact也不应替代 exact recall都不能替代 exact recall
Wiki/skill 替代不替代,作为 pointer/graph 层不应替代 wiki/skill都不替代

四层审计

1. 宣称层

agentmemory 宣称很强,尤其是:

  • 95.2% R@5
  • token savings
  • 多 agent / MCP / REST 通用接入
  • 0 external DB
  • 950+ tests

但它也明确是面向 coding agents 的 persistent memory,而不是长期知识治理唯一真相源。benchmark 主要是 LongMemEval-S、coding-agent-life 等,不等于我们本机 Hermes + Feishu + wiki + decision trace 的长期治理效果。

Hindsight 宣称相对少包装,但 Hermes plugin 文档里的能力更贴近我们现在需要的 long-term memory / graph / entity / reflect / retain。

2. 实现层

agentmemory 实现很丰富,但也复杂:observe、remember、search、context、consolidate、graph、slots、retention、leases、signals、checkpoints、working-memory 等都在一个快速迭代 Node 包里。适合做“agent memory runtime”,但作为唯一长期记忆中心会把故障域扩大到 Node/MCP/iii-engine/npm 生态。

Hindsight 当前实现已经以 HTTP API + Postgres 独立服务方式稳定运行,边界清楚,和 Hermes 的 provider 接口、retain pointer、wiki 流程已经打通。

3. 运行层

Hindsight 当前运行态已经验证:

  • /health healthy
  • API version 0.6.2
  • bank hermes 正常返回 stats
  • pending/failed operations 均为 0

agentmemory 未在本机跑生产验证。虽然文档说 npx @agentmemory/agentmemory 即可启动,但长期用还要验证:

  • systemd --user 托管
  • 3111/3112/3113 端口冲突
  • npm 依赖和 optional native deps
  • MCP 工具数量对 Hermes tool schema/token 的影响
  • 是否与现有 Hindsight auto recall 冲突
  • 数据 export/import 与备份恢复链

4. 检索与治理层

我们当前的长期治理已经是多层:

  • 当前会话上下文:LCM
  • 稳定短记忆:USER.md / MEMORY.md
  • 跨会话回捞:session_search / exact recall
  • 长期知识治理:wiki / skill / Hindsight retain pointer
  • 正式论证归档:Decision Trace HTML + wiki + retain

agentmemory 不能直接替代这套分层。它最可能补的是:

  • coding agent runtime observation
  • MCP/REST 多 agent 共享记忆
  • 本地 BM25/vector/context budget sidecar
  • 对 Codex/Claude/OpenCode 等外部 agent 的统一 memory bridge

Hindsight 继续承担长期知识治理主层更合理。

三个专项验证结论

静态面 vs 运行面一致性

  • Hindsight:静态配置与运行态一致,memory.provider: hindsight,HTTP API healthy,bank stats 可读。
  • agentmemory:静态文档丰富,但本机尚未实际部署;只能判为“可试验”,不能判为“可替换”。

精确回捞能力

两者都不是 exact recall 的替代品。

  • 代码路径、hash、UUID、错误字符串、message_id 仍应走 session_search_exact 或文件/wiki 精确检索。
  • Hindsight/agentmemory 都更适合语义层、关系层、摘要层或 pointer 层。

降级与回退路径

  • Hindsight 当前已有降级:wiki 路径、HTML 路径、session_search、exact recall、MEMORY.md/USER.md 都能独立存在。
  • agentmemory 如果做 sidecar,也必须只读/旁路接入,不要先开启 prompt 注入,不要替换 Hindsight retain;否则回退会复杂。

主要收益

继续 Hindsight 的收益

  1. 已经稳定接入 Hermes 主链。
  2. 与 decision trace、wiki、retain pointer 体系一致。
  3. API/Graph/Document/Tag/Audit/Operation 能力贴近长期治理。
  4. 当前运行态健康,已有真实数据资产。
  5. 不引入新的 Node/npm/MCP 大工具面风险。

引入 agentmemory 作为 sidecar 的潜在收益

  1. 给 Claude Code / Codex / OpenCode 等 coding agent 提供共享 runtime memory。
  2. MCP/REST 接入通用性强。
  3. 本地轻部署体验好,viewer 对观察 memory 流有帮助。
  4. BM25 + vector + token budget 的 runtime context 注入设计值得参考。
  5. 它的 Hermes 集成、hooks、benchmark、context budget 设计可部分吸收。

主要风险

agentmemory 风险

  1. 项目很新:2026-02 创建,仍在 0.x 快速演化。
  2. open issues 多:185 个。
  3. npm 依赖存在 warning 信号,包括 peer dependency 与 deprecated 包。
  4. Hermes 集成近期还在修 AGENTMEMORY_URL 默认值问题,说明边界还没完全稳定。
  5. 53/43 MCP tools 可能污染工具面,增加 prompt/tool schema 负担。
  6. 若开启 context injection,可能和 Hindsight auto recall、LCM、Feishu long guard 形成重复注入。
  7. 它的 benchmark 不直接覆盖我们的 Feishu/wiki/decision-trace 长期治理场景。

Hindsight 风险

  1. 依赖独立 Hindsight API + Postgres,运维复杂度比单 npm daemon 高。
  2. 对 coding agent hook capture 的产品包装不如 agentmemory。
  3. 若要跨外部 agent 共享,需要额外桥接,不如 agentmemory 开箱即用。
  4. 精确串 recall 仍需依赖 session_search_exact,不能过度神化语义记忆。

建议吸收清单

P0:不替换主链,继续 Hindsight

保留当前:

  • memory.provider: hindsight
  • decision_trace_publish.py --retain
  • wiki / HTML / Hindsight pointer
  • session_search / exact recall 分层

P1:吸收 agentmemory 的方法,不吸整包

可参考吸收:

  • runtime memory context budget 设计
  • AGENTMEMORY_INJECT_CONTEXT 默认关闭这类成本纪律
  • BM25 + vector + graph 的分层召回评测口径
  • coding-agent-life benchmark 思路
  • viewer / event stream 作为运行态观测思路
  • 多 agent 统一 memory bridge 的拓扑思路

P2:做隔离 sidecar 试验

如果要试,建议只做旁路:

  1. 新开 agentmemory-sidecar,端口保持 3111/3112/3113 或显式改端口,避免冲突。
  2. 不设置 memory.provider: agentmemory
  3. 不开启 AGENTMEMORY_INJECT_CONTEXT
  4. 先只接 Codex/Claude Code/OpenCode 一类 coding agent,不接 Feishu 主 gateway。
  5. 只测试 3 件事:
  • REST/MCP health
  • capture/remember/search 质量
  • 与 Hindsight 并行时的 token/schema 成本

不吸收

  • 不吸收 agentmemory 作为唯一 memory center。
  • 不把 agentmemory 替代 wiki / skill / Hindsight pointer。
  • 不把它的 README benchmark 直接当生产选型证据。
  • 不把 43/53 MCP tools 全量塞进 Hermes 默认工具面。

最终建议

长期主系统继续选 Hindsight。

agentmemory 的正确位置不是替代 Hindsight,而是候选的 coding-agent runtime memory sidecar。如果后续我们要统一 Claude Code / Codex / OpenCode / OpenClaw 的跨工具运行时记忆,可以安排一次隔离 POC;如果只是问 Hermes 自己长期记忆主链,Hindsight 更稳、更贴近当前治理架构,也已经有真实数据资产和验证链。

下一步动作

  1. 暂不改当前 memory.provider,继续 Hindsight。
  2. 把 agentmemory 标记为 Watch + Sidecar Trial,不进入主链。
  3. 若要试验,单独建一个薄项目/sidecar,用 1 天做隔离评测:安装、健康检查、MCP 工具面、一次 coding session capture、一次 recall 对比。