Hermes Agent

Использование, настройка, оформление, расширение и оркестрация Hermes Agent.

Метаданные навыка

ИсточникВстроенный (установлен по умолчанию)
Путьskills/autonomous-ai-agents/hermes-agent
Версия3.2.0
АвторHermes Agent и Teknium
ЛицензияMIT
Платформыlinux, macos, windows
Тегиhermes, setup, configuration, multi-agent, spawning, cli, gateway, bots, bot-mode, features, themes, skins, desktop-plugins, tui-widgets, petdex, development
Связанные навыкиclaude-code, codex, opencode

Справочник: полный SKILL.md

инфо

Ниже — полное определение навыка, которое Hermes Agent загружает при его активации. Именно этот текст агент получает как инструкцию в момент работы навыка.

Hermes Agent

Hermes Agent — открытый фреймворк ИИ-агента от Nous Research, который работает в терминале, в нативном десктопном приложении, в мессенджерах и в редакторах кода. Он из той же категории, что Claude Code (Anthropic), Codex (OpenAI) и OpenClaw: автономные агенты для программирования и выполнения задач, взаимодействующие с системой через вызов инструментов. Hermes работает с любым провайдером LLM (OpenRouter, Anthropic, OpenAI, Google, DeepSeek, xAI, локальные модели и ещё два десятка) и запускается на Linux, macOS, Windows и WSL.

Чем Hermes отличается:

  • Учится через навыки — сохраняет удачные процедуры как переиспользуемые навыки, которые подгружаются в будущих сессиях.
  • Постоянная память между сессиями — помнит, кто вы, ваши предпочтения, особенности окружения и извлечённые уроки. Бэкенды памяти подключаются как плагины.
  • Шлюз ко множеству платформ — один и тот же агент работает в Telegram, Discord, Slack, WhatsApp, iMessage, Signal, Matrix, Teams, почте и десятке других платформ с полным доступом к инструментам, а не только с чатом.
  • Много интерфейсов — общее ядро агента крутит CLI, Ink-TUI, нативное десктопное приложение на Electron, веб-панель и ACP-сервер для редакторов (VS Code, Zed, JetBrains).
  • Независимость от провайдера — модели и провайдеров можно менять посреди работы, а пулы учётных данных сами ротируют несколько ключей API.
  • Профили — несколько независимых экземпляров Hermes с изолированными конфигурациями, сессиями, навыками и памятью.
  • Расширяемость и оформление — плагины, MCP-серверы, свои инструменты, вебхуки, планировщик cron, скины, перекрашивающие все интерфейсы, плагины интерфейса десктопа, виджеты TUI и питомцы-маскоты.

Этот навык — хаб. В теле описаны сама суть, быстрый старт, запуск дополнительных экземпляров с оркестрацией и жёсткие инварианты. Всё остальное лежит в справочных файлах — загрузите подходящий справочник (список ниже) до того, как отвечать; не отвечайте на детальные вопросы по одному лишь телу навыка.

Документация: https://hermes-agent.nousresearch.com/docs/

Границы и проверка

Этот навык — сжатое руководство по работе, а не исчерпывающий источник истины по каждой возможности Hermes. Если какая-то возможность, команда или настройка здесь и в справочниках не упомянута, это не доказательство того, что её не существует. Прежде чем отвечать «такого нет», сверьтесь с живым репозиторием и официальной документацией.

Куда смотреть, от дешёвого к дорогому:

  • Каждая возможность продукта одной строкой: https://hermes-agent.nousresearch.com/docs/llms.txt. С этого начинайте любой вопрос вида «может ли Hermes X?» или «как сделать X?» — файл индексирует всю документацию и даёт ссылку на страницу с ответом. Он генерируется из дерева доков при каждой сборке, поэтому никогда не отстаёт от продукта. Забирайте его через web_extract или, если веб-инструменты отключены, curl -s https://hermes-agent.nousresearch.com/docs/llms.txt. Вся документация одним файлом лежит в /docs/llms-full.txt.
  • Команды CLI: hermes --help, hermes <command> --help и hermes_cli/main.py
  • Дерево исходников: https://github.com/NousResearch/hermes-agent

Никогда не отвечайте «Hermes так не умеет» по памяти. Возможностей у Hermes куда больше, чем описано в теле этого навыка, а индекс существует именно для того, чтобы отрицательный ответ всегда можно было проверить.

Быстрый старт

# Install (shell installer — bootstraps PM, Python, dependencies, and the launcher)
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

# Interactive chat (default surface; set display.interface: tui to launch the Ink TUI instead)
hermes

# Single query
hermes chat -q "What is the capital of France?"

# Setup wizard  /  pick model+provider  /  health check
hermes setup
hermes model
hermes doctor

# Other surfaces
hermes desktop                 # launch the native desktop app (alias: hermes gui)
hermes dashboard               # web admin panel + embedded chat
hermes proxy                   # OpenAI-compatible local proxy backed by your OAuth provider

Ключевые пути

~/.hermes/config.yaml       Main configuration (settings — never secrets)
~/.hermes/.env              API keys and secrets ONLY (under $HERMES_HOME if set)
$HERMES_HOME/skills/        Installed skills
~/.hermes/skins/            Custom themes (see references/themes.md)
~/.hermes/desktop-plugins/  Desktop app UI plugins (see references/desktop-plugins.md)
~/.hermes/tui-widgets/      TUI widget apps (see references/tui-widgets.md)
~/.hermes/pets/             Installed pet mascots (see references/petdex.md)
~/.hermes/state.db          Canonical session store (SQLite + FTS5)
~/.hermes/sessions/         Gateway routing index, request dumps, *.jsonl transcripts
~/.hermes/logs/             Gateway and error logs
~/.hermes/auth.json         OAuth tokens and credential pools
~/.hermes/hermes-agent/     Source code (if git-installed)

Профили используют ~/.hermes/profiles/<name>/ с той же раскладкой. Когда профиль активен, настоящий домашний каталог берите из $HERMES_HOME и никогда не зашивайте ~/.hermes.

Таблица маршрутизации — какой справочник грузить

Пользователю нужно…Загрузить
Всё, чего нет в списке ниже — «может ли Hermes X?», «как настроить X?»https://hermes-agent.nousresearch.com/docs/llms.txt
Боты, которые общаются, гоняют рутины или переписываются друг с другом; вкладка Botsдокументация: /user-guide/bot-mode
Команды CLI, подкоманды, флаги, «как запустить X»references/cli-reference.md
Слэш-команды внутри сессииreferences/slash-commands.md
Настройка провайдера, ключи API, OAuthreferences/providers-and-models.md
Секции config.yaml, наборы инструментов, голос, STT и TTSreferences/configuration.md
Проектные правила AGENTS.md, .hermes.md, CLAUDE.mdreferences/project-context-files.md
Чистка секретов, ПДн, режимы подтверждений, «сбросить разрешения»references/security-privacy.md
Делегирование, cron, куратор, kanbanreferences/background-systems.md
MCP-серверы (добавление, каталог, hermes mcp)references/native-mcp.md
Маршруты вебхуков и запуски по событиямreferences/webhooks.md
Своя тема или скин («тема synthwave», «поменять золотой ●»)references/themes.md и templates/skin.yaml
Элемент интерфейса десктопа (панель, виджет, команда ⌘K, страница)references/desktop-plugins.md и templates/plugin.js
Живая панель или модальный виджет в TUI (тикер, часы, дашборд)references/tui-widgets.md и templates/clock.mjs
Питомцы-маскоты — установка, выбор, масштаб, диагностикаreferences/petdex.md
Проблемы, специфичные для Windows (горячие клавиши, WinError 10106, BOM)references/windows-quirks.md
Отладка: голос, пропавшие инструменты, шлюз, вспомогательные моделиreferences/troubleshooting.md
Участие в разработке: свои инструменты, слэш-команды, тестыreferences/contributor-guide.md
Жалобы «delegate_task ограничен N»references/delegate-task-concurrency-diagnosis.md
«Может ли приложение X использовать мою подписку Nous Portal или OAuth?»references/portal-auth-for-third-party-apps.md
Подключение мессенджера (Telegram, Discord, Slack, WhatsApp…)документация: /user-guide/messaging

Список справочников выше — не список возможностей, а перечень тем, по которым одной страницы документации мало. По всему остальному, что умеет Hermes, загляните в llms.txt — он сопоставит вопрос со страницей, где есть ответ.

Два правила по темам действуют и без загрузки справочника: скин применяете вы сами (hermes config set display.skin <name> — каждый интерфейс перекрашивается на лету примерно за секунду; не отправляйте пользователя выполнять /skin), и чтобы поправить один цвет, правьте АКТИВНЫЙ скин (hermes skin set <key> <hex>), а не форкайте default — форк теряет палитру и сбрасывает фон.

Запуск дополнительных экземпляров Hermes

Дополнительные процессы Hermes запускаются как полностью независимые подпроцессы — со своими сессиями, инструментами и окружением.

Когда это, а когда delegate_task

delegate_taskОтдельный процесс hermes
ИзоляцияОтдельный диалог, общий процессПолностью независимый процесс
ДлительностьМинуты (ограничена родительским циклом)Часы и дни
Доступ к инструментамПодмножество родительскихПолный доступ
ИнтерактивностьНетДа (режим PTY)
Для чегоБыстрые параллельные подзадачиДолгие автономные миссии

Разовый запуск

terminal(command="hermes chat -q 'Research GRPO papers and write summary to ~/research/grpo.md'", timeout=300)

# Background for long tasks:
terminal(command="hermes chat -q 'Set up CI/CD for ~/myapp'", background=true)

Интерактивный режим PTY (через tmux)

Hermes использует prompt_toolkit, которому нужен настоящий терминал. Для интерактивного запуска берите tmux:

# Start
terminal(command="tmux new-session -d -s agent1 -x 120 -y 40 'hermes'", timeout=10)

# Wait for startup, then send a message
terminal(command="sleep 8 && tmux send-keys -t agent1 'Build a FastAPI auth service' Enter", timeout=15)

# Read output
terminal(command="sleep 20 && tmux capture-pane -t agent1 -p", timeout=5)

# Send follow-up
terminal(command="tmux send-keys -t agent1 'Add rate limiting middleware' Enter", timeout=5)

# Exit
terminal(command="tmux send-keys -t agent1 '/exit' Enter && sleep 2 && tmux kill-session -t agent1", timeout=10)

Координация нескольких агентов

# Agent A: backend
terminal(command="tmux new-session -d -s backend -x 120 -y 40 'hermes -w'", timeout=10)
terminal(command="sleep 8 && tmux send-keys -t backend 'Build REST API for user management' Enter", timeout=15)

# Agent B: frontend
terminal(command="tmux new-session -d -s frontend -x 120 -y 40 'hermes -w'", timeout=10)
terminal(command="sleep 8 && tmux send-keys -t frontend 'Build React dashboard for user management' Enter", timeout=15)

# Check progress, relay context between them
terminal(command="tmux capture-pane -t backend -p | tail -30", timeout=5)
terminal(command="tmux send-keys -t frontend 'Here is the API schema from the backend agent: ...' Enter", timeout=5)

Продолжение сессии

# Resume most recent session
terminal(command="tmux new-session -d -s resumed 'hermes --continue'", timeout=10)

# Resume specific session
terminal(command="tmux new-session -d -s resumed 'hermes --resume 20260225_143052_a1b2c3'", timeout=10)

Советы

  • Для быстрых подзадач берите delegate_task — накладных расходов меньше, чем на полноценный процесс.
  • Флаг -w (режим worktree) нужен, когда запущенные агенты правят код, — иначе конфликты в git.
  • Ставьте таймауты в разовом режиме: сложная задача занимает 5–10 минут.
  • hermes chat -q годится для «запустил и забыл» — PTY там не нужен.
  • Интерактив ведите через tmux — в сыром режиме PTY у prompt_toolkit возникают проблемы с \r и \n.
  • Для задач по расписанию используйте инструмент cronjob, а не запуск процесса: он берёт на себя доставку и повторы.
  • Жалобы «delegate_task ограничен N» — см. references/delegate-task-concurrency-diagnosis.md. В Hermes есть три реальных пути ограничения; если ни один не сработал, значит модель ограничивает себя сама и оправдывает это «ограничением среды».
  • «Может ли $external_app использовать мою подписку Nous Portal или OAuth?» — см. references/portal-auth-for-third-party-apps.md. Проведите пользователя по трём уровням: плагин против приложения, что Портал на самом деле отдаёт наружу, вариант с локальным прокси-посредником.

Интерфейсы (краткая ориентация)

  • Десктопное приложение (hermes desktop или hermes gui) — нативное приложение на Electron для macOS, Linux и Windows: потоковый чат, список сессий, палитра Cmd+K, перетаскивание файлов, системные уведомления, вход в удалённый шлюз для каждого профиля. Расширяется плагинами интерфейса — references/desktop-plugins.md.
  • Веб-панель (hermes dashboard) — полноценная админка: каналы сообщений, каталог MCP, вебхуки, память, конструктор профилей плюс встроенный чат hermes --tui. Закрыта воротами OAuth или токена.
  • Ink-TUI (hermes --tui либо display.interface: tui) — терминальный интерфейс с закреплёнными виджетами — references/tui-widgets.md.
  • Прокси, совместимый с OpenAI (hermes proxy) — локальный OpenAI API поверх того OAuth-провайдера, под которым вы вошли. Направьте на него Codex CLI, Aider, Cline или любой скрипт — ключ API не нужен.

Жёсткие инварианты (нарушать нельзя, что бы вы ни загрузили)

  • Никогда не ломайте кэширование промптов — не меняйте прошлый контекст, наборы инструментов и системный промпт посреди диалога. Единственное исключение — сжатие контекста.
  • Чередование ролей сообщений — никогда два сообщения ассистента или два пользовательских подряд; повторяться могут только результаты tool.
  • Секреты в .env, настройки в config.yaml — никогда не советуйте класть в .env настройку, которая не является учётными данными.
  • Пути с учётом профиля — в коде get_hermes_home(), в сессии — $HERMES_HOME.
  • Никогда не правьте config.yaml руками за пользователя — используйте hermes config set KEY VAL: случайный отступ ломает файл и роняет работающий шлюз.
перевод и редактура:

обновлено

⌕ ESC