sidebar_position: 2 title: "Skills System" description: "On-demand knowledge documents — progressive disclosure, agent-managed skills, and the Skills Hub" lang: ru


Система навыков

Навыки — это документы знаний, которые агент может загрузить по требованию. Они следуют шаблону прогрессивного раскрытия для минимизации использования токенов и совместимы с открытым стандартом agentskills.io.

Все навыки хранятся в ~/.hermes/skills/ — основном каталоге и источнике истины. При новой установке связанные навыки копируются из репозитория. Сюда также относятся навыки, установленные в хабе и созданные агентом. Агент может изменить или удалить любой навык.

Вы также можете указать Гермесу внешние каталоги навыков — дополнительные папки, сканируемые наряду с локальной. См. Внешние каталоги навыков ниже.

См. также:

Использование навыков

Каждый установленный навык автоматически доступен с помощью косой черты:

# In the CLI or any messaging platform:
/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor
/plan design a rollout for migrating our auth provider

# Just the skill name loads it and lets the agent ask what you need:
/excalidraw

Хорошим примером является встроенный навык plan. Запуск /plan [request] загружает инструкции навыка, сообщая Hermes при необходимости проверить контекст, написать план реализации уценки вместо выполнения задачи и сохранить результат в .hermes/plans/ относительно активной рабочей области/бэкэнд-рабочего каталога.

Вы также можете взаимодействовать с навыками посредством естественного разговора:

hermes chat --toolsets skills -q "What skills do you have?"
hermes chat --toolsets skills -q "Show me the axolotl skill"

Прогрессивное раскрытие информации

Навыки используют шаблон загрузки с эффективным использованием токенов:

Level 0: skills_list()            [{name, description, category}, ...]   (~3k tokens)
Level 1: skill_view(name)         Full content + metadata       (varies)
Level 2: skill_view(name, path)   Specific reference file       (varies)

Агент загружает полный контент навыков только тогда, когда он действительно в этом нуждается.

Формат SKILL.md

---
name: my-skill
description: Brief description of what this skill does
version: 1.0.0
platforms: [macos, linux]     # Optional — restrict to specific OS platforms
metadata:
  hermes:
    tags: [python, automation]
    category: devops
    fallback_for_toolsets: [web]    # Optional — conditional activation (see below)
    requires_toolsets: [terminal]   # Optional — conditional activation (see below)
    config:                          # Optional — config.yaml settings
      - key: my.setting
        description: "What this controls"
        default: "value"
        prompt: "Prompt for setup"
---

# Skill Title

## When to Use
Trigger conditions for this skill.

## Procedure
1. Step one
2. Step two

## Pitfalls
- Known failure modes and fixes

## Verification
How to confirm it worked.

Навыки, специфичные для платформы

Навыки могут ограничиваться конкретными операционными системами с помощью поля platforms:

Значение Матчи
macos macOS (Дарвин)
linux Линукс
windows Окна
platforms: [macos]            # macOS only (e.g., iMessage, Apple Reminders, FindMy)
platforms: [macos, linux]     # macOS and Linux

Если этот навык установлен, он автоматически скрывается из системной подсказки skills_list() и команд косой черты на несовместимых платформах. Если этот параметр опущен, навык загружается на всех платформах.

Условная активация (запасные навыки)

Навыки могут автоматически отображаться или скрываться в зависимости от того, какие инструменты доступны в текущем сеансе. Это наиболее полезно для запасных навыков — бесплатных или локальных альтернатив, которые должны появляться только тогда, когда премиум-инструмент недоступен.

metadata:
  hermes:
    fallback_for_toolsets: [web]      # Show ONLY when these toolsets are unavailable
    requires_toolsets: [terminal]     # Show ONLY when these toolsets are available
    fallback_for_tools: [web_search]  # Show ONLY when these specific tools are unavailable
    requires_tools: [terminal]        # Show ONLY when these specific tools are available
Поле Поведение
fallback_for_toolsets Навык скрыт, когда доступны перечисленные наборы инструментов. Показано, когда они отсутствуют.
fallback_for_tools То же, но проверяется отдельные инструменты, а не наборы инструментов.
requires_toolsets Навык скрыт, когда перечисленные наборы инструментов недоступны. Показано, когда они присутствуют.
requires_tools То же, но проверяет отдельные инструменты.

Пример: Встроенный навык duckduckgo-search использует fallback_for_toolsets: [web]. Если у вас установлен FIRECRAWL_API_KEY, доступен набор веб-инструментов и агент использует web_search — навык DuckDuckGo остается скрытым. Если ключ API отсутствует, набор веб-инструментов недоступен, а навык DuckDuckGo автоматически отображается в качестве резервного варианта.

Навыки без каких-либо условных полей ведут себя точно так же, как и раньше — они всегда отображаются.

Безопасная настройка при загрузке

Навыки могут объявлять необходимые переменные среды, не исчезая из поля зрения:

required_environment_variables:
  - name: TENOR_API_KEY
    prompt: Tenor API key
    help: Get a key from https://developers.google.com/tenor
    required_for: full functionality

При обнаружении отсутствующего значения Hermes безопасно запрашивает его только тогда, когда навык действительно загружен в локальный CLI. Вы можете пропустить настройку и продолжить использование навыка. Обмен сообщениями никогда не запрашивает секреты в чате — вместо этого они советуют вам использовать hermes setup или ~/.hermes/.env локально.

После установки объявленные переменные окружения автоматически передаются в песочницы execute_code и terminal — сценарии навыка могут использовать $TENOR_API_KEY напрямую. Для переменных окружения, не требующих навыков, используйте параметр конфигурации terminal.env_passthrough. Подробности см. в разделе Передача переменных среды.

Настройки конфигурации навыков

Навыки также могут объявлять несекретные настройки конфигурации (пути, настройки), хранящиеся в config.yaml:

metadata:
  hermes:
    config:
      - key: myplugin.path
        description: Path to the plugin data directory
        default: "~/myplugin-data"
        prompt: Plugin data directory path

Настройки хранятся в папке skills.config в вашем config.yaml. hermes config migrate запрашивает ненастроенные параметры, а hermes config show отображает их. Когда навык загружается, его разрешенные значения конфигурации вводятся в контекст, поэтому агент автоматически узнает настроенные значения.

Подробности см. в Настройки навыков и Создание навыков — настройки конфигурации.

Структура каталога навыков

~/.hermes/skills/                  # Single source of truth
├── mlops/                         # Category directory
│   ├── axolotl/
│   │   ├── SKILL.md               # Main instructions (required)
│   │   ├── references/            # Additional docs
│   │   ├── templates/             # Output formats
│   │   ├── scripts/               # Helper scripts callable from the skill
│   │   └── assets/                # Supplementary files
│   └── vllm/
│       └── SKILL.md
├── devops/
│   └── deploy-k8s/                # Agent-created skill
│       ├── SKILL.md
│       └── references/
├── .hub/                          # Skills Hub state
│   ├── lock.json
│   ├── quarantine/
│   └── audit.log
└── .bundled_manifest              # Tracks seeded bundled skills

Внешние каталоги навыков

Если у вас есть навыки за пределами Hermes — например, общий каталог ~/.agents/skills/, используемый несколькими инструментами искусственного интеллекта, — вы можете поручить Hermes сканировать и эти каталоги.

Добавьте external_dirs в раздел skills в ~/.hermes/config.yaml:

skills:
  external_dirs:
    - ~/.agents/skills
    - /home/shared/team-skills
    - ${SKILLS_REPO}/skills

Пути поддерживают расширение ~ и замену переменных среды ${VAR}.

Как это работает

Пример

~/.hermes/skills/               # Local (primary, read-write)
├── devops/deploy-k8s/
│   └── SKILL.md
└── mlops/axolotl/
    └── SKILL.md

~/.agents/skills/               # External (read-only, shared)
├── my-custom-workflow/
│   └── SKILL.md
└── team-conventions/
    └── SKILL.md

Все четыре навыка отображаются в вашем индексе навыков. Если вы создадите новый навык под названием my-custom-workflow локально, он затенит внешнюю версию.

Навыки, управляемые агентом (инструмент Skill_manage)

Агент может создавать, обновлять и удалять свои собственные навыки с помощью инструмента skill_manage. Это процедурная память агента: когда он определяет нетривиальный рабочий процесс, он сохраняет подход как навык для будущего повторного использования.

Когда агент создает навыки

Действия

Действие Использовать для Ключевые параметры
create Новый навык с нуля name, content (полный SKILL.md), опционально category
patch Целевые исправления (предпочтительно) name, old_string, new_string
edit Основные структурные изменения name, content (полная замена SKILL.md)
delete Полностью удалить навык name
write_file Добавить/обновить вспомогательные файлы name, file_path, file_content
remove_file Удалить вспомогательный файл name, file_path

:::совет Действие patch предпочтительнее для обновлений — оно более эффективно использует токены, чем edit, поскольку при вызове инструмента отображается только измененный текст.

Центр навыков

Просматривайте, ищите, устанавливайте навыки и управляйте ими из онлайн-реестров, skills.sh, прямых конечных точек известных навыков и официальных дополнительных навыков.

Общие команды

hermes skills browse                              # Browse all hub skills (official first)
hermes skills browse --source official            # Browse only official optional skills
hermes skills search kubernetes                   # Search all sources
hermes skills search react --source skills-sh     # Search the skills.sh directory
hermes skills search https://mintlify.com/docs --source well-known
hermes skills inspect openai/skills/k8s           # Preview before installing
hermes skills install openai/skills/k8s           # Install with security scan
hermes skills install official/security/1password
hermes skills install skills-sh/vercel-labs/json-render/json-render-react --force
hermes skills install well-known:https://mintlify.com/docs/.well-known/skills/mintlify
hermes skills install https://sharethis.chat/SKILL.md              # Direct URL (single-file SKILL.md)
hermes skills install https://example.com/SKILL.md --name my-skill # Override name when frontmatter has none
hermes skills list --source hub                   # List hub-installed skills
hermes skills check                               # Check installed hub skills for upstream updates
hermes skills update                              # Reinstall hub skills with upstream changes when needed
hermes skills audit                               # Re-scan all hub skills for security
hermes skills uninstall k8s                       # Remove a hub skill
hermes skills reset google-workspace              # Un-stick a bundled skill from "user-modified" (see below)
hermes skills reset google-workspace --restore    # Also restore the bundled version, deleting your local edits
hermes skills publish skills/my-skill --to github --repo owner/repo
hermes skills snapshot export setup.json          # Export skill config
hermes skills tap add myorg/skills-repo           # Add a custom GitHub source

Поддерживаемые источники хаба

Источник Пример Заметки
official official/security/1password Дополнительные навыки поставляются вместе с Hermes.
skills-sh skills-sh/vercel-labs/agent-skills/vercel-react-best-practices Доступен для поиска через hermes skills search <query> --source skills-sh. Hermes разрешает навыки в стиле псевдонимов, когда фрагмент файлаkills.sh отличается от папки репо.
well-known well-known:https://mintlify.com/docs/.well-known/skills/mintlify Skills served directly from /.well-known/skills/index.json on a website. Search using the site or docs URL.
url https://sharethis.chat/SKILL.md Направьте URL-адрес HTTP(S) в один файл SKILL.md. Разрешение имени: заголовок → URL-адрес → интерактивная подсказка → флаг --name.
github openai/skills/k8s Прямая установка репозитория/пути GitHub и пользовательские нажатия.
clawhub, lobehub, claude-marketplace Идентификаторы источника Интеграция сообщества или рынка.

Интегрированные хабы и реестры

В настоящее время Hermes интегрируется со следующими экосистемами навыков и источниками открытий:

1. Официальные дополнительные навыки (official)

Они хранятся в самом репозитории Hermes и устанавливаются со встроенным доверием.

hermes skills browse --source official
hermes skills install official/security/1password

2.kills.sh (skills-sh)

Это каталог общедоступных навыков Vercel. Hermes может выполнять поиск напрямую, просматривать страницы с подробными сведениями о навыках, разрешать фрагменты в стиле псевдонимов и устанавливать из базового репозитория исходного кода.

hermes skills search react --source skills-sh
hermes skills inspect skills-sh/vercel-labs/json-render/json-render-react
hermes skills install skills-sh/vercel-labs/json-render/json-render-react --force

3. Хорошо известные конечные точки навыков (well-known)

Это обнаружение на основе URL-адресов с сайтов, публикующих /.well-known/skills/index.json. Это не единый централизованный хаб — это соглашение по веб-обнаружению.

hermes skills search https://mintlify.com/docs --source well-known
hermes skills inspect well-known:https://mintlify.com/docs/.well-known/skills/mintlify
hermes skills install well-known:https://mintlify.com/docs/.well-known/skills/mintlify

4. Навыки работы с GitHub (github)

Hermes можно установить непосредственно из репозиториев GitHub и кранов на базе GitHub. Это полезно, если вы уже знаете репозиторий/путь или хотите добавить свой собственный репозиторий с исходным кодом.

Касания по умолчанию (доступны для просмотра без каких-либо настроек): - openai/skills - антропика/навыки - VoltAgent/awesome-agent-skills - garrytan/gstack

hermes skills install openai/skills/k8s
hermes skills tap add myorg/skills-repo

5. ClawHub (clawhub)

Сторонний рынок навыков, интегрированный в качестве источника сообщества.

6. Репозитории в стиле торговой площадки Клода (claude-marketplace)

Hermes поддерживает репозитории торговых площадок, в которых публикуются манифесты плагинов/торговых площадок, совместимые с Claude.

Известные интегрированные источники включают: - антропика/навыки - aiskillstore/marketplace

Идентификатор источника Гермеса: claude-marketplace

7. LobeHub (lobehub)

Hermes может искать и конвертировать записи агентов из общедоступного каталога LobeHub в устанавливаемые навыки Hermes.

8. Прямой URL (url)

Установите одиночный файл SKILL.md непосредственно с любого URL-адреса HTTP(S). Это полезно, когда автор размещает навык на своем собственном сайте (без списка хаба и пути GitHub для ввода). Hermes извлекает URL-адрес, анализирует заголовок YAML, сканирует его на предмет безопасности и устанавливает.

hermes skills install https://sharethis.chat/SKILL.md
hermes skills install https://example.com/my-skill/SKILL.md --category productivity

Разрешение имени, по порядку: 1. Поле name: в заголовке YAML SKILL.md (рекомендуется — оно есть у каждого правильно сформированного навыка). 2. Имя родительского каталога из URL-пути (например, .../my-skill/SKILL.mdmy-skill или .../my-skill.mdmy-skill), если это действительный идентификатор (^[a-z][a-z0-9_-]*$). 3. Интерактивная подсказка на терминале с телетайпом. 4. На неинтерактивных поверхностях (косая черта /skills install внутри TUI, шлюзовых платформ, скриптов) чистая ошибка, указывающая на переопределение --name.

# Frontmatter has no name and the URL slug is unhelpful — supply one:
hermes skills install https://example.com/SKILL.md --name sharethis-chat

# Or inside a chat session:
/skills install https://example.com/SKILL.md --name sharethis-chat

Уровень доверия всегда community — выполняется такое же сканирование безопасности, как и для любого другого источника. URL-адрес сохраняется как идентификатор установки, поэтому hermes skills update автоматически выполняет повторную выборку с того же URL-адреса, когда вы хотите обновить его.

Сканирование безопасности и --force

Все навыки, установленные в хабе, проходят через сканер безопасности, который проверяет на предмет кражи данных, быстрого внедрения, деструктивных команд, сигналов цепочки поставок и других угроз.

hermes skills inspect ... теперь также отображает метаданные восходящего потока, если они доступны: - URL-адрес репо - URL-адрес страницы с подробными сведениями о навыках.sh - команда установки - еженедельные установки - статусы аудита безопасности восходящего потока - известные URL-адреса индексов/конечных точек

Используйте --force, если вы просмотрели сторонний навык и хотите отменить неопасную блокировку политики:

hermes skills install skills-sh/anthropics/skills/pdf --force

Важное поведение: - --force может отменять блокировки политик для выводов в стиле предостережения/предупреждения. - --force не отменяет вердикт сканирования dangerous. - Официальные дополнительные навыки (official/...) считаются встроенным доверием и не отображаются на сторонней панели предупреждений.

Уровни доверия

Уровень Источник Политика
builtin Корабли с Гермесом Всегда доверял
official optional-skills/ в репозитории Встроенное доверие, никаких предупреждений третьих лиц
trusted Доверенные реестры/репозитории, такие как openai/skills, anthropics/skills Более либеральная политика, чем общественные источники
community Все остальное (skills.sh, известные конечные точки, пользовательские репозитории GitHub, большинство торговых площадок) Неопасные выводы можно отменить с помощью --force; Вердикты dangerous остаются заблокированными

Жизненный цикл обновления

Теперь хаб отслеживает достаточно источников, чтобы перепроверять исходные копии установленных навыков:

hermes skills check          # Report which installed hub skills changed upstream
hermes skills update         # Reinstall only the skills with updates available
hermes skills update react   # Update one specific installed hub skill

При этом используется сохраненный идентификатор источника плюс текущий хэш содержимого восходящего пакета для обнаружения отклонения.

:::подсказка об ограничениях скорости GitHub В операциях Центра навыков используется API GitHub, который имеет ограничение скорости 60 запросов в час для неаутентифицированных пользователей. Если вы видите ошибки ограничения скорости во время установки или поиска, установите GITHUB_TOKEN в файле .env, чтобы увеличить лимит до 5000 запросов в час. Сообщение об ошибке содержит полезную подсказку, если это произойдет.

Пакетные обновления навыков (hermes skills reset)

Hermes поставляется с набором встроенных навыков в skills/ внутри репозитория. При установке и при каждом hermes update этап синхронизации копирует их в ~/.hermes/skills/ и записывает манифест в ~/.hermes/skills/.bundled_manifest, сопоставляя каждое имя навыка с хешем контента на момент синхронизации (исходный хэш).

При каждой синхронизации Hermes пересчитывает хэш вашей локальной копии и сравнивает его с исходным хешем:

Защита хорошая, но есть одна острая кромка. Если вы редактируете связанный навык, а затем позже хотите отказаться от своих изменений и вернуться к связанной версии, просто скопировав из ~/.hermes/hermes-agent/skills/, манифест по-прежнему будет содержать старый хэш источника, начиная с момента последней успешной синхронизации. Ваше свежее содержимое копирования и вставки (текущий связанный хеш) не будет соответствовать устаревшему исходному хэшу, поэтому синхронизация продолжает помечать его как измененное пользователем.

hermes skills reset — аварийный люк:

# Safe: clears the manifest entry for this skill. Your current copy is preserved,
# but the next sync re-baselines against it so future updates work normally.
hermes skills reset google-workspace

# Full restore: also deletes your local copy and re-copies the current bundled
# version. Use this when you want the pristine upstream skill back.
hermes skills reset google-workspace --restore

# Non-interactive (e.g. in scripts or TUI mode) — skip the --restore confirmation.
hermes skills reset google-workspace --restore --yes

Эта же команда работает в чате как косая черта:

/skills reset google-workspace
/skills reset google-workspace --restore

:::Примечание Профили Каждый профиль имеет свой собственный .bundled_manifest под собственным HERMES_HOME, поэтому hermes -p coder skills reset <name> влияет только на этот профиль.

Слэш-команды (внутри чата)

С /skills работают все те же команды:

/skills browse
/skills search react --source skills-sh
/skills search https://mintlify.com/docs --source well-known
/skills inspect skills-sh/vercel-labs/json-render/json-render-react
/skills install openai/skills/skill-creator --force
/skills check
/skills update
/skills reset google-workspace
/skills list

Официальные дополнительные навыки по-прежнему используют такие идентификаторы, как official/security/1password и official/migration/openclaw-migration.