全部步骤
阶段 4·步骤 12·动手·12 分钟

Skills — 教 Hermes 你的工作流

先从 hub 装一个,再自己写一个。这里是 Hermes 变厉害的地方。

一个 skill 是一包指令,教 Hermes 怎么把某件事做好。把它想成“你随时能请进对话里的专家”。

没有 skills,Hermes 聪明但笼统。有 skills 之后,它知道你们团队怎么开 PR,你们公司怎么部署到 Kubernetes,你喜欢架构图怎么画,你怎么跑 axolotl 微调任务。Skills 把一个通用 Agent 变成“你的” Agent。

Skills 放在哪里

装好的 skill 都在 ~/.hermes/skills/ 下面。每个 skill 是一个目录,至少有一个文件 SKILL.md,加上可选的子文件夹:references、templates、scripts、assets。

~/.hermes/skills/
  mlops/axolotl/
    SKILL.md
    references/
    templates/
  devops/deploy-k8s/
    SKILL.md

SKILL.md 就是指令本身。其他文件夹是可选的上下文,skill 需要的时候 Hermes 会拉进来。

逛 skill hub

Hermes 内置了一个 skill hub。先逛一下看看有什么:

hermes skills browse

东西挺多——部署、微调、代码评审、图片生成、PDF 处理、GitHub 工作流。先滚动看看。

知道自己想找什么的话,搜更快:

hermes skills search kubernetes
hermes skills search pdf

也可以按来源过滤:

hermes skills browse --source official

来源包括 official(Hermes 团队维护的)、skills-sh(社区 hub)、well-known(从其他站点发现的)、还有直接的 github

装一个

我们装一个小而实用的。跑:

hermes skills search pdf

挑一个看起来有用的——官方源里通常有一个 PDF 读取或处理 skill。然后装:

hermes skills install openai/skills/pdf

具体名字看你搜的时候 hub 里有什么,用搜索结果里的那个名字。

装完之后看一眼你的 skills 列表:

hermes skills list

你应该能在里面看到 PDF skill。

用它

开一个会话:

hermes

像斜杠命令那样调用它:

/pdf 把 /tmp/document.pdf 里的文字抽出来

skill 的名字就是斜杠命令的名字。Hermes 加载这个 skill 的指令,按指令做事。

检查点 — 你的斜杠命令跑通了(哪怕只是测试用的 PDF),说明 skills 系统接好了。

写你第一个 skill

装 skill 简单,写 skill 也只是稍微难一点——而且这才是真正产生价值的地方。

我们做一个小 skill,教 Hermes 按你个人的习惯写 commit message。

先建目录:

mkdir -p ~/.hermes/skills/personal/commit-style

在里面创建 SKILL.md:

nano ~/.hermes/skills/personal/commit-style/SKILL.md

粘贴下面这些:

---
name: commit-style
description: 按我喜欢的方式写 commit message。
version: 1.0.0
---

# Commit message 风格

我让你写 commit message 的时候,遵守这些规则:

- 第一行不超过 50 字符
- 第一行用祈使句("Add X",不是 "Added X")
- 第一行用小写动词开头,不加前缀、不加 emoji、不带 ticket 号
- 如果要说更多,空一行写一段,讲**为什么**,不是**做了什么**
- 不要用 "refactor" 当动词,选一个更具体的

# 例子

好的:
- `add retry logic to upload endpoint`
- `fix off-by-one in pagination cursor`
- `drop unused dependency on moment`

不好的:
- `Updated files`(不够具体)
- `refactor: clean up`(模糊,用了禁用词)
- `feat(api): Add retry logic to upload endpoint`(带前缀和大写)

被要求写 commit message 时,只输出消息本身。除非我问,不要额外解释。

保存。

用你自己的 skill

确认 Hermes 看到它了:

hermes skills list

应该能看到 commit-style 在列表里。开一个对话试试:

hermes
/commit-style 我刚给 upload 端点加了带指数退避的重试逻辑。写个 commit message。

Hermes 会按你写的规则回一个 commit message。

检查点 — 你自己的斜杠命令刚刚跑通了。从这里往后,一切都是同一个模式的变种:写指令、保存成 SKILL.md、用斜杠命令调用。

Skills 还能做什么

一个 skill 可以不止一个 Markdown 文件。references/ 可以放可复用的上下文。scripts/ 可以放 skill 会调的可执行脚本。templates/ 可以放起始模板文件。Skills 可以要求特定的 toolset、索要配置值、甚至带自己的环境变量。

第一次写,先保持简单——一个文件、清晰的指令、好的例子。复杂的功能等真的需要了再加。

你也可以分享 skill。把 skill 目录放到一个 Git 仓库里,别人就能从 hub 装它。你的 commit 风格可以变成你们团队的 commit 风格。

下一步:MCP,把 Hermes 接到它原生不带的外部工具上。