2026 Hermes Agent Skills
进阶全攻略
从 SKILL.md 到 GEPA 自进化
已部署 Hermes Agent 却只会用默认技能?本文面向进阶开发者,系统讲解 Nous Research 技能体系的全链路:Skills 与 Memory/Prompt 的本质差异、agentskills.io 标准下的 SKILL.md 编写、Progressive Disclosure 三级 Token 控制、Skill Bundles 一键工作流、条件激活、社区 Tap 发布,以及 GEPA + DSPy 让技能自动进化的前沿机制;文末附对比表、五步隔离试跑清单与 FAQ。
📋 本文目录
01 · 为什么 Hermes Agent 的技能系统值得单独深入研究?
2026 年初,Nous Research 发布 Hermes Agent,两个月内 GitHub Star 突破 16 万,成为 AI Agent 领域增速最快的开源项目之一。它的核心卖点不是更大的模型,而是一个理念:「the agent that grows with you」——Agent 会随着使用越来越懂你。这一切的底层实现,就是它的技能(Skills)系统。
与传统「一次性 Prompt」不同,Hermes 的技能体系是一套有标准、可进化、跨会话持久的程序性记忆。本文不聊基础安装(可参考站内 Hermes 保姆级安装教程),直接进入进阶区域:渐进加载如何控制 Token 成本、条件激活如何感知环境、Bundles 如何一键触发复杂工作流、GEPA 如何让技能越跑越好。
02 · 三大痛点:为什么「会装 Hermes」不等于「会用 Skills」
- Token 成本失控:把所有 SOP 写进系统 Prompt,每次会话都消耗数千 Token;未利用 Progressive Disclosure 时,50 个技能的完整正文可能撑爆上下文。
- 技能激活不精准:description 写得太模糊,LLM 在不相关场景误加载技能,或在需要时找不到正确技能;缺少条件激活时,免费/付费工具切换需手动改配置。
- 团队知识无法沉淀与进化:个人 Prompt 无法版本化、无法发布给团队订阅;技能质量停滞,没有 GEPA 等机制从执行轨迹中自动改进 SKILL.md。
03 · 核心概念速览:Skills ≠ Prompts,Skills ≠ Memory
| 维度 | 普通 Prompt | Memory(记忆) | Skills(技能) |
|---|---|---|---|
| 持久性 | 当前对话 | 跨会话,永久 | 跨会话,永久 |
| 加载时机 | 每次都在上下文中 | 每次会话自动注入 | 按需加载 |
| Token 成本 | 每次消耗 | 小而稳定 | 激活前零消耗 |
| 内容类型 | 任意意图描述 | 用户偏好/事实 | 程序性步骤 |
| 可共享性 | 不方便 | 私有 | 可发布为社区 Tap |
核心口诀:Prompt = 便利贴(当次有效);Memory = 便签本(永久笔记,随时在手边);Skill = SOP 手册(步骤化流程,需要时翻阅)。
04 · SKILL.md 格式深度解析(agentskills.io 开放标准)
所有 Hermes Skills 遵循 agentskills.io 开放标准,确保跨 Agent 可移植(Hermes、Claude Code、Cursor 均可使用)。
---
name: my-skill
description: |
Use when the user needs to [...].
Handles [...] and [...].
version: 1.0.0
license: MIT
compatibility: Requires git, docker
allowed-tools: Bash(git:*) Read
metadata:
hermes:
tags: [devops, automation]
category: software-development
related_skills: [github-pr-workflow, test-driven-development]
requires_toolsets: [terminal]
fallback_for_toolsets: [web]
---
# My Skill Title
## Overview
## When to Use
## Procedure
## Common Pitfalls
## Verification Checklist关键字段:name 必填,小写字母+连字符,≤64 字符;description 必填,≤1024 字符,建议以「Use when...」开头——这是 Level 0 路由的全部信息;metadata.hermes 承载条件激活与分类标签。
技能目录结构(模块化设计)
~/.hermes/skills/
└── my-category/
└── my-skill/
├── SKILL.md # 主文件(建议 ≤500 行)
├── references/ # API 参考(按需加载)
├── templates/ # 可复用模板
└── scripts/ # Agent 可直接执行的脚本05 · Progressive Disclosure 三级加载机制
这是 Token 控制的核心。Hermes 不会一次性把所有技能正文塞进上下文。
| 加载层级 | 内容 | 触发时机 | Token 成本 |
|---|---|---|---|
| Level 0 | name + description | 每次会话开始 | 全部技能合计约 ~3K |
| Level 1 | 完整 SKILL.md 正文 | /skill-name 或 LLM 判断需要 | 取决于文件长度 |
| Level 2 | references/ scripts/ | 执行时 LLM 判断需要 | 按需,单文件 |
写作建议:description 写清「什么时候用」比「是什么」更重要;长参考资料拆到 references/,保持主文件在 500 行以内。
06 · Skill Bundles:一条命令触发完整工作流
Skill Bundles 是 Hermes 2026 新增的强力特性。Bundle 是轻量 YAML 文件,把多个相关技能打包成一个斜杠命令;执行 /bundle-name 时,所有列出的技能同时加载。
文件位置:~/.hermes/skill-bundles/<slug>.yaml
name: backend-dev
description: |
Full backend feature workflow — code review, TDD, and PR management.
skills:
- github-code-review
- test-driven-development
- github-pr-workflow
instruction: |
Always write failing tests first before implementation.
Never push directly to main.Bundle 优先级规则:Bundle 与单个 Skill 同名时,Bundle 优先;列出的 Skill 未安装时跳过而不报错;Bundle 不修改系统提示,不会导致 Prompt Cache 失效。
CLI 快速创建:
hermes bundles create backend-dev \
--skills github-code-review,test-driven-development,github-pr-workflow \
--instruction "Always write failing tests first"进阶场景包括 AI 研究员工作流(arxiv + deep-research + plan + excalidraw)与 MLOps 部署流水线(vllm + llama-cpp + github-pr-workflow + systematic-debugging)。
07 · 条件激活:智能感知环境
技能可根据当前会话中工具的可用性,自动显示或隐藏。在 metadata.hermes 下配置:
| 字段 | 行为逻辑 |
|---|---|
requires_toolsets | 列出的工具集不存在时,隐藏此技能 |
requires_tools | 列出的工具不存在时,隐藏此技能 |
fallback_for_toolsets | 列出的工具集存在时,隐藏(作为备选) |
fallback_for_tools | 列出的工具存在时,隐藏(作为备选) |
经典场景:DuckDuckGo 搜索技能配置 fallback_for_tools: [web_search]——当用户配置了 FIRECRAWL_KEY / BRAVE_SEARCH_KEY 时,付费 web_search 激活,DuckDuckGo 自动隐藏,节省 Token;API 不可用时备选方案自动浮现。
08 · Skills Hub 与开源社区生态
官方安装渠道:
hermes skills install official/research/arxiv
hermes skills install https://example.com/SKILL.md --name my-skill
hermes skills install github:openai/skills/k8s
hermes skills tap add github:my-org/my-skills| 仓库 | 亮点 | Stars |
|---|---|---|
| ChuckSRQ/awesome-hermes-skills | 生产级合集,含 Deep Research、MLOps | 67+ |
| amanning3390/hermeshub | 社区注册中心,提示注入检测 | 166+ |
| kevinnft/ai-agent-skills | 191 技能,跨 Hermes/Claude/Cursor | 10+ |
| NousResearch/hermes-agent | 官方权威来源 | 160k+ |
使用 skills-ref validate ./my-skill 验证格式合规性;技能资产不绑定单一平台。
09 · 发布你自己的 Skill Tap:团队与社区共享
通过 GitHub 仓库作为 Tap,让整个团队甚至社区订阅你的技能集。
my-skills-tap/
├── skills.sh.json
├── mlops/vllm-deploy/SKILL.md
├── research/paper-summarizer/SKILL.md
└── README.md团队部署:
hermes skills tap add github:your-org/your-skills-tap
hermes skills tap add github:your-org/private-skills --token $GH_TOKEN
hermes skills tap update
hermes skills tap list版本管理建议:将 ~/.hermes/skills/ 纳入 Git,跨设备 git pull && hermes skills reset 同步。
10 · Self-Evolving Skills:GEPA + DSPy 让技能自动进化
GEPA(Genetic-Pareto Prompt Evolution) 是 2026 年 ICLR Oral 成果,集成于 hermes-agent-self-evolution。核心思路:不微调模型权重,通过分析执行轨迹、生成变体、多目标帕累托优化来改进 SKILL.md 文本本身。成本约 $2–10/次(纯 API,无需 GPU)。
五阶段进化流程:① 执行轨迹收集(SQLite)→ ② 反思式失败分析 → ③ 靶向变异(10–20 个 SKILL.md 变体)→ ④ 多目标帕累托评估(成功率 × Token 效率 × 速度)→ ⑤ 人工审查 PR 后上线。
git clone https://github.com/NousResearch/hermes-agent-self-evolution
export HERMES_AGENT_PATH=~/.hermes
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source sessiondb四大安全护栏:全量测试套件 100% 通过;Skills ≤ 15KB、工具描述 ≤ 500 字符;Prompt 缓存兼容;语义保留检查。官方路线图 Phase 1(SKILL.md)已实现,Phase 2–5 覆盖工具描述、系统提示、工具实现代码与全自动循环。
实验性:可将 Claude Code / Gemini CLI 轨迹联合喂给优化器(--eval-source mixed --trace-dirs ~/.claude/traces,~/.hermes/sessions)。
11 · Plugin 技能:扩展 Hermes 的边界
插件将技能打包成命名空间(plugin:skill),不出现在默认 skills_list,只在用户明确调用时激活(Opt-in)。
skill_view("superpowers:writing-plans")
# plugin.yaml
name: my-hermes-plugin
skills:
- name: writing-plans
path: skills/writing-plans/SKILL.md12 · 技能编写进阶技巧(工程师视角)
- description 决定激活精度:写清触发条件与排除场景,避免「Helps with code」这类模糊描述。
- Pitfalls 是质量分水岭:包含具体失败模式、根因与可操作的修复步骤(如 GitHub API 限流、大 diff Token 溢出)。
- 脚本化:在 Procedure 中引用
scripts/,失败时 fallback 到references/manual-extract.md。 - 大小控制:<500 行全放 SKILL.md;500–1000 行拆 references;>15KB 超过 GEPA 限制必须拆分。
- skill_manage:Agent 可通过
skill_manage(action='patch'| 'create')动态维护技能;建议在 config.yaml 开启agent_writes_require_approval: true。
13 · 实战案例:技术博客工作流 Skills
name: blog-workflow
description: Full tech blog writing workflow.
skills:
- seo-keyword-research
- outline-generator
- code-example-validator
- bilingual-checker
- publish-to-platform
instruction: |
Always research SEO keywords before writing.
Ensure all code examples are tested and runnable.自定义 seo-keyword-research 技能可在写作前输出中英文关键词矩阵(主词 3–5 个 + 长尾 10–15 个),并交叉参考掘金热榜、Dev.to trending、HN 趋势。
14 · 常见问题 FAQ
Q: Skills 和 MCP 有什么区别?
Skills 是程序性知识文档(教 Agent 怎么做),MCP 是工具接口(给 Agent 额外调用能力)。两者互补。
Q: 为什么 Skill 改了但 Agent 还在用旧版?
当前会话不生效,需 /reset 或安装时加 --now(会导致 Prompt Cache 失效)。
Q: GEPA 进化出的技能安全吗?
四大护栏 + 人工 PR review;仍建议逐 diff 审查。
Q: 如何在 Claude Code 中复用?
复制 SKILL.md 到 ~/.claude/skills/,或使用 kevinnft/ai-agent-skills 一键多端安装。
Q: 中文内容影响 Token 效率吗?
中文字符约 1–1.5 token/字,与英文相近;但 description 建议保留英文或中英双语,LLM 匹配更精确。
延伸阅读:Hermes 中文文档、Cursor Agent Skill 入门指南、Hermes 30 天实测。
15 · 租用 Mac 隔离试跑 Hermes Skills(五步清单)
在 Linux VPS 或 Windows 上虽可跑 Hermes Gateway,但涉及 Apple 生态脚本、Xcode 相关 Skill、Keychain 操作时仍依赖真实 macOS。更稳妥的做法是在可丢弃的租用 Mac 上完成 Skills / Bundles / GEPA 试跑,再决定是否月租常驻。
- 租用 Apple Silicon 节点:选择 Mac mini M4 起、预装 Homebrew 的 macOS,SSH 接入;计费见 M 系列算力定价。
- 安装 Hermes 并跑 doctor:按官方脚本安装,
hermes doctor验收 Gateway 与工具集。 - 安装官方 Skill + 自定义 Tap:
hermes skills install与hermes skills tap add,验证 Level 0/1 加载与 Token 消耗。 - 创建 Bundle 并试跑工作流:编写 YAML Bundle,观察多技能同时加载是否按 instruction 执行。
- 记录验收后释放:保存终端输出与 session 轨迹(供 GEPA 使用);确认无误后结束租用,避免持续计费。
Linux VPS 跑 Hermes 适合轻量 Gateway 与纯 API 调用,但无法验证 macOS 专属 Skill、Apple 签名链路与本地 Keychain 权限;个人笔记本 7×24 常驻则面临散热、电费与主力机污染风险。按天租用 Mac 提供与生产一致的 Apple Silicon 环境,成本远低于误配置导致的 API 账单失控或连夜排障;若决定长期常驻,可对照站内 Hermes 硬件选型文 评估月租 vs 自购。