← На главную

Опубликовано

Hermes Agent: команды, которые меняют всё

Автор: Гусев Николай [портфолио]

Темы: ai-agents, privacy, security

Что это за статья

Hermes Agent - это AI-ассистент, который умеет не только отвечать на вопросы, но и выполнять действия: запускать код, управлять файлами, планировать задачи, работать в фоне. Но чтобы раскрыть его потенциал, нужно знать несколько ключевых команд. Без них вы разговариваете с рыбой - она умная, но аквариум не перестроит.

Разберём команды, которые превращают Hermes из чат-бота в полноценного агента: /bg, /steer, /yolo, /model, /new, /stop, /rollback, /goal и другие. С примерами, нюансами и опасностями.


/bg - фоновая работа

Что делает: запускает задачу в фоне, не блокируя основной чат.

Синтаксис: /bg <описание задачи>

Пример:

`/bg Найди все Python-файлы в проекте, посчитай LOC в каждом и сохрани отчёт в /tmp/loc-report.md`

После этого вы продолжаете разговаривать с Hermes, а он параллельно считает строки кода. Когда задача завершится - придёт уведомление.

Алиасы: /bg, /btw (by the way - "кстати, сделай вот это").

Нюанс: фоновая задача живёт в отдельном процессе. Если вы закроете сессию или перезапустите гейтвей - фоновая задача умрёт. Это не крон-задача, это именно фон текущей сессии.

Опасность: запустить два /bg с записью в один и тот же файл - получите гонку данных. Hermes не блокирует файлы между фоновыми задачами. Пишите в разные файлы или координируйте вручную.


/steer - руление на ходу

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

Синтаксис: /steer <подсказка>

Пример:

Вы попросили Hermes настроить CI/CD. Он начал, но пошёл не тем путём - вместо GitHub Actions пишет Jenkinsfile.

`/steer Используй GitHub Actions, не Jenkins. Проект на Python, pytest.`

Hermes получит это сообщение и скорректирует курс - без необходимости отменять всё и начинать заново.

Нюанс: /steer не прерывает текущий вызов инструмента. Если Hermes сейчас пишет файл - он допишет его, а уже потом учтёт вашу подсказку. Это не аварийный тормоз, это корректировка курса.

Опасность: слишком частые /steer запутывают агента. Каждый steer добавляется в контекст, и если их накопится 5-6 - Hermes начнёт путаться, что из этого приоритетнее. Один-два за ход - нормально. Десять - нет.


/yolo - режим без ограничений

Что делает: отключает запросы подтверждения на опасные команды. Всё, что Hermes считает "опасным" (удаление файлов, запись в системные пути, выполнение произвольных команд) - выполняется без вопросов.

Синтаксис: /yolo (переключатель: вкл/выкл)

Когда использовать: вы доверяете агенту, понимаете, что он делаете, и хотите не отвечать на 15 "Вы уверены?" подряд во время сложной задачи.

Пример сценария:

Вы разворачиваете проект на чистом VPS. Hermes должен установить пакеты, создать пользователя, настроить nginx, переписать конфиги. Без /yolo - на каждом шаге запрос подтверждения. С /yolo - всё за один проход.

Опасность: это действительно опасно. Если Hermes ошибётся в пути файла - он удалит не то, что нужно, и вы узнаете об этом постфактум. Никогда не включайте /yolo в общем чате, где участвуют другие люди. Никогда не включайте его, если не понимаете, что именно попросили агента сделать.

Правило: включил /yolo → сделал задачу → выключил /yolo. Не оставляйте на постоянной основе.


/model - переключение модели

Что делает: меняет языковую модель для текущей сессии.

Синтаксис: /model [название] [--provider name] [--global] [--refresh]

Примеры:

`/model anthropic/claude-sonnet-4
/model openrouter/mistralai/mistral-large
/model --global google/gemini-2.5-pro`

Нюанс без флагов: модель меняется только для текущей сессии. Новый /new вернёт модель по умолчанию.

Нюанс с --global: меняет модель по умолчанию для всех новых сессий. Записывается в конфиг.

Нюанс с --provider: позволяет указать провайдера явно. Полезно, когда одну и ту же модель можно получить через разных провайдеров с разной ценой и скоростью.

Опасность: переключение модели посреди сложной задачи может сломать контекст. Разные модели по-разному интерпретируют системные промпты и историю. Если задача требует 10+ ходов - лучше выбрать модель заранее и не менять.

Алиас: /provider - то же самое.


/new - новая сессия

Что делает: начинает свежую сессию с чистой историей. Старый контекст сохраняется в базе, но больше не влияет на разговор.

Синтаксис: /new [название]

Пример:

`/new vps-setup`

Когда использовать: когда текущая сессия "засорена" - слишком много контекста, агент начинает путаться, или вы хотите начать новую тему с чистого листа.

Нюанс: сессия не удаляется - она сохраняется в SQLite. Вы можете вернуться к ней через /resume или /sessions.

Опасность: если дали сессии имя через /new my-task, а потом забыли него - придётся искать через /sessions. Давайте осмысленные имена.

Алиас: /reset - то же самое.


/stop - остановка всего

Что делает: убивает все запущенные фоновые процессы.

Синтаксис: /stop

Когда использовать: запустили три /bg, поняли, что задачи неправильные, хотите остановить всё разом.

Нюанс: это именно фоновые процессы (background tasks). Текущий ход агента это не прервет - для этого есть Ctrl+C в CLI или просто отправка нового сообщения в гейтвее.

Опасность: если фоновая задача записывала файл - после /stop вы получите недописанный файл. Нет транзакционности, нет отката.


/rollback - откат файловых изменений

Что делает: восстанавливает состояние файлов из чекпоинтов, созданных перед деструктивными операциями.

Синтаксис: /rollback [номер]

Пример:

`/rollback
/rollback 2`

Предыстория: когда включён режим --checkpoints (или в конфиге включены чекпоинты), Hermes перед каждой записью/удалением файла сохраняет его копию. Если что-то пошло не так - можно откатить.

Нюанс: чекпоинты работают только для файловых операций (write_file, patch). Не для HTTP-запросов, не для отправленных сообщений, не для изменений в базах данных.

Опасность: чекпоинты занимают место на диске. Если Hermes работает с большими файлами - сотни мегабайт чекпоинтов могут накопиться за одну сессию. Периодически чистите через hermes checkpoints.


/goal - постоянная цель

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

Синтаксис: /goal [текст | pause | resume | clear | status]

Пример:

`/goal Настроить мониторинг сервера: node-exporter + prometheus + grafana. Должно работать после перезагрузки.`

После этого каждый ваш вопрос в рамках сессии Hermes будет учитывать эту цель. Даже если вы спросите "какая погода" - он ответит и вернётся к мониторингу.

Подкоманды:

  • /goal pause - приостановить цель (не удаляя)

  • /goal resume - возобновить

  • /goal clear - удалить

  • /goal status - посмотреть текущую цель

Нюанс: цель живёт в рамках сессии. /new стирает цель.

Опасность: слишком расплывчатая цель ("сделай всё хорошо") приведёт к тому, что Hermes будет заниматься чем угодно и ничем конкретным. Формулируйте измеримо: "установить X, настроить Y, проверить через Z".


/queue - очередь сообщений

Что делает: ставит сообщение в очередь - Hermes обработает его после завершения текущего хода, не прерывая себя.

Синтаксис: /queue <сообщение>

Алиас: /q

**Отличие от /steer: **/steer вставляет сообщение прямо в текущий ход (после следующего tool call). /queue ставит в очередь на следующий ход - агент закончит текущий ответ, а потом прочитает ваше сообщение.

Когда использовать: пока Hermes пишет длинный ответ, вы уже знаете, что хотите спросить дальше. Вместо того чтобы ждать и писать - вставляете в очередь.

Опасность: если в очереди накопилось 5 сообщений - Hermes будет обрабатывать их последовательно, и контекст может "уехать" далеко от того, что вы ожидаете. Очищайте очередь, если передумали.


/branch - ветвление сессии

Что делает: создаёт ответвление текущей сессии - копию истории до текущего момента с новым ID.

Синтаксис: /branch [название]

Алиас: /fork

Когда использовать: вы на развилке. Один путь - продолжить текущий разговор. Другой - попробовать альтернативный подход, не теряя оригинал.

Пример:

Hermes пишет API. Вы не уверены, какой фреймворк выбрать.

`/branch fastapi-approach`

В этой ветке говорите "используй FastAPI". Оригинальная сессия остаётся нетронутой - там можете попробовать Flask.

Опасность: ветки множатся. Если сделаете 10 веток и забудете их имена - будете долго разбираться, где что. Удаляйте ненужные через hermes sessions.


/undo - отмена последнего обмена

Что делает: удаляет последнюю пару сообщений (ваш вопрос + ответ агента) из истории.

Синтаксис: /undo

Когда использовать: Hermes дал неправильный ответ, и вы хотите "забыть" этот обмен, чтобы он не влиял на дальнейший разговор.

Нюанс: это именно удаление из истории сессии. Не откат файлов (для этого /rollback), не остановка фоновых задач (для этого /stop).

Опасность: после /undo вы не восстановите удалённый обмен. Если там была полезная информация - она пропала из контекста сессии.


/verbose - детализация вывода

Что делает: переключает режим отображения прогресса инструментов.

Синтаксис: /verbose

Режимы (циклически):

  • off - ничего не показывать

  • new - показывать только новые результаты

  • all - показывать все результаты

  • verbose - максимум деталей

Когда использовать: отладка. Если Hermes делает что-то непонятное - включите verbose и смотрите, какие инструменты он вызывает и с какими аргументами.

Опасность: в режиме verbose вывод может быть огромным. Если Hermes вызывает 20 инструментов за ход - вы получите 20 блоков с деталями. Включайте точечно.


/reasoning - управление рассуждениями

Что делает: управляет уровнем "рассуждений" (reasoning effort) для моделей, которые это поддерживают (o1, o3, Claude с extended thinking).

Синтаксис: /reasoning [none|minimal|low|medium|high|xhigh|show|hide]

Пример:

`/reasoning high
/reasoning show`

Нюанс: не все модели поддерживают reasoning. Для GPT-4o или Claude Sonnet этот параметр может не иметь эффекта. Зато для o1/o3 - критически важен.

Опасность: xhigh reasoning жрёт токены. Если у вас лимит - можете его исчерпать за пару ходов. Используйте high по умолчанию, xhigh - только для действительно сложных задач.


/fast - быстрый режим

Что делает: переключает приоритет обработки - OpenAI Priority Processing или Anthropic Fast Mode.

Синтаксис: /fast [normal|fast|status]

Когда использовать: очередь запросов длинная, а вам нужно получить ответ быстрее. Fast mode обычно стоит дороже, но ответ приходит быстрее.

Опасность: дороже. Если вы платите за токены - fast mode может удвоить стоимость. Не включайте "на всякий случай".


Как это работает вместе: сценарий

Вы приходите утром и хотите настроить новый сервер.

`/goal Настроить VPS: Docker, nginx, SSL, fail2ban. Проверить что всё работает.
/model anthropic/claude-sonnet-4
/yolo`

Hermes начинает работать. Через минуту вы понимаете, что он ставит nginx из репозитория, а вы хотели из PPA.

`/steer Поставь nginx из официального PPA, не из системного репозитория.`

Ещё через минуту - хотите параллельно проверить, что старый сервер ещё жив:

`/bg Проверь что старый сервер на 82.21.153.76 отвечает на SSH и HTTP`

Когда всё готово:

`/yolo
/goal clear
/status`

Выключили yolo, очистили цель, посмотрели статистику сессии.


Чек-лист безопасности

  • /yolo - включать только на время конкретной задачи, выключать после

  • /bg - не писать в один файл из нескольких фоновых задач

  • /steer - максимум 1-2 за ход, не больше

  • /new - давать сессиям осмысленные имена

  • /rollback - включать --checkpoints заранее, не после того как всё сломалось

  • /goal - формулировать конкретно и измеримо

  • /fast - помнить про стоимость

  • /reasoning xhigh - только для сложных задач, не по умолчанию


Что дальше

В следующей статье разберём работу с навыками (skills): как установить, как написать свой, как заставить Hermes использовать их автоматически. Это то, что превращает универсального агента в специалиста под ваши задачи.