2026 Hermes Agent Skills 進階全攻略:SKILL.md、Bundles 與 GEPA 自進化決策指南
2026 年初 Nous Research 發布 Hermes Agent,兩個月內 GitHub Star 突破 16 萬——核心賣點不是更大模型,而是 "the agent that grows with you"。這一切的底層,正是可標準化、可進化、跨工作階段持久的 Skills(技能)系統。本文跳過入門安裝(可參考《Hermes Agent 保姆級安裝教學》),直接進入進階:SKILL.md 格式、Progressive Disclosure、Skill Bundles、條件啟用、Tap 發布,以及 GEPA + DSPy 如何讓技能自動越跑越好。
1. 三大痛點:為什麼 Hermes Skills 系統值得單獨深入研究
許多開發者把 Hermes 當「又一個 ChatGPT 殼」,卻忽略了 Skills 才是長期 ROI 最高的模組:
- Token 成本失控:把 SOP 全塞進 System Prompt,每次對話都燒 Token;Skills 的 Progressive Disclosure 讓啟用前零消耗。
- 知識無法沉澱:一次性 Prompt 隨工作階段消失;Skills 是跨工作階段的程序性記憶,可版本化、可共享、可進化。
- 工作流重複觸發:複雜任務需逐個
/skill-name;Skill Bundles 把多技能打包成一條斜線指令。
進階讀者應聚焦五個問題:Progressive Disclosure 如何控 Token?條件啟用怎麼用?Bundles 如何一鍵觸發?DSPy + GEPA 如何讓 Skills 自動改進?社群有哪些現成優質儲存庫?下文逐一拆解。
2. 核心概念速覽:Skills ≠ Prompts,Skills ≠ Memory
混淆三者會導致架構選型錯誤。核心記憶口訣:Prompt = 便利貼(當次有效);Memory = 便條本(永久筆記,隨時在手邊);Skill = SOP 手冊(步驟化流程,需要時翻閱)。
| 維度 | 普通 Prompt | Memory(記憶) | Skills(技能) |
|---|---|---|---|
| 持久性 | 目前對話 | 跨工作階段,永久 | 跨工作階段,永久 |
| 載入時機 | 每次都在上下文中 | 每次工作階段自動注入 | 按需載入(關鍵差異) |
| Token 成本 | 每次消耗 | 小而穩定 | 啟用前零消耗 |
| 內容類型 | 任意意圖描述 | 使用者偏好/事實 | 程序性步驟(如何完成某件事) |
| 維護者 | 使用者手動 | Agent 自動 | 使用者 + Agent 均可 |
| 可共享性 | 不方便 | 私有 | 可發布為社群 Tap |
3. SKILL.md 格式深度解析與 Progressive Disclosure
3.1 基礎結構(agentskills.io 開放標準)
所有 Hermes Skills 遵循 agentskills.io 開放標準,確保跨 Agent 可移植(Hermes、Claude Code、Cursor 均可使用)。
---
name: my-skill # 必填:小寫字母+連字號,≤64字元
description: | # 必填:≤1024字元,建議以"Use when..."開頭
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
3.2 技能目錄結構(模組化設計)
~/.hermes/skills/
└── my-category/
└── my-skill/
├── SKILL.md # 主檔案(核心步驟,建議 ≤500 行)
├── references/ # API 參考(按需載入)
├── templates/ # 可複用範本
└── scripts/ # Agent 可直接執行的腳本
3.3 Progressive Disclosure 三級載入(Token 控制核心)
| 載入層級 | 內容 | 觸發時機 | Token 成本 |
|---|---|---|---|
| Level 0 | name + description |
每次工作階段開始,所有技能 | ~3K(全部技能合計) |
| Level 1 | 完整 SKILL.md 正文 | 使用者 /skill-name 或 LLM 判斷需要 |
取決於檔案長度 |
| Level 2 | references/ scripts/ 檔案 | LLM 執行時判斷需要 | 按需,單檔案 |
撰寫建議:description 是 Level 0 的全部資訊,LLM 靠它決定是否載入完整技能。寫清「什麼時候用」比「是什麼」更重要。
4. 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.
進階場景範例:
- AI 研究員工作流(research-session):arxiv + deep-research + plan + excalidraw,每次工作階段先查近期論文並畫架構圖。
- MLOps 部署流水線(mlops-deploy):vllm + llama-cpp + github-pr-workflow + systematic-debugging,部署前後跑推理基準並記錄量化設定。
Bundle 優先順序規則:
- Bundle 與單一 Skill 同名時,Bundle 優先。
- Bundle 中 Skill 未安裝時跳過而不報錯,載入時提示缺失。
- Bundle 不修改系統提示,不會導致 Prompt Cache 失效(Token 友善)。
hermes bundles create backend-dev \
--skills github-code-review,test-driven-development,github-pr-workflow \
--instruction "Always write failing tests first"
5. 條件啟用(Conditional Activation):智慧感知環境
技能可根據目前工作階段中工具的可用性自動顯示或隱藏。在 metadata.hermes 下設定:
metadata:
hermes:
requires_toolsets: [web]
requires_tools: [web_search]
fallback_for_toolsets: [browser]
fallback_for_tools: [browser_navigate]
| 欄位 | 行為邏輯 |
|---|---|
| requires_toolsets | 列出的工具集不存在時,隱藏此技能 |
| requires_tools | 列出的工具不存在時,隱藏此技能 |
| fallback_for_toolsets | 列出的工具集存在時,隱藏此技能(作為備選方案) |
| fallback_for_tools | 列出的工具存在時,隱藏此技能 |
經典場景:免費/付費搜尋智慧切換。設定 duckduckgo-search 的 fallback_for_tools: [web_search]:當使用者設定了 FIRECRAWL_KEY / BRAVE_SEARCH_KEY 時,付費 web_search 啟用,DuckDuckGo 技能自動消失以節省 Token;API 不可用時備選方案自動浮現。
平台感知範例:telegram-notify 可設 requires_toolsets: [messaging] 與 platforms: [telegram, discord];透過 hermes skills TUI 可為 CLI、Telegram、Discord 獨立開關技能。
6. Skills Hub 與開源社群生態
6.1 官方安裝渠道
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
6.2 值得關注的開源技能儲存庫
| 儲存庫 | 描述 | 亮點 |
|---|---|---|
| ChuckSRQ/awesome-hermes-skills | 精選生產級技能合集 | Deep Research、MLOps、Apple 整合;23 技能整合 GitHub Copilot |
| amanning3390/hermeshub | 社群技能註冊中心 | 安全掃描認證、API 與市場功能 |
| kevinnft/ai-agent-skills | 191 個技能,28 分類 | 支援 Hermes/Claude Code/Cursor 一鍵安裝 |
| NousResearch/hermes-agent | 官方主儲存庫 | 權威來源,含全部內建 Skills 與撰寫規範 |
agentskills.io 開放標準意味著 Skills 可在 Hermes、Claude Code、Cursor、OpenCode 之間跨平台使用;可用 skills-ref validate ./my-skill 驗證格式合規性。
7. 發布你自己的 Skill Tap:團隊與社群共享
建立 GitHub 儲存庫作為 Tap,讓整個團隊甚至社群訂閱你的技能集——這是目前最少有人講的進階技巧。
my-skills-tap/
├── skills.sh.json
├── mlops/vllm-deploy/SKILL.md
├── research/paper-summarizer/SKILL.md
└── README.md
skills.sh.json 控制 Hub 分類展示;團隊部署:
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 同步後重建內建技能。
8. Self-Evolving Skills:用 GEPA + DSPy 讓技能自動進化
這是 Hermes 最前沿、區別於同類工具的核心競爭力。GEPA(Genetic-Pareto Prompt Evolution) 是 2026 年 ICLR Oral 成果,整合於 hermes-agent-self-evolution。核心思路:不微調模型權重,只透過分析執行軌跡、產生變體、多目標帕累托最佳化來改進 SKILL.md 文字。每次最佳化約 $2–10(純 API 呼叫,無需 GPU)。
8.1 GEPA 五階段進化流程
- Stage 1 執行軌跡收集:從 SQLite 讀取全量推理軌跡(工具呼叫、分支、錯誤)。
- Stage 2 反思式失敗分析:LLM 產生「可操作側資訊」——不是「失敗了」,而是「為什麼失敗」。
- Stage 3 靶向變異:針對失敗原因產生 10–20 個 SKILL.md 變體。
- Stage 4 多目標帕累托評估:同時最佳化成功率 × Token 效率 × 速度。
- Stage 5 人工審查 PR:最佳變體 → 產生 PR → 人工核准後上線。
8.2 快速上手
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
8.3 四大安全護欄
- 全量測試套件:
pytest tests/ -q必須 100% 通過。 - 大小限制:Skills ≤ 15KB,工具描述 ≤ 500 字元。
- Prompt Cache 相容性:不能在工作階段中途修改導致快取失效。
- 語意保留檢查:不能偏離技能原始核心目的。
8.4 五階段進化路線圖(官方狀態)
| 階段 | 最佳化目標 | 引擎 | 狀態 |
|---|---|---|---|
| Phase 1 | Skill 檔案(SKILL.md) | DSPy + GEPA | ✅ 已實作 |
| Phase 2 | 工具描述 | DSPy + GEPA | 🔲 計劃中 |
| Phase 3 | 系統提示片段 | DSPy + GEPA | 🔲 計劃中 |
| Phase 4 | 工具實作程式碼 | Darwinian Evolver | 🔲 計劃中 |
| Phase 5 | 持續改進循環 | 自動化流水線 | 🔲 計劃中 |
跨平台軌跡聯合:Skills 遵循 agentskills.io,可將 Claude Code 或 Gemini CLI 軌跡餵給 GEPA:
python -m evolution.skills.evolve_skill \
--skill github-code-review --iterations 10 --eval-source mixed \
--trace-dirs ~/.claude/traces,~/.hermes/sessions
9. 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.md
- name: editing
path: skills/editing/SKILL.md
10. 技能撰寫進階技巧(工程師視角)
10.1 description 決定啟用精度
❌ 太模糊:Helps with code. → ✅ 明確觸發:Use when reviewing a pull request... Do NOT use for writing new code.
10.2 Pitfalls 是品質分水嶺
高品質 Pitfalls 應含:具體失敗模式、根因分析、可操作修復步驟——例如 CSS selector 脆弱性、GitHub API 限速、大 diff Token 溢出及對應 chunking 策略。
10.3 腳本化與 skill_manage
Procedure 中引用 scripts/extract_schema.py,失敗時載入 references/manual-extract.md。Agent 可透過 skill_manage(action='patch'| 'create') 動態維護技能;在 config.yaml 設 skills.agent_writes_require_approval: true 開啟人工審批門。
10.4 技能大小控制
| 技能大小 | 建議 |
|---|---|
| < 500 行 | 全部放在 SKILL.md |
| 500–1000 行 | 詳細參考移至 references/ |
| > 1000 行 | 強烈建議拆分;考慮是否是兩個技能 |
| > 15KB | 超過 GEPA 限制,必須拆分 |
11. 實戰案例:為你的技術部落格工作流建構 Skills
建構 blog-workflow Bundle,打包 seo-keyword-research、outline-generator、code-example-validator、bilingual-checker、publish-to-platform:
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.
Generate both Chinese and English title options.
自訂 seo-keyword-research 技能應在工作階段開始時檢索中英文長尾詞(「X 怎麼用」「how to X」「X vs Y」),輸出 3–5 主詞 + 10–15 長尾詞矩陣,並注意「Agent / 智能體 / 代理」等平台術語差異。
12. 常見問題 FAQ
Q: Skills 和 MCP 有什麼差別?
Skills 是程序性知識文件;MCP 是工具介面。MCP 提供資料庫存取,Skill 教 Agent 如何正確執行遷移——兩者互補。
Q: 為什麼 Skill 改了但 Agent 還在用舊版?
需 /reset 開新工作階段,或安裝加 --now(會失效 Prompt Cache)。
Q: GEPA 進化出的技能安全嗎?
四大護欄 + 人工 PR 審查;語意漂移偵測確保不偏離原始目的,仍建議 review 每個 diff。
Q: 如何在 Claude Code 中複用 Hermes Skills?
複製到 ~/.claude/skills/ 或使用 kevinnft/ai-agent-skills 多端安裝腳本。
Q: Skill 中文內容影響 Token 效率嗎?
中文每字約 1–1.5 token,與英文相近;但 description 建議保留英文(或中英雙語),LLM 對英文 description 匹配更精確。
13. 延伸閱讀與遠端 Mac 7×24 決策
13.1 官方與社群資源
- Hermes Agent 官方文件 · 中文文件
- Skills System 完整參考 · agentskills.io 開放標準
- GEPA 自進化工具 · GEPA 演算法 · DSPy 框架
- 站內互鏈:《Cursor Agent Skill 完整指南》《OpenRouter CLI 與 Hermes 選型》
13.2 部署場景決策矩陣
| 場景 | 本機 Mac / 筆電 | 遠端 Mac 7×24(SFTPMAC) |
|---|---|---|
| GEPA 進化 + sessiondb | 合蓋斷線,軌跡不完整 | 持續收集工作階段軌跡,進化樣本更充分 |
| Telegram/Discord Gateway | 睡眠/Wi-Fi 切換導致 Bot 離線 | launchd 常駐,Gateway 常線上 |
| 團隊 Tap 同步 | 每人本機 ~/.hermes 不一致 | 統一節點 + SFTP/rsync 同步 skills 目錄 |
| Skill Bundles 長工作階段 | 記憶體與 Token 與其他 App 搶資源 | Apple Silicon 統一記憶體,多 Skill 並行更穩 |
13.3 總結:從本機實驗到生產級 Agent 節點
本文涵蓋 Hermes Skills 進階全鏈路:概念對照 → SKILL.md 與 Progressive Disclosure → Skill Bundles → 條件啟用 → Hub 生態 → Tap 發布 → GEPA 自進化 → Plugin 擴展 → 撰寫技巧 → 部落格工作流實戰。掌握這套體系,你的 Agent 將從「一次性 Prompt 消耗品」升級為可版本化、可共享、可自我改進的程序性資產。
然而,本機執行 Hermes 有明確邊界:筆電合蓋即斷線、GEPA 的 sessiondb 軌跡採集不完整、Telegram Gateway 因睡眠離線、團隊 Tap 在各開發者機器上版本漂移。需要 7×24 常線上 收集進化軌跡、託管 Gateway、或統一同步 ~/.hermes/skills/ 的團隊,在 Apple Silicon 遠端 Mac 上執行 Hermes 更可靠——原生 launchd 常駐、與 macOS 同構的工具鏈、SFTP/rsync 安全同步技能目錄。
SFTPMAC 遠端 Mac 租賃面向 Hermes Agent Skills 工作流:7×24 Gateway、GEPA 軌跡持續採集、團隊 Tap 目錄同步,比「家用 Mac 兼 Agent 宿主」更適合把 Skills 體系當生產入口。從寫第一個 SKILL.md 開始,今天就能讓 Agent 越用越強。