Перейти к содержимому
13 мин чтения

Как установить Hermes Agent: пошаговая инструкция для Linux, Windows и Docker

hermes agentустановкаинструкцияai-агентыnous researchdocker

Коротко. Hermes Agent — открытый персональный ИИ-агент от Nous Research, лицензия MIT. На Linux, macOS и WSL2 он ставится одной командой curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash: установщик сам подтягивает Python 3.11, Node.js v22, uv, ripgrep и ffmpeg. Дальше три шага — hermes model (выбрать модель и вписать ключ), hermes (первый диалог), hermes gateway setup (подключить Telegram, если агент нужен в мессенджере). На чистой машине весь путь занимает 20–40 минут, и большая часть этого времени — ожидание, пока скачаются зависимости. Требование, о которое спотыкаются чаще всего: модель должна держать не меньше 64 000 токенов контекста, иначе агент просто не поедет.

Ниже — последовательность, в которой каждый шаг сверен с официальной документацией проекта и репозиторием. Всё проверено на Hermes Agent v0.20.5 — это тег релиза v2026.8.19 от 19 августа 2026 года. Если вы читаете статью сильно позже, сверьте команды со страницей hermes-agent.nousresearch.com/docs: проект выпускает релизы буквально каждую неделю.

Что понадобится до установки

Установщик берёт на себя почти всё, но не всё. Вот что должно быть на машине заранее и что доставится само.

КомпонентКто ставитКомментарий
Gitвы, заранееОбязателен на всех платформах
curl, xz-utilsвы, заранееТолько Linux
g++ / build-essentialвы, заранееНужен, если планируете десктопное приложение (Debian/Ubuntu)
Python 3.11установщикСтавится в изолированное окружение агента
Node.js v22установщик
uvустановщикПакетный менеджер Python
ripgrepустановщикПоиск по файлам
ffmpegустановщикКонвертация аудио, нужна для голосового режима

Требования к оперативной памяти, диску и процессору в документации не заданы — проект их не публикует, и придумывать цифру за него не будем. Практический ориентир один: это Node.js плюс Python-окружение плюс история сессий, так что на VPS с гигабайтом памяти и парой гигабайт свободного диска будет тесно.

Какие платформы поддержаны официально

Первый уровень поддержки (проект тестирует сам): macOS на Apple Silicon, Windows 10/11 (x86_64 и aarch64), Linux и WSL2 (x86_64 и aarch64), Docker. По Linux формулировка в документации честная: тестируют на свежей Ubuntu и WSL2, а «если в вашем дистрибутиве есть glibc, systemd и он следует FHS — скорее всего, заработает нормально».

Второй уровень, «по возможности»: Android через Termux (aarch64) и Nix, причём про Nix прямо сказано, что он «часто ломается из-за упаковки node.js».

Явно не поддерживаются: установка из AUR, macOS на Intel-процессорах, установка через PyPI и через Homebrew. Если вы нашли в интернете инструкцию вида brew install hermes или pip install hermes-agent — это не проект Nous Research, и ставить это на рабочую машину не стоит.

Шаг 1. Установка

Linux, macOS, WSL2, Android (Termux)

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

После завершения перечитайте профиль оболочки, чтобы в PATH появился новый бинарник:

source ~/.bashrc     # или source ~/.zshrc, если у вас zsh (по умолчанию в macOS)

Windows (PowerShell)

iex (irm https://hermes-agent.nousresearch.com/install.ps1)

Для macOS и Windows в документации как основной вариант рекомендуют десктопный установщик Hermes Desktop с сайта проекта. Командная строка удобнее, когда агент будет жить на сервере, а не на ноутбуке. Собрать и запустить десктопное приложение из уже установленного CLI можно командой hermes desktop.

Docker

Официальный образ — nousresearch/hermes-agent. Сначала один раз проходим мастер настройки в интерактивном контейнере:

mkdir -p ~/.hermes
docker run -it --rm \
  -v ~/.hermes:/opt/data \
  nousresearch/hermes-agent setup

Мастер спросит ключи и запишет их в ~/.hermes/.env на хосте. Затем запускаем постоянный контейнер со шлюзом:

docker run -d \
  --name hermes \
  --restart unless-stopped \
  -v ~/.hermes:/opt/data \
  -p 8642:8642 \
  nousresearch/hermes-agent gateway run

Все пользовательские данные — конфиг, ключи, сессии, навыки, память — лежат в одном смонтированном каталоге /opt/data, то есть в ~/.hermes/ на хосте. Сам образ состояния не хранит. У Docker-установки есть одно важное ограничение, которое проект называет прямым текстом: hermes update в Docker не поддерживается — обновляться нужно через docker pull и пересоздание контейнера (как — ниже).

Шаг 2. Убедиться, что установка прошла

Первое, что стоит сделать, — встроенная диагностика:

hermes doctor

Она проверяет зависимости и конфигурацию и подсказывает, что чинить. У неё есть флаг --fix, который пытается исправить найденное автоматически. Если команда hermes вообще не находится, почти всегда причина одна: в PATH нет ~/.local/bin. Вот куда установщик кладёт файлы:

Режим установкиКодБинарникДанные
Пользовательский~/.hermes/hermes-agent/~/.local/bin/hermes~/.hermes/
От root/usr/local/lib/hermes-agent//usr/local/bin/hermes/root/.hermes/

На Windows пользовательские данные лежат в %LOCALAPPDATA%\hermes.

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

Шаг 3. Выбрать модель и подключить ключ

Без модели агент бесполезен. Интерактивный мастер:

hermes model

Он проводит через OAuth-авторизацию или ввод API-ключа, даёт выбрать конкретную модель и сохраняет всё в config.yaml. Поддержаны OpenAI, Anthropic Claude, OpenRouter, Ollama, DeepSeek, AWS Bedrock, Google Gemini, xAI Grok и, по документации, ещё более сорока провайдеров.

Если возиться с ключами не хочется, есть путь в одну команду через Nous Portal — собственную площадку разработчиков проекта:

hermes setup --portal

Она включает Nous Portal (ключи провайдеров не нужны), настраивает модель и активирует Tool Gateway.

Главное ограничение по модели: в документации оно сформулировано жёстко — Hermes Agent требует модель с контекстом не менее 64 000 токенов. Половина историй «поставил, но ничего не работает» — это именно попытка подключить дешёвую модель с коротким контекстом.

Полезно сразу настроить запасную цепочку провайдеров, чтобы агент не вставал, когда у основного API сбой:

hermes fallback list
hermes fallback add

Токены у провайдеров платные и расходуются тем быстрее, чем длиннее контекст и чем чаще агент дёргает инструменты. Посмотреть фактический расход можно встроенной аналитикой: hermes insights --days 30.

Шаг 4. Первый запуск

hermes            # классический CLI
hermes --tui      # современный терминальный интерфейс

В приветственном баннере агент показывает выбранного провайдера и модель — это и есть подтверждение, что шаг 3 отработал. Дальше просто пишете задачу текстом. Многострочный ввод — Alt+Enter, Ctrl+J или Shift+Enter.

Минимум команд внутри сессии, которые стоит знать сразу:

КомандаЧто делает
/helpСписок всех команд
/toolsКакие инструменты доступны агенту
/modelПереключить модель на лету
/saveСохранить диалог

Вернуться к прошлому разговору: hermes --continue (короткий вид — hermes -c). Список сессий: hermes sessions list, интерактивный выбор с поиском — hermes sessions browse.

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

Шаг 5. Подключить Telegram

Это то, ради чего агента чаще всего и ставят: не терминал, а бот, которому можно написать с телефона.

  1. В Telegram открываете @BotFather и отправляете /newbot.
  2. Задаёте отображаемое имя и уникальное имя пользователя, оканчивающееся на bot.
  3. BotFather присылает токен вида 123456789:ABCdefGHIjklMNOpqrSTUvwxYZ. Токен — это полный контроль над ботом, храните его как пароль.
  4. Свой числовой Telegram ID узнаёте у @userinfobot — это число, а не @username.

Дальше два равнозначных пути. Интерактивно:

hermes gateway setup

Мастер проведёт по всем платформам стрелками, покажет, что уже настроено, и предложит перезапустить шлюз. Или вручную — дописать в ~/.hermes/.env:

TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrSTUvwxYZ
TELEGRAM_ALLOWED_USERS=123456789

Несколько пользователей перечисляются через запятую. Запуск в переднем плане для проверки:

hermes gateway

Бот выходит в онлайн за несколько секунд — напишите ему в Telegram, чтобы убедиться. Кроме Telegram шлюз умеет Discord, Slack, WhatsApp, Signal, электронную почту, Teams и Home Assistant.

Шаг 6. Чтобы агент работал круглосуточно

Запущенный в терминале hermes gateway умрёт вместе с сессией SSH. Для постоянной работы шлюз регистрируется как системный сервис:

hermes gateway install               # зарегистрировать пользовательский сервис (systemd/launchd)
hermes gateway start                 # запустить
hermes gateway status                # проверить состояние
sudo loginctl enable-linger $USER    # чтобы сервис жил после выхода из системы

Последняя строка — та самая, о которой забывают: без enable-linger пользовательский сервис systemd останавливается, когда вы отключаетесь от сервера.

В Docker роль сервиса играет сам контейнер с --restart unless-stopped. Если нужен веб-интерфейс управления, добавьте порт и переменную:

docker run -d \
  --name hermes \
  --restart unless-stopped \
  -v ~/.hermes:/opt/data \
  -p 8642:8642 \
  -p 9119:9119 \
  -e HERMES_DASHBOARD=1 \
  nousresearch/hermes-agent gateway run

Вне Docker панель поднимается командой hermes dashboard: по умолчанию порт 9119 и адрес 127.0.0.1, то есть наружу она сама по себе не смотрит — и выставлять её в интернет без обратного прокси с авторизацией не надо.

Безопасность: что включено по умолчанию

Hermes Agent — инструмент с доступом к терминалу, файлам и сети. Это ровно тот класс софта, где настройки по умолчанию надо знать наизусть, а не выяснять по факту.

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

Режим согласований задаётся в ~/.hermes/config.yaml:

approvals:
  mode: smart                    # smart | manual | off
  timeout: 300                   # сколько секунд ждать ответа
  cron_mode: deny                # поведение для фоновых заданий
  single_query_mode: deny        # поведение для разовых -q сессий

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

Флаг --yolo (он же /yolo и HERMES_YOLO_MODE=1) отключает все запросы на подтверждение в текущей сессии. На рабочем сервере ему делать нечего. Небольшое утешение: жёсткий чёрный список — форк-бомбы, rm -rf /, затирание диска — перекрывает YOLO и не выполняется даже с ним.

Ограничение записи на диск

Переменная HERMES_WRITE_SAFE_ROOT ограничивает запись: когда она задана, инструменты записи и правки файлов работают только внутри перечисленных каталогов. Отдельно и всегда, независимо от этой переменной, заблокированы защищённые пути — SSH-ключи, .env, учётные данные AWS.

Кто может писать боту

Шлюз по умолчанию запрещает всё: если ни один список доступа не настроен и не выставлен GATEWAY_ALLOW_ALL_USERS, отклоняются все пользователи. Это хороший дефолт, и ломать его флагом «пустить всех» у бота, за которым стоит доступ к терминалу, — плохая идея. Проверка идёт по цепочке: флаг «пустить всех» для платформы → одобренные через личную переписку → списки платформы (TELEGRAM_ALLOWED_USERS и аналоги) → общий список GATEWAY_ALLOWED_USERS → глобальный «пустить всех» → запрет.

Продакшн-чеклист из документации короткий: контейнерный бэкенд, явные списки доступа, запуск не от root, секреты в .env с правами chmod 600, ограничение рабочих каталогов через terminal.cwd. Если агент получает доступ к боевым системам, а не к тестовой песочнице, разумнее сначала спроектировать периметр, чем чинить последствия: мы настроим песочницу и белые списки для агента с доступом к терминалу под конкретный контур компании.

Обновление, резервная копия и удаление

hermes update --check      # посмотреть, что прилетит, ничего не устанавливая
hermes update --backup     # обновиться, сделав снимок состояния до обновления
hermes update --gateway    # обновиться и перезапустить шлюз
hermes backup -o ~/hermes-backup.zip
hermes uninstall

Релизы выходят часто — только с 30 июля по 19 августа 2026 года проект выпустил шесть версий, и в v0.20.5 набралось около 323 влитых pull request'ов. Практический вывод: --check и --backup перед обновлением на рабочей машине — не паранойя, а норма.

В Docker, напомним, hermes update не работает. Обновление там выглядит так:

docker pull nousresearch/hermes-agent:latest
docker rm -f hermes
docker run -d \
  --name hermes \
  --restart unless-stopped \
  -v ~/.hermes:/opt/data \
  nousresearch/hermes-agent gateway run

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

Что ломается чаще всего

СимптомПричинаЧто делать
hermes: command not foundВ PATH нет ~/.local/binsource ~/.bashrc, затем hermes doctor
Агент стартует и сразу падаетУ модели контекст меньше 64 000 токеновhermes model — выбрать другую модель
Бот в Telegram молчитВаш ID не в списке доступа — по умолчанию запрещены всеДобавить TELEGRAM_ALLOWED_USERS, перезапустить шлюз
Шлюз пропадает после выхода из SSHНе включён linger для пользовательского сервисаsudo loginctl enable-linger $USER
hermes update не работаетУстановка в Docker — обновление через образdocker pull + пересоздать контейнер
Непонятно, что вообще происходитhermes doctor, затем hermes logs -n 200

Если ничего не помогает, в документации описан порядок восстановления: hermes doctorhermes modelhermes setuphermes sessions listhermes --continuehermes gateway status. Есть и режим --safe-mode, отключающий все пользовательские настройки — им удобно проверить, что проблема именно в конфиге, а не в самом агенте.

Когда проще не делать самому

Инструкция выше рабочая, и по ней агент действительно поднимется — ничего специально не утаено. Но стоит честно понимать, что установка — это первый вечер, а не весь проект. Дальше начинается то, что съедает время каждую неделю: обновления с миграциями конфига, ключи провайдеров и их лимиты, разграничение прав для инструмента с доступом к shell, резервные копии, мониторинг шлюза, а главное — доведение агента до того, чтобы он приносил пользу в ваших процессах, а не отвечал на вопросы в терминале.

Ставить самому имеет смысл, если у вас есть человек, которому это интересно, и не жалко его времени на эксплуатацию. Если задача звучит как «хочу, чтобы это работало и приносило результат», разумнее довести ИИ-агента до реальных задач компании вместе с теми, кто это уже делал: постановка задач, интеграции, права доступа и сопровождение. Что входит в подписку и сколько стоит сопровождение агента — на странице тарифов.

Частые вопросы

Hermes Agent бесплатный?

Сам агент — открытый код под лицензией MIT, за него платить не нужно. Платными будут токены выбранной модели у её провайдера и сервер, если агент живёт не на вашем ноутбуке. Вариант без собственных ключей провайдеров — Nous Portal, он подключается командой hermes setup --portal.

Можно ли поставить его на обычный VPS?

Да, это штатный сценарий: Linux — платформа первого уровня поддержки, а шлюз штатно регистрируется как systemd-сервис. Единственное, за чем нужно следить, — не выставлять веб-панель наружу без авторизации и не запускать агента от root.

Чем это отличается от установки OpenClaw?

Идея похожа — открытый персональный агент, который ставится одной командой и подключается к мессенджеру. Отличается набор провайдеров, устройство памяти и навыков и модель эксплуатации. Мы отдельно разбирали сравнение OpenClaw и Hermes Agent для бизнеса.

Что делать, если команда установки не отработала до конца?

Запустить hermes doctor — он покажет, какой зависимости не хватает. Чаще всего это отсутствующий Git или, на Linux, xz-utils. Ставить агента через Homebrew, PyPI или AUR не нужно: эти способы установки проектом не поддерживаются.

Сколько времени занимает установка на практике?

На чистой машине с быстрым интернетом — 20–40 минут до первого рабочего диалога с моделью. Подключение Telegram добавляет ещё 10–15 минут, из которых половина уходит на BotFather. Настройка прав, лимитов и автозапуска на сервере — это уже отдельная работа на несколько часов.

Ставить Hermes Agent в Docker или прямо в систему?

Оба варианта штатные, и выбор сводится к тому, кто отвечает за автозапуск. При установке в систему агент живёт пользовательским сервисом (systemd/launchd), и там есть шаг, о котором чаще всего забывают: sudo loginctl enable-linger $USER — без него сервис останавливается, как только вы отключаетесь от сервера. В Docker роль сервиса играет сам контейнер с --restart unless-stopped, отдельный сервис заводить не нужно. Если планируете десктопное приложение, ставьте в систему: для сборки нужен g++/build-essential на самой машине.

Ubuntu или Debian — что выбрать под Hermes Agent?

Для Hermes Agent разницы нет: проект не выделяет ни один из этих дистрибутивов, а список предварительных зависимостей у них одинаковый — git, curl, xz-utils, плюс g++/build-essential, если нужен десктопный клиент. Берите тот дистрибутив, который уже стоит на вашем сервере и который вы умеете обновлять. Требований к оперативной памяти, диску и процессору проект не публикует.

Как ограничить, куда агент может писать файлы?

Переменной HERMES_WRITE_SAFE_ROOT: когда она задана, инструменты записи и правки файлов работают только внутри перечисленных каталогов. Независимо от неё всегда заблокированы защищённые пути — SSH-ключи, .env, учётные данные AWS. Отдельно стоит помнить про --yolo (HERMES_YOLO_MODE=1): он отключает запросы на подтверждение в текущей сессии, и на рабочем сервере ему делать нечего. Жёсткий чёрный список — форк-бомбы, rm -rf /, затирание диска — перекрывает YOLO и не выполняется даже с ним.

Источники: официальная документация Hermes Agent (hermes-agent.nousresearch.com/docs) и репозиторий проекта github.com/NousResearch/hermes-agent. Команды и ключи конфигурации сверены с версией v0.20.5, тег релиза v2026.8.19 от 19 августа 2026 года.