大多数 AI Agent 记住结果却忘记方法。下次遇到同样的任务,从头摸索。

Hermes 不一样。它不只保存对话历史,还能在需要时精确加载可复用的操作知识,不需要时完全排除在上下文之外——甚至可以把辛苦摸索出来的工作流直接变成可复用的 Skill,留到以后用。

这改变了 Agent 随着时间变强的方式。

Skills 是什么

Hermes 的 Skill 不是提示片段。

它是一个按需加载的知识文档,教会 Hermes 如何处理某一类任务:工作流、工具特定流程、故障排查模式、格式规范,或者运营 playbook。

核心区分:Skills 是程序记忆(procedural memory)

  • Memory 存持久事实
  • Sessions 存发生了什么
  • Skills 存如何把事情做好

这个区分很关键——它让 Hermes 可以保留可复用的方法,而不会在每次对话里塞进成百上千页的指令。

没有 Skill 系统会怎样

Agent 通常只有两个糟糕的选择:

把一切都塞进 Prompt:成本快速膨胀,上下文塞满了对当前任务无关的指令。

指望模型记住正确的模式:有时管用,但任务需要精确命令、已知坑、特定步骤或特定输出格式时就会断裂。

Hermes 的解法是按需加载

不把所有工作流一直带着跑,Hermes 只维护一个紧凑的 Skills 索引,只有任务真正需要时才加载完整 Skill。Agent 变得更能干,而每次对话不一定更重。

渐进式披露模型

Hermes 对 Skills 使用三层渐进式披露:

Level 0 — skills_list():Hermes 看到 Skills 名称、描述和分类的紧凑索引。

Level 1 — skill_view(name):加载相关 Skill 的完整 SKILL.md。

Level 2 — skill_view(name, file_path):只在需要更多细节时,加载 Skill 内部某个具体的参考文件、模板或脚本。

这意味着 Agent 不会在每次会话里拖入所有 Skill 的完整内容。只在任务值得这个成本时,才加载更深的上下文。

Skill 文件结构

Skills 的事实来源:~/.hermes/skills/

该目录包含:

  • 安装时打包进来的 Skills
  • 从 Hub 安装的 Skills
  • Agent 自己创建的 Skills
  • Agent 自己更新的 Skills

典型结构:

~/.hermes/skills/<category>/<skill-name>/SKILL.md

一个 Skill 还可以包含:

  • references/(参考文件)
  • templates/(模板)
  • scripts/(脚本)
  • assets/(资产)

强 Skill 的构成要素

Hermes Skill 通常是一个 Markdown 文档,带 YAML frontmatter 和结构化指令。一个真正有用的 Skill 包括:

  • 这个 Skill 做什么
  • 何时使用
  • 精确的操作步骤
  • 命令示例
  • 已知坑
  • 验证步骤

这就是 Skill 比泛泛的「专家模式提示」更有价值的原因。

好 Skill 不是只告诉模型「你很擅长 GitHub PR」,而是:

  • 何时使用这个工作流
  • 首先检查什么
  • 运行哪些命令
  • 检查哪些失败模式
  • 完成前如何验证结果

Skills 的调用方式

Slash 命令(在对话中直接调用):

/plan Design a rollout for migrating our auth provider /github-pr-workflow Create a PR for the auth refactor /excalidraw

CLI

hermes skills list hermes skills search docker hermes skills install official/research/arxiv hermes skills inspect openai/skills/k8s

自然对话中自动加载:当任务匹配时,Hermes 自己决定加载相关 Skill。这是重要部分——Skills 不只是手动快捷键,也是 Hermes 在真实工作中更智能运作的方式。

Skills 给 Agent 带来的具体优势

把 Skills 做好,Agent 就从「一个尽力而为的聪明模型」变成「拥有可复用操作程序的 Agent」:

  1. 更好的稳定性:如果一个工作流有经过验证的序列,Hermes 可以重复它,而不是每次都重新摸索。

  2. 更少的 token 浪费:完整指令在需要之前不出现在上下文里。

  3. 更好的专业化:Hermes 可以承载更多能力,而不膨胀普通对话。

  4. 更好的迭代:工作流改进了,Skill 可以直接更新,而不用指望模型记住新版本。

  5. 更好的积累:一旦有用方法变成 Skill,以后的会话立即受益。

三层存储的正确区分

这是最容易混淆的地方:

存什么例子
Skills 存可复用流程如何 review GitHub PR、如何起草 X 帖子、如何验证本地安装
Memory 存持久事实用户偏好、环境细节、约定俗成、反复纠正的事项
Sessions 存对话历史某个项目 thread 里发生了什么、尝试过什么、什么有用什么没用

一个简单规则:

  • Hermes 应该记住一个事实 → 存 Memory
  • Hermes 应该回想起一段过去对话 → 存 Sessions
  • Hermes 应该复用一套方法 → 存 Skill

Skills 是真正的自我进化机制

Hermes 最强的地方之一:Skills 不是预装好的静态文档。Hermes 可以通过 Skill 管理流程创建和更新 Skills。

这意味着:完成一个复杂任务、搞定一个棘手 Bug、摸索出一个不明显的工作流之后,Agent 可以把学到的东西直接变成一个可复用的 Skill,留到以后用。

很多 Agent 系统说「能学习」,但实际上只是存更多上下文。Hermes 的模型更干净:

  • 事实 → Memory
  • 历史 → Sessions
  • 方法论 → Skills

这种分离让系统更可维护,也更可复用。


总结:Skills 是 Hermes 能随时间变得更有用、而不是随时间变得更臃肿的核心机制之一。它让 Agent 把专业流程放在一边,只在相关时才加载,把成功的工作流变成可复用的操作知识。