Цель простая: открыть телеграм, написать «собери мне сводку по рынку» — и получить сводку. Не открывая ноутбук и не заходя ни в какие панели. Терминал нужен ровно один раз — чтобы поселить агента на сервер. Дальше вы живёте в переписке.
На чём стоит этот чек-лист
Главный путь здесь — ставите не вы по бумажке, а Claude Code. У Hermes, в отличие от OpenClaw, готового скилла-установщика нет: агент идёт по промпту-установщику и по официальной документации, а эта страница задаёт рамку, точки приёмки и грабли. Две опоры:
hermes-agent.nousresearch.com/docs и README
репозитория NousResearch/hermes-agent, сверено 29.08.2026. Все команды ниже — оттуда.Чего мы не мерили сами. По этому документу от начала до конца мы не проходили:
тайминги и цены не замерены, проверка «спустя ночь» не делалась — а у Hermes именно
молчаливое зависание шлюза ловится сторожем из шага 6, а не глазами.
Если что-то разошлось — прав первоисточник, а не эта страница: документация →
hermes doctor --fix → чек-лист. Так и скажите агенту.
Что-то пошло не так — напишите нам. Что сработало, что нет, на каком провайдере — из этих отчётов чек-лист дописывается. Пишите в чат своего потока интенсива.
Чтобы не собирать вслепую — вот как это выглядит, когда всё готово. Обычная переписка в телеграме, с телефона.
Отличие от нейросети в телефоне — в трёх вещах: он вас не забывает, он умеет делать, а не только отвечать, и он работает, пока вы спите.
Если запомнить только этот раздел — уже сэкономите себе выходные.
Запустили Hermes на ноутбуке или просто командой в окне терминала — закрыли крышку, разорвали связь, и бот в телеграме замолчал. Ни ответов, ни задач по расписанию.
Hermes стоит на арендованной машине и прописан как служба
(hermes gateway install). Сервер перезагрузился — служба поднялась сама.
Вы спите, а бот отвечает.
Взяли самую бесплатную модель, дали сложную задачу, получили кашу — и решили, что Hermes бесполезен. Хотя бесполезной была модель.
Ставите нормальную модель с большим окном контекста. Требование жёсткое: минимум 64 000 токенов — модель с меньшим окном Hermes отвергает прямо на старте.
Бот создан, список разрешённых пустой или открыт всем — писать ему может любой, кто нашёл бота. А у бота есть терминал вашего сервера.
В настройках прописан TELEGRAM_ALLOWED_USERS с вашим ID. Плюс отдельный
пользователь на сервере вместо администратора.
| Статья | Порядок | Считается по |
|---|---|---|
| Сервер | минимальная машина у любого провайдера | времени: платите, даже когда агент молчит |
| Модель | от подписки ≈20 долларов в месяц до 30–50 долларов в сутки на API без маршрутизации | работе: токенам |
Вторая статья и есть настоящая. Разница между «20 долларов в месяц» и «полторы тысячи в месяц» — это выбор провайдера модели, а не сервера. И отдельная особенность круглосуточных агентов: тот, кто будит себя сам, тратит без вашего участия.
У OpenClaw есть три готовых скилла-установщика под провайдеров. У Hermes такого скилла нет — это честное отличие, а не упущение: проект моложе, чужих визардов под него пока никто не написал. Но путь тот же: установку ведёт Claude Code.
hermes-agent.nousresearch.com/docs — с прямым указанием:
проверять команды там, а не по своей памяти.Чтобы понимать, что вы собираете, достаточно пяти шагов — так описывает свою работу сам агент у человека, который живёт с ним полгода.
Всё, что вы будете добавлять после установки, ложится в три слоя — и это же три шага этого чек-листа.
| Слой | Что это | Где ниже |
|---|---|---|
| Инструменты | чем агент может действовать, а не только разговаривать: файлы, терминал, поиск, внешние сервисы | шаг 7 |
| Скиллы | готовые инструкции под повторяющиеся задачи — «как делать вот такое» | шаг 7 |
| Задачи по расписанию | что запускается без напоминаний — утром, еженедельно, по событию | шаг 9 |
Провайдер-специфичен только первый шаг. Всё дальше одинаково на любом хостинге. Шаги ниже нужны, чтобы понимать, что делает агент, и поймать его, если он свернёт не туда.
Сервер (он же VPS) — это компьютер в дата-центре, который вы снимаете помесячно. Он не выключается и всегда в интернете. Именно поэтому бот отвечает круглосуточно.
| Что | Минимум | Рекомендуем | Почему |
|---|---|---|---|
| Процессор | 2 ядра | 2–4 ядра | тяжёлое считает модель на своей стороне, машина «дирижирует» |
| Память | 2 ГБ | 4 ГБ | на 2 ГБ заведётся, но обработка аудио и Node.js съедают память быстро |
| Диск | 40 ГБ | 40 ГБ | установщик тянет Python, uv, Node.js, ripgrep и ffmpeg — 20 ГБ мало |
| Система | Ubuntu 22.04 или 24.04 LTS | под неё написаны все установочные скрипты | |
| Провайдер | Что учесть |
|---|---|
| Timeweb Cloud | наш текущий — единственный, проверенный нами боем. Есть зарубежные локации, оплата российской картой |
| Hetzner | лучшая цена за мощность; строгая проверка при регистрации |
| DigitalOcean | лучшая документация в индустрии — если это ваш первый сервер в жизни. Выключенная машина продолжает биллиться |
| Contabo · Vultr · RuVDS · Aeza | Contabo — больше всего памяти за доллар, слабее диск и поддержка. Vultr и Aeza — почасовая оплата, удобно для экспериментов |
| Yandex Cloud | у нас был, ушли: при том же железе на 30 % дороже Timeweb |
Цены не приводим намеренно — они устаревают быстрее документа. Требования к машине выше стабильны, прайс смотрите на сайте провайдера.
После оплаты провайдер пришлёт IP-адрес, логин root и пароль. Открываете
у себя Терминал (на Mac — программа «Терминал», на Windows — PowerShell) и вставляете
строку со своим адресом:
ssh root@203.0.113.42
Спросит «are you sure» — отвечаете yes. Потом попросит пароль: вводите
вслепую, символы не показываются — это нормально, ничего не сломалось.
Две минуты скучных команд: обновить систему и завести отдельного жильца, чтобы агент не хозяйничал с правами администратора.
sudo apt update && sudo apt upgrade -y sudo apt install curl git ca-certificates -y
sudo adduser hermes sudo usermod -aG sudo hermes sudo -iu hermes
Базовая защита — файрвол, защита от подбора пароля, автообновления безопасности:
sudo ufw --force reset sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 22/tcp sudo ufw --force enable sudo systemctl enable --now fail2ban sudo systemctl enable --now unattended-upgrades
Плюс вход по ключу вместо пароля. Конфиг проверять до перезагрузки
службы SSH — sudo sshd -t, иначе можно закрыть себе вход навсегда.
Одна команда. Установщик сам скачает Python 3.11, uv, Node.js, ripgrep и ffmpeg,
заберёт код и создаст команду hermes. Всё кладётся в свою папку, системное
не трогается. Один и тот же скрипт работает на Linux, macOS, WSL2 и Termux.
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Перечитать окружение — иначе команда hermes не найдётся — и сразу проверить
себя:
source ~/.bashrc # или ~/.zshrc hermes doctor
| Что | Где |
|---|---|
| Домашняя папка агента | ~/.hermes (переопределяется HERMES_HOME) |
| Секреты и токены | ~/.hermes/.env |
| Обычные настройки | ~/.hermes/config.yaml |
| Скиллы | ~/.hermes/skills/ |
| Исходники | ~/.hermes/hermes-agent — руками не трогаем |
Разделение секретов и настроек сделано намеренно: hermes config set сам
кладёт значение в нужный файл. Руками правьте config.yaml, ключи — только
командой.
exit, потом снова ssh) либо выполните
source ~/.bashrc. Система просто ещё не знает про новую команду.Самый важный выбор во всей инструкции: здесь решается, будет агент умным или бестолковым.
hermes setup
Мастер предлагает три режима:
| Режим | Что делает | Кому |
|---|---|---|
| Quick Setup | вход через браузер без ключей API; сразу модель плюс встроенные инструменты — поиск, картинки, синтез речи, облачный браузер | быстрый старт |
| Full Setup | каждый провайдер и инструмент руками, со своими ключами | провайдер уже выбран |
| Blank Slate | всё выключено, кроме минимума: провайдер и модель, файлы, терминал. Ни веба, ни памяти, ни расписания, ни скиллов | когда важно контролировать, что вообще включено |
Blank Slate стоит знать заранее: он пишет в конфиг явный список
включённого, и после hermes update ничего лишнего не подтянется. Обратный
путь открыт всегда — hermes tools, hermes skills opt-in --sync,
hermes setup agent.
Выбрать провайдера отдельно:
hermes model
| Путь | Как | Когда брать |
|---|---|---|
| Nous Portal | hermes setup --portal — один вход через браузер, 300+ моделей и встроенные инструменты | не хочется собирать пять ключей |
| Подписка ChatGPT / Codex | hermes model → вход по коду устройства | уже платите за ChatGPT |
| Подписка Claude | hermes model → вход через браузер (нужен тариф Max с докупленным расходом) | уже платите за Claude |
| OpenRouter | ввести ключ | нужна дешёвая модель на рутине; работает и с российских адресов |
| Свой endpoint | базовый URL и ключ | vLLM, Ollama, локальная модель |
hermes fallback add в справочнике не существует. Запасные варианты
настраиваются через hermes model и hermes config set.
Проверено по первоисточнику 29.08.2026.Первая переписка — та самая проверка, ради которой всё это:
hermes --tui # современный интерфейс, рекомендуется hermes --continue # проверка: должен вернуть в тот же разговор
Спросите что-нибудь проверочное: «расскажи, что за сервер, на котором ты запущен:
система, память, диск». Хороший знак — он не выдумал ответ, а реально сходил в терминал
и показал цифры. Успех выглядит так: в шапке ваша модель и провайдер · агент отвечает
без ошибки · при необходимости сам вызывает инструмент · разговор продолжается больше
одного хода · --continue возвращает в него. Если это работает — самая
тяжёлая часть позади.
Здесь агент перестаёт быть игрушкой в терминале и становится тем, кому вы пишете с дивана. Две минуты в самом телеграме:
/newbot, имя и
уникальный логин, обязательно заканчивающийся на bot. В ответ придёт токен
вида 123456789:ABCdef… — это ключ от бота, никому не показывайте.hermes gateway setup
Интерактивный мастер: платформы выбираются стрелками, видно, что уже настроено, и в конце он сам предложит запустить или перезапустить шлюз.
Впустить себя — строка в ~/.hermes/.env:
TELEGRAM_ALLOWED_USERS=123456789
Для нескольких — через запятую. Есть общая GATEWAY_ALLOWED_USERS сразу
для всех платформ.
GATEWAY_ALLOW_ALL_USERS=true не ставить никогда.
У бота терминал вашего сервера. Это не настройка удобства, это открытая дверь.hermes gateway install # прописать как службу (автозапуск) hermes gateway start # запустить hermes gateway status # убедиться, что живой
Загрузка при старте системы (только Linux):
sudo hermes gateway install --system sudo hermes gateway start --system
hermes logs gateway -n 50.Отдельная настройка, которой нет по умолчанию и которая закрывает ровно нашу боль —
«служба жива, а бот молчит». В ~/.hermes/config.yaml:
gateway: systemd_watchdog_seconds: 120
hermes gateway install --force
Служба начинает слать системе сигнал «я жив» — но только пока внутренний цикл реально проворачивается. Завис цикл — сигнал прекращается, система перезапускает процесс. Обычный обрыв сети за зависание не считается.
Обычная переписка. Никаких особых форматов и «правильных промптов» — говорите как человеку.
Можно надиктовать голосовое — оно расшифруется, скинуть скриншот, документ, архив или видео. Он разберёт и ответит по сути.
/help — что вообще можно · /new — начать разговор заново ·
/sethome — назначить этот чат домашним. Кнопка «/» в чате показывает меню.
Туда падают результаты задач по расписанию. Назначается командой /sethome
в нужном чате или переменной TELEGRAM_HOME_CHANNEL.
/new. Иначе он тащит за собой старый контекст и тратит на него деньги.
/clear.
В документации Hermes сброс разговора — /new. Проверено 29.08.2026.И главное: он помнит вас. Кто вы, чем занимаетесь, как любите оформлять результат — это переживает и перезапуск, и новый разговор.
Скилл — это папка с файлом SKILL.md: имя, описание, пошаговая инструкция
«как делать вот такую задачу». Описания видны агенту всегда, полный текст читается только
когда задача совпала — поэтому десятки скиллов не раздувают каждый запрос и их можно
иметь много.
hermes skills browse # что вообще есть hermes skills search kubernetes # поиск по слову hermes skills install openai/skills/k8s # поставить (сначала проверка безопасности) hermes skills list # что уже стоит
Каждый установленный скилл автоматически становится слэш-командой — и в терминале, и в телеграме. Из коробки в версии 0.20.5 идут 82 встроенных скилла плюс каталог на 117; сообществом собрано ещё около 165.
Инструменты и подключение внешних сервисов по общему протоколу MCP — тот же сервер работает и здесь, и в Claude Code:
hermes tools # что включено, по платформам
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"Команда /learn превращает готовый материал в скилл: показываете ей ссылку
на документацию, локальную папку с проектом или просто описываете процедуру словами —
агент собирает материал и пишет инструкцию сам. Для больших источников он создаёт скилл-базу
знаний с отдельной папкой справочников, которые подгружаются по требованию.
/learn https://docs.example.com/api/quickstart /learn клиент REST в ~/projects/acme-sdk /learn как я оформляю расход: открыть портал, дальше…
Тот же механизм работает и без вас: инструментом skill_manage агент создаёт,
правит и удаляет свои скиллы сам, сохраняя отработанный порядок действий. Рубеж контроля —
параметр skills.write_approval: требовать вашего одобрения перед записью.
На боевой машине его стоит включить.
Скилл — инструкция, текст, который агент читает. Плагин — новая способность: код, который регистрирует в ядре новые инструменты, хуки и команды.
hermes plugins # интерактивный список hermes plugins search notion hermes plugins install <название> hermes plugins enable <название> # добавить в разрешённые hermes plugins disable <название> hermes plugins list
plugins.enabled. Это защита от чужого кода, который начнёт работать без спроса.
Исключение — встроенные платформы и бэкенды, они грузятся сами.Три способа завести одно и то же — прямо в чате, из командной строки или просто попросив словами («каждый будний день в 9 утра присылай сводку»).
/cron add "every 1h" "Собери новые посты канала и пришли выжимку" /cron add "every 1h" "Разбери ленту" --skill blogwatcher
hermes cron create "every 1d at 09:00" "Утренний бриф"
Запуск не помнит прошлых. Формулируйте самодостаточно: «собери X, положи в Y», а не
«продолжи, что вчера». Связать две задачи можно параметром context_from.
Не прибили — задача запоминает модель на момент создания и при смене глобальной настройки отказывается запускаться, один раз предупредив. Сделано намеренно: чтобы ночная задача не уехала молча на дорогую модель.
Скрипт по расписанию, его вывод доставляется как есть, ноль токенов. Всё детерминированное держите здесь.
В документации заявлено восемь рубежей; три настраиваются руками и делают основную работу.
approvals: mode: smart # smart | manual | off timeout: 300 cron_mode: deny # что делает задача по расписанию, упёршись в опасную команду single_query_mode: deny
| Режим | Поведение |
|---|---|
| smart (по умолчанию) | вспомогательная модель оценивает риск: безобидное пропускает, явно опасное блокирует, спорное спрашивает у вас |
| manual | спрашивает всегда |
| off | не спрашивает никогда — то же самое, что режим --yolo |
mode: off и hermes --yolo — только в контейнере или на машине
«на выброс». На боевом сервере с вашими ключами это снятие последнего рубежа.
Значения cron_mode: deny и single_query_mode: deny —
правильные по умолчанию: ночная задача, у которой некому ответить на вопрос, должна
остановиться, а не согласиться сама с собой.
hermes config set terminal.backend docker # агент работает в контейнере hermes config set terminal.backend ssh # или на отдельной машине
Для Docker есть дополнительный слой: прокси, подставляющий ключи снаружи — контейнер
видит временные токены, а не ваши настоящие ключи
(hermes egress setup && hermes egress start).
hermes pairing approve telegram XKGH5N7P # одобрить по коду hermes pairing list # кто ждёт и кто уже впущен hermes pairing revoke telegram 123456789 # отозвать
Код живёт час, генерируется криптостойко, частота запросов ограничена. Впущенные делятся на два уровня — администратор (всё) и обычный (разговаривать плюс те команды, что вы открыли). Права в личке и в группе считаются раздельно: администратор в личке не становится администратором в группе автоматически.
Заходить на сервер ради этого придётся редко.
hermes update # обновиться hermes doctor # диагностика, есть --fix hermes gateway status # жив ли шлюз hermes logs gateway -n 50 # что происходило hermes insights --days 7 # сколько ушло денег за неделю hermes backup # выгрузить всю настройку
hermes backup стоит запомнить отдельно. Переезд на
новый сервер не требует повторять установку с нуля. Делать до первого крупного
обновления, а не после.Сначала — порядок восстановления из документации, он закрывает большинство случаев:
hermes doctor hermes model hermes setup hermes sessions list hermes --continue hermes gateway status
| Симптом | Причина и действие |
|---|---|
Команда hermes не найдена после установки | не перечитано окружение → source ~/.bashrc или перезайти на сервер |
| Открывается, но отвечает пусто или ломано | провайдер или модель настроены неверно → hermes model, проверить авторизацию |
| Модель отвергнута прямо на старте | окно контекста меньше 64 000 токенов → взять другую |
| Свой endpoint «работает», но выдаёт мусор | неверный базовый URL, имя модели либо API не OpenAI-совместимый → проверить в отдельном клиенте |
| Шлюз запущен, но никто не может писать боту | токен, список допущенных или настройка платформы не доделаны → hermes gateway setup, затем status |
| Служба жива, бот молчит | включить сторож цикла — systemd_watchdog_seconds, шаг 6 |
hermes --continue не находит прошлую сессию | сменился профиль либо сессия не сохранилась → hermes sessions list |
| Модель «недоступна», странные переключения | маршрутизация и запасные модели слишком агрессивны → выключить, пока базовый провайдер не станет стабильным |
| Задача по расписанию перестала запускаться и один раз предупредила | сменилась глобальная модель, а у задачи она не прибита → hermes cron edit <id> --provider <p> --model <m> |
| SSH перестал пускать посреди установки | fail2ban забанил за частоту подключений → веб-консоль провайдера, снять бан |
Раздел честный, на наших цифрах, а не на чужой витрине. Мы живём с этим классом инструментов с апреля 2026 — на OpenClaw, но устройство и грабли у Hermes те же.
Один сервер, две изолированные зоны на двух человек, боты в телеграме у каждого, службы с автозапуском, шесть задач по расписанию, вход только через закрытую сеть — порт SSH наружу закрыт намеренно.
Прямая цитата из нашей же инвентаризации: готовых агентов под OpenClaw у нас нет — есть настроенный характер бота и два справочных скилла. Инфраструктура выросла быстрее, чем содержание.
Ставить всё заново не нужно. Мастер hermes setup сам замечает папку
~/.openclaw и предлагает перенос ещё до настройки.
hermes claw migrate --dry-run # сначала посмотреть, что переедет hermes claw migrate # перенести hermes claw migrate --preset user-data # перенести без секретов
Переезжает: файл характера SOUL.md · память · свои скиллы (в
~/.hermes/skills/openclaw-imports/) · список разрешённых команд · настройки
платформ, список допущенных пользователей и рабочая папка · ключи из разрешённого списка
(Telegram, OpenRouter, OpenAI, Anthropic, ElevenLabs) · инструкции рабочего пространства.
Все объяснены через быт — чтобы не гуглить посреди установки.
.env и нигде больше.