Hermes Agent Skills 為何值得單獨深入研究?
與傳統「一次性 Prompt」不同,Hermes 的技能體系是一套有標準、可進化、跨工作階段持久的程序性記憶。安裝入門可參考手把手安裝教學,記憶機制可參考三層記憶篇;本篇直接進入進階區域。
Token 成本失控:把所有 SOP 寫進系統 Prompt,每次工作階段全量載入;Skills 的 Progressive Disclosure 在啟用前零消耗。
工作流碎片化:程式碼審查、TDD、PR 管理要逐個 /skill-name 觸發;Skill Bundles 一條指令同時載入整套技能。
環境感知缺失:付費 web_search 與免費 DuckDuckGo 同時出現在提示詞;條件啟用讓技能依工具可用性自動顯示或隱藏。
技能品質停滯:手寫 Skill 寫完即固化;GEPA(Genetic-Pareto Prompt Evolution,ICLR 2026 Oral)透過執行軌跡自動改進 SKILL.md 文字,無須微調模型權重。
團隊共享困難:技能散落在個人目錄;Tap 儲存庫 + hermes skills tap add 實現一鍵訂閱整庫技能。
| 維度 | 普通 Prompt | Memory(記憶) | Skills(技能) |
|---|---|---|---|
| 持久性 | 當前對話 | 跨工作階段,永久 | 跨工作階段,永久 |
| 載入時機 | 每次都在上下文中 | 每次工作階段自動注入 | 按需載入 |
| Token 成本 | 每次消耗 | 小而穩定 | 啟用前零消耗 |
| 內容類型 | 任意意圖描述 | 使用者偏好/事實 | 程序性步驟 |
| 維護者 | 使用者手動 | Agent 自動 | 使用者 + Agent 均可 |
| 可共享性 | 不方便 | 私有 | 可發布為社群 Tap |
口訣:Prompt = 便利貼;Memory = 便簽本;Skill = SOP 手冊——需要時翻閱,不需要時不佔上下文。
SKILL.md 格式深度解析與 Progressive Disclosure
所有 Hermes Skills 遵循 agentskills.io 開放標準,確保跨 Agent 可移植(Hermes、Claude Code、Cursor 均可使用)。可用 skills-ref validate ./my-skill 驗證格式合規性。
---
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
建議目錄結構:
~/.hermes/skills/
└── my-category/
└── my-skill/
├── SKILL.md # 核心步驟,建議 ≤500 行
├── references/ # API 參考,按需載入
├── templates/ # 可複用範本
└── scripts/ # Agent 可直接執行的腳本
| 載入層級 | 內容 | 觸發時機 | Token 成本 |
|---|---|---|---|
| Level 0 | name + description | 每次工作階段開始,所有技能 | ~3K(全部技能合計) |
| Level 1 | 完整 SKILL.md 正文 | 使用者 /skill-name 或 LLM 判斷需要 | 取決於檔案長度 |
| Level 2 | references/ scripts/ 檔案 | LLM 執行時判斷需要 | 按需,單檔案 |
撰寫建議:description 是 Level 0 的全部資訊,LLM 靠它決定是否載入完整技能。寫清「什麼時候用」比「是什麼」更重要;建議以 Use when... 開頭,≤1024 字元。
Skill Bundles 與條件啟用:一鍵工作流與環境感知
Skill Bundles 是 Hermes 2026 新增特性:輕量 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"
條件啟用(Conditional Activation)讓技能依當前工作階段工具可用性自動顯示或隱藏。在 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] 自動從提示詞消失;API 不可用時備選方案自動浮現。平台感知範例:requires_toolsets: [messaging] + platforms: [telegram, discord],透過 hermes skills TUI 可為不同平台獨立開關技能。
Skills Hub、Tap 發布、GEPA 自進化與進階撰寫
官方安裝管道:
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 hermes skills tap update hermes skills tap list
| 儲存庫 | 亮點 | Stars |
|---|---|---|
| awesome-hermes-skills | 正式環境級合集,Deep Research、MLOps、Apple 整合 | 67 |
| hermeshub | 社群註冊中心,提示注入安全掃描 | 166 |
| ai-agent-skills | 191 個技能,28 分類,跨 Hermes/Claude/Cursor | 10 |
| hermes-agent | 官方權威來源,含撰寫規範 | — |
發布團隊 Tap:建立 GitHub 儲存庫,用 skills.sh.json 控制 Hub 分類,團隊成員執行 hermes skills tap add github:your-org/your-skills-tap;私有儲存庫加 --token $GH_TOKEN。建議將 ~/.hermes/skills/ 納入 Git 版本控制實現跨裝置同步。
GEPA + DSPy 自進化(hermes-agent-self-evolution):不微調模型權重,透過分析執行軌跡、產生變體、多目標帕累托最佳化改進技能文字。每次最佳化約 $2–10(純 API,無須 GPU)。五階段流程:① 執行軌跡收集(SQLite);② 反思式失敗分析;③ 靶向變異(10–20 個 SKILL.md 變體);④ 多目標帕累托評估(成功率 × Token 效率 × 速度);⑤ 人工審查 PR。
export HERMES_AGENT_PATH=~/.hermes
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source sessiondb
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source mixed \
--trace-dirs ~/.claude/traces,~/.hermes/sessions
四大安全護欄:全量 pytest 100% 通過;Skills ≤ 15KB;Prompt Cache 相容;語意保留檢查。官方進化路線圖:Phase 1 Skill 檔案(已實現)→ Phase 2 工具描述 → Phase 3 系統提示 → Phase 4 工具實作程式碼 → Phase 5 全自動迴圈。
Plugin 技能以 plugin:skill 命名空間載入,不出現在預設 skills_list,僅使用者明確呼叫時啟用,外掛內技能可相互引用。進階撰寫要點:description 寫清觸發條件;Common Pitfalls 含具體失敗模式與修復步驟;大技能拆到 references/(>500 行建議拆分,>15KB 超 GEPA 限制);skill_manage 工具讓 Agent 動態維護技能,可在 config.yaml 設 agent_writes_require_approval: true 開啟人工審批閘門。
安裝 Hermes 並驗收:hermes doctor 通過,Gateway 7×24 在線(見安裝教學)。
撰寫首個 SKILL.md:依 agentskills.io 標準,description 以 Use when... 開頭,正文含 Procedure 與 Pitfalls。
建立 Skill Bundle:hermes bundles create 或手寫 YAML 到 ~/.hermes/skill-bundles/。
設定條件啟用:在 metadata.hermes 新增 requires_toolsets / fallback_for_tools。
訂閱社群 Tap:hermes skills tap add github:...,定期 tap update。
可選 GEPA 進化:複製 self-evolution 儲存庫,用 sessiondb 軌跡執行 evolve_skill,人工審查 PR 後合併。
部落格工作流實戰案例與可引用技術數據
建構 blog-workflow Bundle 範例:打包 seo-keyword-research、outline-generator、code-example-validator、bilingual-checker、publish-to-platform,instruction 要求先調研 SEO 關鍵字、確保程式碼可執行、產生中英雙語標題。自訂 seo-keyword-research 技能在 metadata.hermes 設 requires_toolsets: [web],Procedure 涵蓋中文長尾(「X 怎麼用」「X 教學」)與英文長尾(「how to X」「X vs Y」)及平台熱榜交叉驗證。
Level 0 全技能開銷:約 3K tokens(所有技能 name+description 合計),對比全量注入 SOP 可省一個數量級。
GEPA 單次最佳化成本:約 $2–10 API 呼叫,無須 GPU;每次產生 10–20 個變體經帕累托篩選。
技能大小硬限制:GEPA 護欄要求 Skills ≤ 15KB,工具描述 ≤ 500 字元;SKILL.md 建議 ≤500 行,>1000 行強烈建議拆分。
注意:Skill 修改在當前工作階段不生效,需 /reset 或安裝加 --now(會導致 Prompt Cache 失效)。description 建議保留英文或中英雙語,底層 LLM 對英文 description 匹配更精確。
筆電合蓋、x86 VPS 無 macOS 路徑、本機磁碟無版本管理——這些宿主方案都會打斷 Skill 複利與 GEPA 軌跡累積。對於需要 7×24 Gateway、Skill 自進化與跨裝置同步的正式環境,MESHLAUNCH 的 Mac Mini M4 雲端裸金屬租用通常是更優解:獨占 Apple Silicon、launchd 原生守護、按天/週/月彈性下單,與 Hermes 官方 macOS 路徑最契合。延伸閱讀:Hermes 中文文件、GEPA 演算法、DSPy 框架。
Skills 是程序性知識文件(教 Agent 如何完成某項工作),MCP 是工具介面(為 Agent 提供額外工具呼叫能力)。兩者互補:MCP 提供資料庫存取,Skill 教如何正確執行資料庫遷移。詳見MCP Server 開發教學。
Skill 修改在當前工作階段不會生效,需要 /reset 開啟新工作階段,或安裝時加 --now 強制重新整理(會導致 Prompt Cache 失效,消耗更多 Token)。