能力
Hermes Agent Skills 中文指南
Hermes Agent 的 Skills 是一种把 LLM “教会做某件事” 的轻量协议:一个 SKILL.md(描述什么时候触发)+ 可选的脚本工具,模型在对话里自动决定要不要用。本文讲 Skills Hub 上的 652 个开源技能怎么装、自己怎么写一个、和 Claude Code Skills 的关系。
什么是 Skills
Skills 是 Hermes 在 2026 年初引入的协议,灵感来自 Anthropic 的 Claude Code Skills,但适配了 Hermes 的多渠道场景。一个 Skill 就是一个目录,包含:
SKILL.md:描述这个 skill 干什么、什么时候触发、以及详细的执行步骤。模型把 SKILL.md 加进 system prompt 来决定要不要用它。scripts/(可选):bash/python/node 脚本,模型可以通过 shell exec 调用。resources/(可选):模板、配置文件等静态资源。
核心思路:不需要 fine-tune 模型,只用几百字的提示加几个脚本就能让 Hermes 学会一个新任务。比如“给我画一个 logo”、“查一下这个域名的注册情况”、“部署一个 Telegram 机器人” —— 都可以做成 Skill。
Skills Hub:652 个开源技能
Skills Hub(github.com/openclaw/skills-hub)是社区维护的 Skill 仓库,截至本文写作有 652 个技能,涵盖:
- 开发:git-push、code-review、deploy、create-pr、runtest 等
- 运维:server-cleanup、docker-prune、ssh-tunnel、cloudflare-purge 等
- SEO/营销:seo-blog-creator、find-page-opportunities、producthunt-search、reddit-search 等
- 设计:logo-creator、banner-creator、mockup、awesome-design-md(59 个品牌)
- 沟通:support-email、send-notification、interactive-telegram、live-chat-reply 等
- 文档:docx、pptx、xlsx、pdf 操作
- 14 种 Personality(用户人格):marketer、developer、teacher、therapist、writer 等
装一个 Skill
# 装 Skills Hub 上的 logo-creator
hermes skills install logo-creator
# 装本地目录里的自定义 skill
hermes skills install /path/to/my-skill
# 列出已安装的 skills
hermes skills list
# 卸载
hermes skills remove logo-creator装好后 Hermes 会把 SKILL.md 注入到下次对话的 system prompt 里。模型看到合适的触发词(比如“给我画一个 logo”)就会调用这个 skill 的脚本。
自己写一个 Skill:目录结构
my-skill/
├── SKILL.md # 描述:什么时候触发、做什么
├── scripts/
│ ├── do-thing.sh
│ └── helper.py
└── resources/
└── template.txtSKILL.md 的格式(前置 YAML frontmatter + 正文):
---
name: weather-report
description: 查询某个城市的天气。用户问 "X 城市天气怎么样"、"今天 X 下雨吗"、"X 气温多少" 时触发。
---
# Weather Report
调用 OpenWeather API 查天气。
## 步骤
1. 用户问到城市名,先用 `scripts/get-coords.sh "城市名"` 拿经纬度
2. 用 `scripts/fetch-weather.sh <lat> <lng>` 拿天气数据
3. 把 JSON 翻译成中文回复用户
## 注意
- 城市名歧义时(比如 "亚特兰大" 既是美国又是希腊有同名)要先和用户确认
- 中国城市优先用 ZH 格式:beijing, shanghai
关键:description 字段要写清楚“什么时候用”。模型靠这个决定是否激活 skill。写得太宽泛会乱触发,写得太窄会漏触发。
Skills 怎么注入到 system prompt
Hermes 启动时扫描 ~/.hermes/skills/ 目录下的所有 SKILL.md,把它们 concat 起来加到模型的 system prompt。具体做法:
- 每个 SKILL.md 的 frontmatter(name + description)默认全部加进 system prompt
- 正文部分(步骤、注意事项)只在 description 触发匹配时才加载(懒加载,省 token)
- 14 个 Personality skill 是特殊一档,直接换掉整个 system prompt 的人格部分
Skills 和 OpenClaw Plugins 有什么区别
- OpenClaw Plugin:是渠道适配器(telegram、discord、wechat),只管把消息从某平台搬到 LLM 再搬回去。
- Hermes Skill:是任务级能力(写邮件、查天气、生成图片),模型在对话里按需调用。
一个 Hermes 实例同时跑多个 plugins(5 个渠道)+ 多个 skills(10-50 个能力)是常见配置。Plugin 决定“消息从哪儿来”,Skill 决定“能干什么”。
Skills 和 Claude Code Skills 的关系
Hermes Skills 协议设计上和 Claude Code Skills 兼容 —— SKILL.md 的 frontmatter 字段、目录结构、触发逻辑基本一致。意味着大多数 Claude Code 写的 skill 可以直接 hermes skills install 跑起来。
不同点:
- Claude Code Skill 假设单一终端环境,Hermes Skill 要考虑多渠道(Telegram 群、Discord 频道、Web UI 各自的回复机制)
- Hermes Skill 可以指定“只在某些渠道激活”(比如“只在 Telegram 私聊里用”)
- Skills Hub 上的 652 个技能针对 Hermes 调优过,直接装最稳
Publish 一个 Skill 到 Skills Hub
- fork
github.com/openclaw/skills-hub - 把 skill 目录放到
skills/<your-skill-name>/ - SKILL.md 必须有 description(用来 indexing)和清晰的步骤
- 在 README.md 顶部表格里加一行:name、description、category
- 提 PR,社区会 review 触发词是否清晰、有没有踩别的 skill 的领域
常见问题
装了 skill 但模型不调用
- SKILL.md 的 description 写得太抽象 —— 改成具体场景:“用户说 'X' 时触发”
- 触发词和别的 skill 重叠 —— 模型选了别的 skill
- 模型本身不够强 —— Skills 在 GPT-4 / Claude Sonnet 4+ / Gemini 2 Pro 上效果最好,弱模型可能忽略
多个 skills 互相冲突
比如你装了 send-email 和 support-email,两个都能发邮件。模型可能随机选一个。 解决:在 description 里明确“什么时候用 A 不用 B”。
Skill 想用环境变量怎么传
Hermes 把容器的环境变量原封不动透给 skill 的脚本。所以在 hermes 启动时传:
docker run -d \
-e OPENWEATHER_API_KEY="..." \
-e GITHUB_TOKEN="..." \
ghcr.io/nousresearch/hermes-agent:latest托管版:OpenClaw Launch
OpenClaw Launch 给每个 Hermes 实例预装了一组精选 skills(约 30 个常用),并支持在 Dashboard 一键装 / 卸载 Skills Hub 上的任意 skill。不用 SSH 进容器手动装。 首月 $3,之后 $6/月。
下一步
- Hermes Agent 中文介绍
- 安装与配置
- OpenAI 兼容 API — 通过 API 调 Skills
- OpenClaw Skills
- Skills 详细教程