2026 年初 Nous Research 发布 Hermes Agent,两个月 GitHub Star 突破 16 万,核心理念是 "the agent that grows with you"——Agent 会随使用越来越懂你。底层支撑这一切的,是它的技能(Skills)系统:一套有标准、可进化、跨会话持久的程序性记忆。若你已装完 Hermes(见站内安装部署文),本文将带你从进阶视角吃透:SKILL.md 格式、Progressive Disclosure 控 Token、Skill Bundles 一键工作流、条件激活、Tap 社区发布、GEPA+DSPy 自进化,以及开源生态里可直接 tap 的优质技能仓库。
与传统「一次性 Prompt」不同,Hermes Skills 遵循 agentskills.io 开放标准,可在 Hermes、Claude Code、Cursor 之间跨平台移植。核心记忆口诀:Prompt = 便利贴(当次有效)、Memory = 便签本(永久笔记,每次自动注入)、Skill = SOP 手册(步骤化流程,需要时翻阅)。
| 维度 | 普通 Prompt | Memory(记忆) | Skills(技能) |
|---|---|---|---|
| 持久性 | 当前对话 | 跨会话,永久 | 跨会话,永久 |
| 加载时机 | 每次都在上下文 | 每次会话自动注入 | 按需加载(关键差异) |
| Token 成本 | 每次消耗 | 小而稳定 | 激活前零消耗 |
| 内容类型 | 任意意图描述 | 用户偏好/事实 | 程序性步骤(如何做) |
| 可共享性 | 不方便 | 私有 | 可发布为社区 Tap |
痛点:把 Skill 当 Prompt 全文塞进上下文,Token 成本随技能数量线性爆炸。
痛点:多个相关技能需逐个 /skill-name 触发,复杂工作流断裂。
痛点:免费 DuckDuckGo 与付费 web_search 同时暴露,提示词冗余浪费 Token。
痛点:团队每人重复造轮子,技能无法一键订阅共享。
痛点:技能写了不会进化,同类错误在会话中反复出现。
本文交付:从 SKILL.md 标准到 GEPA 自进化的完整进阶路线图,覆盖全部核心机制。
所有 Hermes Skills 遵循 agentskills.io 标准。推荐目录结构:~/.hermes/skills/my-category/my-skill/ 下含 SKILL.md(核心步骤,建议 ≤500 行)、references/(API 参考按需加载)、templates/(可复用模板)、scripts/(Agent 可直接执行的脚本)。
---
name: my-skill # 必填:小写字母+连字符,≤64字符
description: | # 必填:≤1024字符,建议以"Use when..."开头
Use when the user needs to [...].
version: 1.0.0
metadata:
hermes:
tags: [devops, automation]
requires_toolsets: [terminal]
fallback_for_toolsets: [web]
---
# My Skill Title
## Overview / When to Use / Procedure / Common Pitfalls / Verification Checklist
| 加载层级 | 内容 | 触发时机 | Token 成本 |
|---|---|---|---|
| Level 0 | name + description | 每次会话开始,所有技能 | 全部技能合计约 3K |
| Level 1 | 完整 SKILL.md 正文 | 用户 /skill-name 或 LLM 判断需要 | 取决于文件长度 |
| Level 2 | references/、scripts/ | LLM 执行时判断需要 | 按需,单文件 |
写作建议:description 是 Level 0 的全部信息,LLM 靠它决定是否加载完整技能。写清「什么时候用」比「是什么」更重要。技能 >1000 行应拆分到 references/;>15KB 超过 GEPA 进化限制,必须拆分。
Bundle 是轻量 YAML 文件,把多个相关技能打包成一个斜杠命令。执行 /bundle-name 时所有列出的技能同时加载。文件位置:~/.hermes/skill-bundles/<slug>.yaml。Bundle 与单个 Skill 同名时Bundle 优先;未安装的技能跳过不报错;Bundle 不修改系统提示,Token 友好。
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. # CLI 快速创建: # hermes bundles create backend-dev \ # --skills github-code-review,test-driven-development,github-pr-workflow
技能可根据当前会话工具可用性自动显示或隐藏。在 metadata.hermes 下配置四种规则:
| 字段 | 行为逻辑 |
|---|---|
requires_toolsets | 列出的工具集不存在时,隐藏此技能 |
requires_tools | 列出的工具不存在时,隐藏此技能 |
fallback_for_toolsets | 列出的工具集存在时,隐藏(作为备选) |
fallback_for_tools | 列出的工具存在时,隐藏(作为备选) |
经典场景:配置 FIRECRAWL_KEY / BRAVE_SEARCH_KEY 后付费 web_search 激活,DuckDuckGo 技能通过 fallback_for_tools: [web_search] 自动从提示词消失,节省 Token;API 不可用时备选方案自动浮现。平台感知技能可用 requires_toolsets: [messaging] + platforms: [telegram, discord],并通过 hermes skills TUI 为不同平台独立开关。
hermes skills install official/research/arxiv hermes skills install github:openai/skills/k8s hermes skills tap add github:my-org/my-skills hermes skills tap update && hermes skills tap list
| 仓库 | 亮点 | Stars |
|---|---|---|
| ChuckSRQ/awesome-hermes-skills | 精选生产级技能,含 Deep Research、MLOps、Apple 集成 | 67 |
| amanning3390/hermeshub | 社区技能注册中心,每个技能经过提示注入检测 | 166 |
| kevinnft/ai-agent-skills | 191 个技能,28 分类,跨 Hermes/Claude/Cursor | 10 |
| NousResearch/hermes-agent | 官方权威来源,含所有内置 Skills | — |
创建 GitHub 仓库作为 Tap,团队一键订阅:hermes skills tap add github:your-org/your-skills-tap。私有仓库加 --token $GH_TOKEN。可选 skills.sh.json 控制 Hub 分类展示。建议将 ~/.hermes/skills/ 纳入 Git 版本控制实现跨设备同步。
GEPA(Genetic-Pareto Prompt Evolution)不微调模型权重,只通过分析执行轨迹、生成变体、多目标帕累托优化来改进 SKILL.md 文本本身。每次优化约 $2–10(纯 API 调用,无需 GPU)。五阶段流程:① 执行轨迹收集(SQLite)→ ② 反思式失败分析 → ③ 靶向变异(10–20 个变体)→ ④ 多目标帕累托评估(成功率 × Token 效率 × 速度)→ ⑤ 人工审查 PR。
git clone https://github.com/NousResearch/hermes-agent-self-evolution
cd hermes-agent-self-evolution && pip install -r requirements.txt
export HERMES_AGENT_PATH=~/.hermes
# 合成数据入门
python -m evolution.skills.evolve_skill \
--skill github-code-review --iterations 10 --eval-source synthetic
# 真实会话数据(效果更好)
python -m evolution.skills.evolve_skill \
--skill github-code-review --iterations 10 --eval-source sessiondb
# 联合 Claude/Gemini 轨迹(实验性)
python -m evolution.skills.evolve_skill \
--skill github-code-review --eval-source mixed \
--trace-dirs ~/.claude/traces,~/.hermes/sessions
四大安全护栏:① 全量测试套件 100% 通过;② Skills ≤15KB、工具描述 ≤500 字符;③ 不破坏 Prompt Cache 兼容性;④ 语义保留检查不偏离原始目的。官方进化路线图:Phase 1 Skill 文件(✅ 已实现)→ Phase 2 工具描述 → Phase 3 系统提示 → Phase 4 工具实现代码 → Phase 5 全自动持续改进。
插件技能以 plugin:skill 命名空间加载(如 skill_view("superpowers:writing-plans")),不出现在默认列表、仅 Opt-in 激活。Agent 可通过 skill_manage(action='patch'| 'create', ...) 动态维护技能;在 config.yaml 设置 skills.agent_writes_require_approval: true 开启人工审批门。
按 agentskills.io 写 frontmatter:name(小写连字符 ≤64 字符)、description 以 "Use when..." 开头(≤1024 字符),写清触发条件与排除场景。
搭建模块化目录:主文件 ≤500 行,详细 API 放 references/,可执行脚本放 scripts/,用 skills-ref validate ./my-skill 验证格式。
创建 Skill Bundle:在 ~/.hermes/skill-bundles/ 写 YAML 或用 hermes bundles create CLI,把相关工作流技能打包。
配置条件激活:在 metadata.hermes 设置 requires_toolsets / fallback_for_tools,实现免费/付费工具智能切换。
发布 Tap 仓库:GitHub 建仓库含分类目录 + 可选 skills.sh.json,团队执行 hermes skills tap add github:your-org/tap。
版本控制同步:cd ~/.hermes/skills && git init,跨设备 git pull && hermes skills reset。
运行 GEPA 进化:克隆 hermes-agent-self-evolution,用 evolve_skill 针对失败轨迹优化 SKILL.md,人工审查 PR 后合并。
开启审批门:生产环境设 agent_writes_require_approval: true,Pitfalls 章节写具体失败模式与修复步骤(技能质量分水岭)。
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.
~/.claude/skills/ 或使用 kevinnft/ai-agent-skills 一键多端安装。
Skills 是程序性知识,MCP 是工具接口——两者互补。Skill 修改后当前会话不生效,需 /reset 或 --now 刷新。description 建议保留英文(或中英双语),底层 LLM 对英文 description 匹配更精确。
笔记本合盖、低配 VPS 缺 macOS 路径、家用 Wi-Fi 断网,都会让 Gateway 与 GEPA 进化任务在关键时刻掉线。对需要稳定 7×24 跑 Hermes Skills 复利、并保留 macOS 原生 launchd 守护的生产环境,NodeMini 的 Mac Mini M4 云端租赁通常比「将就的笔记本 + 手动重启」更省心——具体机型见 租赁价格说明。
Skills 是程序性知识文档(教 Agent 怎么做),MCP 是工具接口(给 Agent 额外工具调用能力)。两者互补:MCP 提供数据库访问,Skill 教如何正确执行数据库迁移。
当前会话缓存了旧版,需 /reset 开新会话,或安装时加 --now 强制刷新(会导致 Prompt Cache 失效,消耗更多 Token)。
通过四大护栏(全量测试、大小限制、语义保留、人工 PR 审查)约束,语义漂移检测确保不偏离原始目的。仍建议人工 review 每个 PR diff。