为什么很多人把 Hermes 用成黑盒:一篇读懂 ~/.hermes 的家目录、记忆、技能、分身与源码

为什么很多人把 Hermes 用成黑盒:一篇读懂 ~/.hermes 的家目录、记忆、技能、分身与源码

很多人第一次打开 ~/.hermes,第一反应都是一样的:看不懂。

一堆隐藏目录,一堆 json、yaml、db、sessions、skills、profiles,看起来像系统杂物间。

但真正的问题不是命令,而是结构。

如果你一直没把 ~/.hermes 看明白,Hermes 对你来说就永远像一个黑盒:会用一点,但不敢深用;能跑起来,但不敢长期维护。

~/.hermes 不是“配置目录”,而是 Hermes 的家

更容易理解的方式是:

  • config.yaml = 总控制面板
  • .env = 保险柜
  • memories/ = 长期记忆本
  • skills/ = 能力手册库
  • sessions/ = 聊天档案馆
  • profiles/ = 分身柜
  • hermes-agent/ = 程序发动机源码

Hermes 不是一个聊天窗口,而是一个长期运行的 AI 助手系统。

所以它的家目录,天然就会比普通 App 更复杂。

~/.hermes 分成 5 层,就不容易乱

1. 设定层

  • config.yaml
  • .env
  • SOUL.md
  • auth.json

它决定 Hermes 是谁、默认怎么工作。

2. 记忆与能力层

  • memories/
  • skills/

它决定 Hermes 记住了什么、会做什么。

3. 历史与运行记录层

  • sessions/
  • logs/
  • cron/

它决定你能不能回看过去到底发生了什么。

4. 分身与隔离层

  • profiles/
  • sandboxes/

它决定 Hermes 能不能分出不同身份和工作模式。

5. 程序本体层

  • hermes-agent/

它决定 Hermes 代码到底是怎么跑起来的。

最值得先看懂的 7 个位置

config.yaml

总控制面板。想改默认行为,优先看这里。

.env

保险柜。能看,但别乱传。

memories/

长期记忆区。解释了为什么 Hermes 下次还会继续记得你。

skills/

能力手册库。每个 skill 都像一次成功经验的沉淀。

sessions/

聊天档案馆。回答的是:过去到底发生了什么。

profiles/

分身柜。回答的是:一套 Hermes 能不能拥有多个彼此隔离的身份与工作环境。

hermes-agent/

程序发动机源码。回答的是:这个系统底层到底怎么实现。

为什么 profiles/ 是真正的分水岭

很多人刚开始用 Hermes,一套配置当然够用。

但一旦你的场景变多,问题就会一起出现:

  • 日常助手和研究助手想要不同配置
  • 高质量推理和便宜跑想要不同模型
  • 某些任务需要完全隔离的记忆
  • 某些长期项目不想和日常上下文混在一起

这时候 profile 的意义就出来了。

它不是换皮肤,而是换整套工作环境。

所以我现在越来越觉得,profile 不是小功能,而是一个长期 AI 助手系统从“堆在一起”走向“可分工、可隔离、可维护”的关键节点。

为什么很多人会把 Hermes 用成黑盒

因为他们只看见了入口,没有看见层次。

典型表现是:

  • 把 skills 当成普通提示词堆
  • 把 sessions 当成普通聊天记录
  • 把 profile 当成普通配置切换
  • hermes-agent/ 当成完全可以忽略的源码目录

但如果你先问自己: “我现在看到的东西,到底属于哪一层?”

很多问题会立刻变简单。

给第一次接触的人,一条最推荐的参观路线

如果你只有 10 分钟,我建议按这个顺序看:

  1. ~/.hermes
  2. config.yaml + SOUL.md
  3. memories/ + skills/
  4. sessions/ + logs/ + cron/
  5. profiles/ + hermes-agent/

走完这条路线,你对 Hermes 的感觉会从“会几个命令”升级成“知道整个系统怎么分层”。

结尾

~/.hermes 不是一个“放配置的隐藏文件夹”而已。

它其实是 Hermes 这个长期 AI 助手系统的家:

  • config/.env/SOUL 决定它怎么工作
  • memories/skills 决定它记住什么、会做什么
  • sessions/logs/cron 决定你能不能回看历史和排障
  • profiles 决定它能不能分身
  • hermes-agent 决定它底层代码是怎么实现的

你真正用好 Hermes 的分水岭,不是把命令背得多熟,而是从某一天开始,你不再把它当黑盒。