Hermes Holographic 记忆挂件详解:新机器人装完后先接哪些功能

整理 Hermes Agent 的 Holographic 外部记忆挂件:适用场景、启用命令、状态验收、事实维护、常见坑,以及新 Matrix / Telegram 机器人装完后的功能优先级清单。

新装一个 Hermes Matrix / Telegram 机器人后,最容易纠结的是:到底先装什么功能,哪些是锦上添花,哪些会影响长期体验。

我的建议是先把顺序想清楚:先让机器人安静、安全、可恢复;再接 Holographic 这类本地记忆挂件;最后再考虑 Honcho、MCP、Cron、Voice、更多平台和云端记忆。

这篇专门讲 Holographic 记忆挂件,并顺手整理一份“新机器人装完后的功能清单”。以后新机器部署完,不用再凭感觉乱开功能,按优先级一项项验收就行。

Holographic 是什么

Holographic 是 Hermes Agent 的外部 memory provider 之一。它的定位很明确:给 Hermes 增加一个本地 SQLite 事实库,让机器人可以在内建 USER.md / MEMORY.md 之外,保存、搜索、关联和修正长期事实。

一句话理解:

USER.md / MEMORY.md 负责少量高优先级记忆,
Holographic 负责更多可检索、可维护、可打分的长期事实。

官方 memory provider 文档里把 Holographic 描述成本地 SQLite fact store,支持 FTS5 全文搜索、trust scoring,以及用于组合查询的 HRR 能力。它不需要额外云服务,SQLite 默认可用,NumPy 只是可选增强。

所以它很适合这些场景:

  • 第一次给 Hermes 接外部记忆。
  • 希望所有记忆先落在本机,不想把个人偏好和服务器信息交给云服务。
  • 当前主要是单机器人、单用户、单工作流。
  • 想让机器人记住长期稳定事实,但又不想把 MEMORY.md 塞爆。
  • 需要能搜索、列出、更新、删除事实,而不是只靠系统提示里几行固定记忆。

它不适合解决这些问题:

  • 多个机器人共享同一个用户画像。
  • 团队级别的跨助手协作记忆。
  • 想要云端同步和多设备天然共享。
  • 想让所有聊天记录无脑进长期记忆。

如果目标是多助手共享认知,应该看 Honcho 或其它共享记忆方案;如果目标只是先让新机器人具备可靠本地长期事实库,Holographic 是最轻的一步。

它和内建记忆的关系

Hermes 的内建记忆一般分两类:

记忆层适合保存什么特点
USER.md用户偏好、长期习惯、语气要求少量、高优先级、开局就注入
MEMORY.md稳定环境事实、长期项目事实少量、高优先级、适合人工整理
Holographic可检索事实、关联信息、历史经验本地 SQLite,可搜索、可更新、可反馈

Holographic 不是替代 USER.md / MEMORY.md。接上后,内建记忆仍然照常工作;Holographic 只是额外增加一层外部事实库。官方文档也明确说,同一时刻只能启用一个外部 memory provider,但内建记忆会一直保留。

实践里可以这样分工:

内容放哪里
“用户默认希望中文回答”USER.md
“Hugo 源码在 /Users/mana/Documents/codex/hugoMEMORY.md 或项目 context
“某台新 Matrix 机器人已经配置过 Holographic,数据库路径是某 profile 下的 memory_store.dbHolographic
“一次报错排查中未经确认的猜测”不进长期记忆
“某项部署流程以后会重复执行”skill,不是 memory

一个好用的机器人,不是记得越多越好,而是知道什么值得长期记。

启用 Holographic

先切到运行 Hermes 的用户,例如:

sudo su - hermesuser

如果是指定 profile,先确认当前 profile 和配置路径:

hermes profile list
hermes config path
hermes config env-path

修改前备份配置:

CFG="$(hermes config path)"
cp "$CFG" "$CFG.bak.$(date +%Y%m%d-%H%M%S)"

交互式启用:

hermes memory setup

在 provider 列表里选择:

holographic

如果只想直接设置 provider:

hermes config set memory.provider holographic

然后查看状态:

hermes memory status

正常情况下,状态里应该能看到当前外部 provider 是 holographic

检查配置是否写对

查看当前配置:

hermes config show

至少确认这两块存在:

memory:
  provider: holographic

plugins:
  hermes-memory-store:

Holographic 默认数据库通常是:

$HERMES_HOME/memory_store.db

也就是默认 profile 下常见为:

~/.hermes/memory_store.db

具名 profile 则可能在:

~/.hermes/profiles/<profile>/memory_store.db

不要只猜路径,优先用 hermes config pathhermes profile list 和当前配置确认 profile。多机器人最常见的坑就是:你以为改的是 Matrix 机器人 profile,实际改到了默认 profile。

Holographic 的工具能力

官方列出的 Holographic 工具有两类:

工具作用
fact_store添加、搜索、探测、关联、推理、检测冲突、更新、删除、列出事实
fact_feedback对记忆结果标记 helpful / unhelpful,用来影响 trust score

实际使用时,不需要手动背工具参数。更稳妥的是直接对机器人说清楚目标:

把“这个 Matrix 机器人日常使用 smart 审批,群聊默认需要 mention”保存为长期事实。

或者:

查一下你关于这个 Hermes Matrix 机器人的长期记忆,列出和 memory provider、审批、Matrix 入口限制有关的事实。

再或者:

如果你发现关于这台机器人的 Holographic 记忆里有过期 facts,请先列出来,不要直接删除,等我确认。

对自己长期用的机器人,我建议给它一条常驻规则:

写入长期记忆前,先说明准备保存的事实;只保存长期偏好、稳定环境事实和可复用工作习惯,不保存一次性错误、未经确认的猜测、token、密码或临时任务状态。

要不要打开 auto_extract

Holographic 配置里有一个常见字段:

plugins:
  hermes-memory-store:
    auto_extract: false

默认 false 更保守。它的意思是不要在会话结束时自动抽取事实。对于刚装的新机器人,我建议先保持 false,等你确认它能分清长期事实和临时状态后,再考虑打开。

如果要打开,也要配合严格规则:

plugins:
  hermes-memory-store:
    auto_extract: true
    default_trust: 0.5

打开后观察一段时间:

列出最近写入的 Holographic facts,按主题分组,并标出你认为可能过期或不应长期保存的内容。

如果发现它把排障过程中的临时猜测、一次性路径、短期 bug 状态都塞进去了,就关回去。长期记忆一旦变脏,机器人会越来越自信地沿着旧事实跑偏。

一套验收流程

接完 Holographic 后,不要只看命令是否成功。建议做一轮真实验收。

第一步,确认 provider:

hermes memory status

第二步,确认配置:

hermes config show | sed -n '/^memory:/,/^[^ ]/p'
hermes config show | sed -n '/^plugins:/,/^[^ ]/p'

第三步,确认数据库文件:

find ~/.hermes -name 'memory_store.db' -print

第四步,做一条可验证记忆:

请把这条保存到 Holographic 长期事实:我的新机器人装完后,默认先做 smart 审批、入口限制、Holographic 本地记忆和备份检查。

第五步,新开会话后让它查询:

查一下你的 Holographic 长期事实:新机器人装完后,我默认先做哪些优化?

如果它能从 Holographic 找回这条事实,并且没有把一堆无关聊天内容混进去,就算基础闭环通过。

常见坑

1. 改错 profile

多机器人场景下,先永远问三件事:

hermes profile list
hermes config path
hermes config env-path

如果 Matrix gateway 是 matrix profile,Telegram gateway 是 telegram profile,默认 profile 里启用 Holographic 不会自动影响它们。

2. 把 Holographic 当成共享大脑

Holographic 是本地事实库,更适合单 profile 本地长期记忆。多个机器人要共享用户画像、peer 身份和跨会话关系时,应该另看 Honcho 这类方案。

3. 什么都记

不要让机器人保存:

  • token、password、API key、cookie、SSH 私钥;
  • 未确认的猜测;
  • 一次性报错;
  • 今天临时改过、明天可能恢复的配置;
  • 纯聊天情绪和短期判断。

可以让它保存:

  • 用户长期偏好;
  • 常用服务器、仓库、服务名;
  • 机器人 profile 分工;
  • 稳定审批策略;
  • 可复用工作习惯;
  • 已验证的排障结论。

4. 不做 memory review

每隔一段时间做一次清理:

请列出 Holographic 里和 Hermes、Matrix、服务器运维有关的长期 facts,标出重复、过期、可能错误和建议合并的项。先不要修改,等我确认。

确认后再让它更新或删除。记忆维护像整理配置文件,不能完全放任自动增长。

还有哪些类似功能值得装

下面这张表可以当“新机器人装完后的功能优先级清单”。

优先级功能建议
必做smart 审批日常长期运行默认用它,不要长期全局 off
必做Matrix / Telegram 入口限制限制 allowed users / rooms,群聊默认 require mention
必做安静输出关闭工具过程噪声,只保留最终回答和必要确认
必做备份范围config、env、sessions、memory、skills、cron、gateway state 都要备份
推荐Holographic第一条外部记忆路线,本地、轻量、可验收
推荐Profilesdailydevopsfamily 分开,避免记忆和权限互相污染
推荐Toolsets给不同入口配置不同工具范围,群聊机器人不要开放过强工具
推荐Skills把重复三次以上的流程沉淀成技能
推荐Cron定时巡检、日报、备份提醒、状态摘要
可选Honcho多助手共享用户画像、peer 关系和更深用户建模
可选ByteRover偏开发者、本地优先、知识树式长期知识
可选Mem0 / Supermemory / RetainDB需要云端语义记忆、团队或外部服务能力时再接
可选MCP接文件、浏览器、数据库、GitHub、Notion 等外部工具
可选Voice想在语音入口里和 Hermes 对话时再开

我的保守安装顺序是:

模型连通性
-> gateway 在线
-> smart 审批
-> allowed users / rooms
-> 安静输出
-> 备份
-> Holographic
-> profiles / toolsets
-> skills
-> cron
-> MCP / Honcho / 其它云端记忆

这样装出来的新机器人,先是安全可控的,再是好用的,最后才是“花活很多”的。

新机器人初始化 Prompt

装完 Hermes Matrix 或 Telegram 机器人后,可以直接把下面这段发给它:

请先做新机器人初始化检查,但不要直接大改配置。

目标:
1. 确认当前 profile、config path、env path、gateway 状态。
2. 确认审批模式是否为 smart。
3. 确认 Matrix / Telegram 入口限制是否只允许可信用户和可信房间。
4. 确认 display 是否尽量安静,只保留最终回答和必要 approval。
5. 确认 config、env、sessions、memory、skills、cron、gateway state 是否纳入备份范围。
6. 检查是否已经启用 Holographic memory provider。
7. 如果未启用,先给出启用计划和风险点,不要直接执行。

安全要求:
- 不要打印 API key、access token、bot token、password、cookie、SSH key。
- 修改前先备份配置。
- 删除、覆盖、重启 gateway、改变公网暴露、改变权限范围前先等我确认。
- 长期记忆只保存稳定事实和长期偏好,不保存一次性任务状态。

确认它的检查结果没问题后,再让它执行:

按刚才的计划启用 Holographic。本次只做 provider 设置、状态检查、数据库路径确认和一条测试记忆写入,不开启 auto_extract。

参考资料