SKILL.md · Skill Bundles · условная активация · Tap · GEPA + DSPy · проверка на удалённом Mac
Для кого: вы прошли гид по установке Hermes, но по-прежнему вставляете инструкции деплоя, PR и аудита в каждый диалог — сжигая токены, пока агент забывает как работать. Вывод: Hermes Agent от Nous Research набрал более 160 000 звёзд на GitHub примерно за два месяца — не из-за более крупной модели, а благодаря «агенту, который растёт вместе с вами»: стандартизированной, эволюционируемой, кросс-сессионной системе Skills. Дальше: сравнение концепций → SKILL.md и progressive loading → Skill Bundles → условная активация → открытая экосистема и Tap → GEPA из пяти этапов → Plugin skills и советы по авторству → кейс блог-workflow → FAQ. Для проверки macOS-скриптов сочетайте материал с арендой VNC Mac от VNCMac.
В начале 2026 года Nous Research выпустил Hermes Agent — один из самых быстрорастущих open-source AI-agent проектов. В отличие от одноразовых промптов, Hermes Skills — это стандартизированный, эволюционируемый, кросс-сессионный слой процедурной памяти: они учат агента как что-то делать, а не какой факт запомнить.
Этот гид пропускает базовую настройку и сразу переходит к продвинутым темам:
Progressive Disclosure: как тратить ноль токенов до активации и разворачивать полный SKILL.md только когда нужно?
Conditional Activation: автоматическое показ/скрытие skills в зависимости от доступных инструментов — умное переключение между бесплатными и платными API.
Skill Bundles: одна slash-команда загружает несколько связанных skills и запускает полный workflow.
DSPy + GEPA: эволюция текста skill без изменения весов модели — каждый прогон стоит примерно $2–10 API-расходов, GPU не нужен.
Открытая экосистема: awesome-hermes-skills, hermeshub, kevinnft/ai-agent-skills и другие — подписка напрямую через Tap.
Путаница этих трёх сущностей — самая частая ошибка новичков. Простая мнемоника: Prompt = стикер (действует только в этом ходе); Memory = блокнот (постоянные заметки, всегда под рукой); Skill = SOP-руководство (пошаговая процедура, открывается по необходимости).
| Измерение | Обычный Prompt | Memory | Skills |
|---|---|---|---|
| Персистентность | Текущий диалог | Кросс-сессия, постоянно | Кросс-сессия, постоянно |
| Момент загрузки | Всегда в контексте | Автоинъекция каждую сессию | По запросу |
| Стоимость токенов | Каждый ход | Небольшая и стабильная | Ноль до активации |
| Тип контента | Любое описание намерения | Предпочтения / факты пользователя | Процедурные шаги |
| Обслуживание | Вручную пользователем | Автоматически агентом | Пользователь + агент |
| Расшаривание | Неудобно | Приватно | Публикуется как community Tap |
Все Hermes Skills следуют открытому стандарту agentskills.io, переносимому между 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 Checklistmy-category/my-skill/ ├── SKILL.md # Основные шаги; держите ≤500 строк ├── references/ # API-доки, загружаются по запросу ├── templates/ # Переиспользуемые шаблоны └── scripts/ # Скрипты, которые агент может выполнить
| Уровень | Содержимое | Триггер | Стоимость токенов |
|---|---|---|---|
| Level 0 | name + description | Старт каждой сессии, все skills | ~3K (все skills суммарно) |
| Level 1 | Полное тело SKILL.md | /skill-name или LLM решает, что нужно | Зависит от длины файла |
| Level 2 | references/ scripts/ | LLM решает во время выполнения | По запросу, за файл |
Совет по написанию: description — единственный сигнал Level 0; LLM использует его, чтобы решить, загружать ли полный skill. Опишите когда использовать яснее, чем что это; начинайте с Use when... и укладывайтесь в 1024 символа.
Skill Bundles — дополнение Hermes 2026 года и одна из самых недооценённых возможностей. Bundle — лёгкий YAML-файл, упаковывающий несколько связанных skills в одну slash-команду; запуск /bundle-name загружает все перечисленные skills сразу.
Расположение файла: ~/.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 workflow может объединить arxiv + deep-research + plan + excalidraw; MLOps deploy — vllm + llama-cpp + github-pr-workflow + systematic-debugging.
| Правило | Поведение |
|---|---|
| Коллизия имён | Bundle имеет приоритет над одиночным Skill |
| Отсутствующий skill | Пропускается без ошибки; предупреждение при загрузке |
| Prompt Cache | Bundle не меняет system prompt — экономия токенов |
hermes bundles create backend-dev \ --skills github-code-review,test-driven-development,github-pr-workflow \ --instruction "Always write failing tests first"
В блоке metadata.hermes настройте четыре правила активации, чтобы skills автоматически показывались или скрывались в зависимости от доступных инструментов в текущей сессии:
| Поле | Логика |
|---|---|
| requires_toolsets | Скрыть skill, если перечисленные toolsets отсутствуют |
| requires_tools | Скрыть skill, если перечисленные tools отсутствуют |
| fallback_for_toolsets | Скрыть, когда перечисленные toolsets есть (роль fallback) |
| fallback_for_tools | Скрыть, когда перечисленные tools есть (роль fallback) |
Классический сценарий — переключение бесплатных и платных tools: когда пользователь настраивает FIRECRAWL_KEY или BRAVE_SEARCH_KEY, активируется платный skill web_search, а DuckDuckGo fallback исчезает из промпта — экономия токенов. Когда API недоступен, fallback возвращается автоматически.
metadata:
hermes:
fallback_for_tools: [web_search] # автоскрытие при наличии платного web_searchЧерез TUI hermes skills можно также включать и отключать отдельные skills по платформе — CLI, Telegram, Discord и другим.
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 |
|---|---|---|
| awesome-hermes-skills | Production-коллекция: Deep Research, MLOps, Apple integration | 67 |
| hermeshub | Community registry со security scanning | 166 |
| ai-agent-skills | 191 skills, 28 категорий, кросс Hermes/Claude/Cursor | 10 |
| hermes-agent | Официальный репозиторий — авторитетный источник и спецификация | — |
Открытый стандарт agentskills.io означает, что skill-активы не привязаны к одной платформе. Проверяйте соответствие формату через skills-ref validate ./my-skill.
Создайте GitHub-репозиторий как Tap, чтобы команда — или wider community — могла подписаться на ваш набор skills:
my-skills-tap/ ├── skills.sh.json ├── mlops/vllm-deploy/SKILL.md └── research/paper-summarizer/SKILL.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 на другом устройстве пересоберите built-in skills для синхронизации.
GEPA (Genetic-Pareto Prompt Evolution) — результат ICLR Oral 2026, интегрирован в hermes-agent-self-evolution. Идея: без fine-tuning весов модели анализировать execution traces, генерировать варианты и применять multi-objective Pareto-оптимизацию для улучшения самого текста skill. Каждый прогон оптимизации стоит примерно $2–10 API-расходов — GPU не требуется.
Сбор execution traces: чтение полных reasoning traces из SQLite — tool calls, ветвления, ошибки.
Reflective failure analysis: LLM формирует actionable side information — не просто «упало», а почему упало.
Targeted mutation: генерация 10–20 вариантов SKILL.md, нацеленных на корневую причину сбоя.
Multi-objective Pareto evaluation: одновременная оптимизация success rate × token efficiency × speed.
Human PR review: лучший вариант → PR → merge после одобления человеком.
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
# Реальные session data (лучший результат)
python -m evolution.skills.evolve_skill \
--skill github-code-review --iterations 10 --eval-source sessiondbПолный test suite pytest tests/ -q должен проходить на 100%
Лимиты размера: Skills ≤ 15KB, описания tools ≤ 500 символов
Совместимость с prompt cache: без mid-session правок, инвалидирующих cache
Проверка сохранения семантики: skill не должен уходить от исходной цели
| Фаза | Цель оптимизации | Движок | Статус |
|---|---|---|---|
| Phase 1 | Skill files (SKILL.md) | DSPy + GEPA | ✅ Shipped |
| Phase 2 | Tool descriptions | DSPy + GEPA | 🔲 Planned |
| Phase 3 | System prompt fragments | DSPy + GEPA | 🔲 Planned |
| Phase 4 | Tool implementation code | Darwinian Evolver | 🔲 Planned |
| Phase 5 | Continuous improvement loop | Automated pipeline | 🔲 Planned |
Поскольку Skills следуют стандарту agentskills.io, traces из Claude Code или Gemini CLI тоже можно подавать в GEPA: --eval-source mixed --trace-dirs ~/.claude/traces,~/.hermes/sessions
Plugins упаковывают skills в namespace (plugin:skill): они не попадают в default skills_list (меньше шума); активируются только по явному вызову пользователя (opt-in); skills внутри plugin могут ссылаться друг на друга.
name: my-hermes-plugin
skills:
- name: writing-plans
path: skills/writing-plans/SKILL.md
- name: editing
path: skills/editing/SKILL.md
# Загрузка: skill_view("superpowers:writing-plans")description определяет точность активации: избегайте размытых строк вроде Helps with code. Указывайте условия триггера, scope и явные исключения (Do NOT use for...).
Pitfalls отличают хорошие skills от отличных: каждый failure mode требует root-cause analysis и actionable fix — не общих советов.
| Размер skill | Рекомендация |
|---|---|
| < 500 строк | Держите всё в SKILL.md |
| 500–1000 строк | Детали переносите в references/ |
| > 1000 строк | Сильно дробите; возможно, это два skills |
| > 15KB | Превышает лимит GEPA — нужно разделить |
skill_manage позволяет агенту поддерживать собственные skills: поддерживает действия patch и create. Установите skills.agent_writes_require_approval: true в config.yaml, чтобы записи на диск требовали одобления человека.
Соберите Bundle blog-workflow, упаковывающий SEO research, генерацию outline, валидацию кода, bilingual checks и publishing 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. Generate both Chinese and English title options.
Кастомный skill seo-keyword-research может в Procedure указать: китайские long-tail паттерны вроде «X 怎么用» и «X 教程»; английские — «X tutorial», «how to X», «X vs Y»; перекрёстную проверку Juejin trending и Dev.to hot posts; вывод 3–5 primary keywords плюс матрицу 10–15 long-tail.
Hermes Agent требует uptime 24/7 и накопления локальных traces для работы GEPA-эволюции (см. наш гид по трёхслойной архитектуре памяти). Skills можно писать на Windows или Linux, но macOS-специфичные scripts/ и проверку Telegram Gateway лучше делать на удалённом Mac.
| Сценарий | Только SSH | SSH + VNC | Рекомендация |
|---|---|---|---|
| Редактирование SKILL.md / Bundle YAML | ✅ | ✅ | Достаточно SSH |
| Запуск bash script validation | ✅ | ✅ | Достаточно SSH |
| Telegram / Discord QR pairing | ❌ | ✅ | Нужен VNC |
| GEPA evolution + manual PR review | ✅ | Опционально | SSH + локальный diff review |
| macOS Keychain / TCC permissions | ❌ | ✅ | Нужен VNC |
Арендуйте Mac Mini M4 на месяц и установите Hermes по SSH (см. гид по установке).
Создайте первый SKILL.md в ~/.hermes/skills/; проверьте через skills-ref validate.
Создайте Skill Bundle и проверьте multi-skill loading через /bundle-name.
Завершите Telegram Gateway QR pairing и health checks hermes doctor в VNC-сессии.
После накопления session traces запустите GEPA evolve_skill на удалённом узле и проверьте сгенерированный PR.
Официальный справочник от Nous Research.
Читать →Репозиторий hermes-agent-self-evolution.
Читать →Спецификация SKILL.md для Cursor / Claude Code.
Читать →Skills — документы процедурных знаний, которые учат агента выполнять задачу. MCP — интерфейс инструментов, расширяющий tool-calling. Они дополняют друг друга: MCP даёт доступ к БД; Skill учит агента правильно провести миграцию.
Изменения Skill не применяются в текущей сессии. Выполните /reset для новой сессии или установите с флагом --now для принудительного обновления (это инвалидирует Prompt Cache и стоит больше токенов).
Четыре ограничителя сдерживают вывод: полный test suite, лимиты размера, сохранение семантики и human PR review. Semantic drift detection не даёт skills уйти от исходной цели. Всё равно проверяйте каждый PR diff вручную перед merge.
Скопируйте SKILL.md в ~/.claude/skills/ или используйте multi-agent install scripts вроде kevinnft/ai-agent-skills для одной установки в Hermes, Claude Code и Cursor.
CJK-символы в большинстве токенизаторов стоят примерно 1–1,5 токена на символ — сопоставимо с английским. Поле description лучше держать на английском (или двуязычным), потому что базовые LLM точнее матчат английские описания.
Hermes Agent Skills превращают «становится лучше с использованием» из слогана в инженерный путь: стандарт agentskills.io гарантирует кросс-платформенную переносимость, Progressive Disclosure контролирует расход токенов, Bundles и conditional activation оркестрируют сложные workflow, а GEPA позволяет тексту skills эволюционировать непрерывно — всё это требует хоста 24/7, накапливающего session traces.
Писать Skills на Windows или Linux можно, но Telegram QR pairing, macOS permission dialogs и долгосрочное накопление traces часто упираются в «нет always-on Mac». Покупка Mac mini — амортизация и счета за электричество; VPS не запускает полный native Hermes Gateway toolchain. Напротив, аренда Mac Mini M4 у VNCMac отдаёт uptime и базовый образ провайдеру — вы фокусируетесь на авторстве skills и GEPA-эволюции, а VNC используете для графической проверки.
Если вы готовы перевести Hermes из «установлен» в «skill-систему», откройте удалённый Mac-узел по кнопке ниже и пройдите 5-шаговый чеклист из раздела 12 вместе с нашим гидом по архитектуре и туториалом по установке.