Цель простая: открыть телеграм, написать «собери мне сводку по рынку» — и получить сводку. Не открывая ноутбук и не заходя ни в какие панели. Терминал нужен ровно один раз — чтобы поселить агента на сервер. Дальше вы живёте в переписке.
Как устроена эта страница
Верх — для вас: три видео, один промпт для Claude Code, ваши действия и как понять, что всё получилось. Низ — справочник: что происходит под капотом. Его читает Claude Code, вам он не обязателен.
Проверено на живом сервере 14.09.2026: Timeweb, Ubuntu 24.04, модель по подписке ChatGPT, Hermes v0.21.2. Бот ответил после перезагрузки, задача по расписанию пришла в Telegram сама.
Если Claude Code и сервер у вас уже есть — переходите сразу к шагу 3. Если нет — пройдите по порядку: каждое следующее видео опирается на предыдущее.
Для тех, кто ещё не работал с Claude Code: подписка, установка Cursor, окружение, первый запуск. Дальше именно Claude Code помогает купить и настроить сервер. 22 минуты.
Главы — в описании ролика на YouTube. Промпты и скриншоты — в пошаговом гайде.
Покупка в Timeweb Cloud, вход по ключу, закрытая сеть и firewall — без единой команды руками. Для одного агента хватит 2 ядер, 4 ГБ памяти и 50 ГБ диска. Ставите несколько агентов — покупка та же, конфигурацию подберёт Claude Code. 64 минуты.
Пошаговый гайд со скриншотами — server.ikigaipromotion.kz. Регистрируйтесь по нашей ссылке Timeweb: после первой оплаты сервера на месяц бонус получаете и вы, и мы — по 300 ₽ за облачный сервер, по 2 000 ₽ за выделенный.
Вся установка по этой странице, шаг за шагом и без склеек: подготовка сервера, подписка ChatGPT, бот в Telegram, бизнес-скиллы и живая задача — разбор конкурентов. 77 минут.
Главы — в описании ролика на YouTube. Промпты и чек-лист — прямо на этой странице.
Команды набирать не нужно. Работает связка: вы + Claude Code + эта инструкция. Около часа.
| Кто | Что делает |
|---|---|
| Вы | вставляете один промпт и делаете несколько простых действий: входите в ChatGPT, создаёте бота, пишете ему |
| Claude Code | выполняет все команды на сервере, проверяет каждый шаг и объясняет, что происходит |
| Инструкция | говорит Claude Code порядок действий и грабли, найденные на живой установке. Для сверки он открывает ещё и официальную документацию Hermes |
Установи мне агента Hermes на мой сервер и подключи его к Telegram. Я не программист — объясняй простыми словами.
Сначала прочитай две инструкции, потом начинай:
1. Нашу проверенную инструкцию. Скачай её целиком этой командой и прочитай полностью, а не пересказом:
curl -fsSL https://agenty.ikigaipromotion.kz/hermes-install.md
2. Официальную документацию Hermes: https://hermes-agent.nousresearch.com/docs
Если они расходятся — права официальная документация. Скажи мне, что разошлось.
Что у меня есть: сервер Ubuntu 24.04 с входом по SSH-ключу (IP: [впишите, если знаете]), подписка ChatGPT, Telegram на телефоне.
Как работаем:
— Один шаг за раз. После каждого шага покажи проверку и скажи, что получилось.
— Пароли, токены и коды я ввожу сам. В чат их не проси.
— Дойдя до действия, которое могу сделать только я, — остановись и объясни, куда нажать.
— Ошибка — покажи её целиком, найди причину в инструкции или документации, потом чини.
Готово, когда: бот отвечает мне в Telegram после перезагрузки сервера, работает скилл offers и одна задача по расписанию пришла сама./newbot → имя → логин, который заканчивается на bot. BotFather пришлёт токен — длинную строку. В чат Claude токен не вставляйте./sethome: туда будут приходить результаты по расписанию. После перезагрузки сервера Claude попросит написать боту ещё раз.Untrusted Code Integration — это его защита, а не ошибка. Попросите показать, что внутри скиллов, и, если всё в порядке, нажмите «разрешить»./offers У меня [ваш бизнес], [цена], [в чём сложность]. Упакуй оффер для поста в Instagram.| Что проверить | Как выглядит успех |
|---|---|
| Мозг подключён | Claude показал ответ агента с реальными цифрами вашего сервера |
| Бот живой | бот ответил вам в Telegram |
| Переживает перезагрузку | после перезагрузки сервера бот снова ответил |
| Скилл работает | на просьбу про оффер пришёл готовый текст поста |
| Работает сам | пробное сообщение по расписанию пришло без вашего участия |
| Что видите | Что написать |
|---|---|
| Уверенно говорит, что чего-то нет или так нельзя | «Перепроверь в официальной документации и в нашей инструкции» |
| Ходит по кругу на одной ошибке | «Остановись. Покажи ошибку целиком, найди причину в инструкции и предложи другой путь» |
| Пишет «готово», а бот молчит | «Проверь, что это реально работает, и покажи вывод» |
| Просит прислать токен или пароль в чат | «Нет. Сделай скрипт, чтобы я ввёл его сам» |
Claude Code отказался ставить скиллы: Untrusted Code Integration | «Покажи простыми словами, что внутри каждого скилла, потом повтори установку — я разрешу» |
| Сделал проще, чем просили | «Готово — это когда бот ответил мне в Telegram после перезагрузки сервера» |
Чтобы не собирать вслепую — вот как это выглядит, когда всё готово. Обычная переписка в телеграме, с телефона.
Отличие от нейросети в телефоне — в трёх вещах: он вас не забывает, он умеет делать, а не только отвечать, и он работает, пока вы спите.
Если запомнить только этот раздел — уже сэкономите себе выходные.
Запустили Hermes на ноутбуке или просто командой в окне терминала — закрыли крышку, разорвали связь, и бот в телеграме замолчал. Ни ответов, ни задач по расписанию.
Hermes стоит на арендованной машине и прописан как служба
(hermes gateway install). Сервер перезагрузился — служба поднялась сама.
Вы спите, а бот отвечает.
Взяли самую бесплатную модель, дали сложную задачу, получили кашу — и решили, что Hermes бесполезен. Хотя бесполезной была модель.
Ставите нормальную модель с большим окном контекста. Требование жёсткое: минимум 64 000 токенов — модель с меньшим окном Hermes отвергает прямо на старте.
Бот создан, список разрешённых пустой или открыт всем — писать ему может любой, кто нашёл бота. А у бота есть терминал вашего сервера.
В настройках прописан TELEGRAM_ALLOWED_USERS с вашим ID. Плюс отдельный
пользователь на сервере вместо администратора.
| Статья | Порядок | Считается по |
|---|---|---|
| Сервер | минимальная машина у любого провайдера | времени: платите, даже когда агент молчит |
| Модель | от подписки ≈20 долларов в месяц до 30–50 долларов в сутки на API без маршрутизации | работе: токенам |
Вторая статья и есть настоящая. Разница между «20 долларов в месяц» и «полторы тысячи в месяц» — это выбор провайдера модели, а не сервера. И отдельная особенность круглосуточных агентов: тот, кто будит себя сам, тратит без вашего участия.
Эту часть читать не обязательно: по ней работает Claude Code. Она пригодится, если хотите понимать каждый шаг или поймать Claude, если он свернёт не туда. Та же последовательность одним файлом — agenty.ikigaipromotion.kz/hermes-install.md.
Чтобы понимать, что вы собираете, достаточно пяти шагов — так описывает свою работу сам агент у человека, который живёт с ним полгода.
Всё, что вы будете добавлять после установки, ложится в три слоя — и это же три шага этого чек-листа.
| Слой | Что это | Где ниже |
|---|---|---|
| Инструменты | чем агент может действовать, а не только разговаривать: файлы, терминал, поиск, внешние сервисы | шаг 7 |
| Скиллы | готовые инструкции под повторяющиеся задачи — «как делать вот такое» | шаг 7 |
| Задачи по расписанию | что запускается без напоминаний — утром, еженедельно, по событию | шаг 8 |
Провайдер-специфичен только первый шаг. Всё дальше одинаково на любом хостинге. Шаги ниже нужны, чтобы понимать, что делает агент, и поймать его, если он свернёт не туда.
Сервер (он же VPS) — это компьютер в дата-центре, который вы снимаете помесячно. Он не выключается и всегда в интернете. Именно поэтому бот отвечает круглосуточно.
| Что | Минимум | Рекомендуем | Почему |
|---|---|---|---|
| Процессор | 2 ядра | 2–4 ядра | тяжёлое считает модель на своей стороне, машина «дирижирует» |
| Память | 2 ГБ | 4 ГБ | на 2 ГБ заведётся, но обработка аудио и Node.js съедают память быстро |
| Диск | 40 ГБ | 40 ГБ | сама установка ~1,2 ГБ, система ~5 ГБ — остальное запас под логи и файлы агента |
| Система | Ubuntu 22.04 или 24.04 LTS | под неё написаны все установочные скрипты | |
| Провайдер | Что учесть |
|---|---|
| Timeweb Cloud | наш текущий — единственный, проверенный нами боем. Есть зарубежные локации, оплата российской картой |
| Hetzner | лучшая цена за мощность; строгая проверка при регистрации |
| DigitalOcean | лучшая документация в индустрии — если это ваш первый сервер в жизни. Выключенная машина продолжает биллиться |
| Contabo · Vultr · RuVDS · Aeza | Contabo — больше всего памяти за доллар, слабее диск и поддержка. Vultr и Aeza — почасовая оплата, удобно для экспериментов |
| Yandex Cloud | у нас был, ушли: при том же железе на 30 % дороже Timeweb |
Цены не приводим намеренно — они устаревают быстрее документа. Требования к машине выше стабильны, прайс смотрите на сайте провайдера.
После оплаты у сервера появится IP-адрес. Открываете у себя Терминал (на Mac программа «Терминал», на Windows PowerShell) и вставляете строку со своим адресом:
ssh root@203.0.113.42
Спросит «are you sure», отвечаете yes. Дальше два варианта. Если при
заказе вы добавили SSH-ключ (так надёжнее, и мы советуем именно так),
пароль не спросят, вы сразу внутри. Если сервер создан с паролем, вводите его вслепую:
символы не показываются, это нормально.
Две минуты скучных команд: обновить систему и завести отдельного жильца, чтобы агент не хозяйничал с правами администратора.
sudo apt update && sudo apt upgrade -y sudo apt install curl git ca-certificates -y
sudo adduser --disabled-password --gecos "" hermes
sudo loginctl enable-linger hermeshermes не нужны. Всё системное —
компилятор, поиск по файлам, обработку аудио — ставит администратор заранее (шаг 3). Агент живёт без sudo,
а человеку не нужно придумывать пароль. Проверено 14.09: без компилятора установщик падает и просит пароль —
поэтому системные пакеты ставятся до него.Базовая защита — файрвол, защита от подбора пароля, автообновления безопасности:
sudo ufw --force reset sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 22/tcp sudo ufw --force enable sudo apt install fail2ban -y sudo systemctl enable --now fail2ban sudo systemctl enable --now unattended-upgrades sudo timedatectl set-timezone Asia/Almaty
Последняя строка ставит часовой пояс. Сервер у провайдера живёт по UTC, и расписание Hermes
считается по часам сервера: без неё «каждое утро в 9:00» придёт в 14:00 по Алматы.
Подставьте свой город. fail2ban в Ubuntu 24.04 не установлен, поэтому без строки
apt install следующая команда падает (проверено 14.09).
Плюс вход только по ключу. На чистом сервере хостинга вход по паролю включён
(проверено 15.09, Hermes сам записал это предупреждение в журнал). Конфиг проверять
до перезагрузки службы SSH — sudo sshd -t, иначе можно закрыть
себе вход навсегда:
printf 'PasswordAuthentication no\nKbdInteractiveAuthentication no\nPermitRootLogin prohibit-password\n' | sudo tee /etc/ssh/sshd_config.d/01-keys-only.conf sudo sshd -t && sudo systemctl reload ssh
Проверьте вход по ключу в новом окне, не закрывая текущее. Порт
10050 в списке открытых — мониторинг хостинга, файрвол закрывает его снаружи.
Одна команда. Установщик сам ставит uv, Node.js и Python в свою папку, забирает код
и создаёт команду hermes. Один и тот же скрипт работает на Linux, macOS,
WSL2 и Termux. Но несколько системных пакетов ему нужны через
sudo: компилятор, быстрый поиск по файлам, обработка аудио. Надёжнее
поставить их заранее, а потом запускать установщик:
Первая строка — от администратора, вторая — от пользователя hermes:
sudo apt install -y xz-utils build-essential python3-dev libffi-dev ripgrep ffmpeg
sudo -iu hermes
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bashpython3-dev и libffi-dev он тоже тянется к sudo, даже с компилятором.
С первой строкой до готовой команды hermes проходит полторы минуты. Вся установка
занимает около 1,2 ГБ.Браузер агента. Без sudo установщик пропускает системные библиотеки Chromium, а браузер нужен агенту, чтобы открывать живые сайты. От администратора, после установщика:
cd /home/hermes/.hermes/hermes-agent && sudo env PATH=/home/hermes/.hermes/node/bin:$PATH npx --yes playwright install-deps chromiumНадпись установщика «No sudo — skipping» после этого останется — она ложная. В
hermes doctor норма: предложение миграции настроек и уязвимости npm в модулях
браузера; их закрывает hermes update.
Перечитать окружение — иначе команда 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 → вход по коду устройства. Без меню, когда ставит агент: hermes auth add openai-codex --type oauth --no-browser | уже платите за ChatGPT |
| Подписка Claude | hermes model → вход через браузер. Только тариф Max с докупленным расходом; с Pro этот путь не работает — нужен ключ API | уже платите за Claude Max |
| OpenRouter | ввести ключ | нужна дешёвая модель на рутине; работает и с российских адресов |
| Свой endpoint | базовый URL и ключ | vLLM, Ollama, локальная модель |
hermes fallback add в справочнике не существует. Запасные варианты
настраиваются через hermes model и hermes config set.
Проверено по первоисточнику 29.08.2026.HTTP 400 … not supported when using Codex with a ChatGPT
account, и выглядит это как «подписка не работает». Модель выбирается в меню
hermes model или двумя командами:
hermes config set model.provider openai-codex hermes config set model.default gpt-6-astra
hermes model: 15.09 это была
gpt-6-astra. Предупреждение tirith security scanner … not available
при первом запуске одноразовое — сканер ставится сам.Первая переписка — та самая проверка, ради которой всё это:
hermes --tui # современный интерфейс, рекомендуется hermes --continue # проверка: должен вернуть в тот же разговор
Спросите что-нибудь проверочное: «расскажи, что за сервер, на котором ты запущен:
система, память, диск». Хороший знак — он не выдумал ответ, а реально сходил в терминал
и показал цифры. Успех выглядит так: в шапке ваша модель и провайдер · агент отвечает
без ошибки · при необходимости сам вызывает инструмент · разговор продолжается больше
одного хода · --continue возвращает в него. Если это работает — самая
тяжёлая часть позади.
Здесь агент перестаёт быть игрушкой в терминале и становится тем, кому вы пишете с дивана. Две минуты в самом телеграме:
/newbot, имя и
уникальный логин, обязательно заканчивающийся на bot. В ответ придёт токен
вида 123456789:ABCdef… — это ключ от бота, никому не показывайте.hermes gateway setup
Интерактивный мастер: платформы выбираются стрелками, видно, что уже настроено, и в
конце он сам предложит запустить или перезапустить шлюз. Если ставит агент без живого
терминала, мастер можно заменить двумя строками в ~/.hermes/.env:
TELEGRAM_BOT_TOKEN=… и список разрешённых ниже. Токен вставляете вы сами,
не через переписку.
Впустить себя — строка в ~/.hermes/.env:
TELEGRAM_ALLOWED_USERS=123456789
Для нескольких — через запятую. Есть общая GATEWAY_ALLOWED_USERS сразу
для всех платформ.
GATEWAY_ALLOW_ALL_USERS=true не ставить никогда.
У бота терминал вашего сервера. Это не настройка удобства, это открытая дверь.sudo loginctl enable-linger $USER # служба живёт, даже когда вы вышли с сервера hermes gateway install # прописать как службу hermes gateway start # запустить systemctl --user is-enabled hermes-gateway # должно ответить: enabled
hermes gateway install может упасть на systemctl --user daemon-reload,
а start после этого всё равно запустит службу. Статус «running», но
без автозапуска: после перезагрузки бот молчит. Поэтому последняя строка обязательна.
Если ответила не enabled, выполните hermes gateway install --force
и проверьте снова.Загрузка при старте системы (только Linux):
sudo hermes gateway install --system sudo hermes gateway start --system
/sethome.
Перезагрузите машину, закройте терминал, возьмите телефон и напишите боту «привет, ты кто».
Ответил — всё собралось, дальше терминал вам не нужен. Молчит — вернитесь и посмотрите
hermes logs gateway -n 50.Отдельная настройка, которой нет по умолчанию и которая закрывает ровно нашу боль —
«служба жива, а бот молчит». В ~/.hermes/config.yaml уже есть строка
gateway: null: замените её, а не дописывайте второй блок. Вместо правки файла
работает и hermes config set gateway.systemd_watchdog_seconds 120 — она пишет
«not a recognized config key», но сторож включается (проверено 15.09); верьте проверке
WatchdogUSec, а не предупреждению:
gateway: systemd_watchdog_seconds: 120
hermes gateway install --force systemctl --user restart hermes-gateway systemctl --user show hermes-gateway -p WatchdogUSec # должно быть: 2min
Без restart сторож не включается, хотя в файле службы он уже прописан
(проверено 14.09).
Служба начинает слать системе сигнал «я жив» — но только пока внутренний цикл реально проворачивается. Завис цикл — сигнал прекращается, система перезапускает процесс. Обычный обрыв сети за зависание не считается.
Обычная переписка. Никаких особых форматов и «правильных промптов» — говорите как человеку.
Можно надиктовать голосовое — оно расшифруется, скинуть скриншот, документ, архив или видео. Он разберёт и ответит по сути.
/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 inspect <идентификатор> # прочитать до установки hermes skills install <идентификатор> # поставить (сначала проверка безопасности) hermes skills list # что уже стоит
Каждый установленный скилл автоматически становится слэш-командой — и в терминале,
и в телеграме. Идентификатор берите из колонки поиска: он выглядит как
автор/репозиторий/путь/имя. Встроенных скиллов в версии 0.21.2 было 53
(сверено 14.09; их число меняется от версии к версии, точный список покажет hermes skills list),
сообществом собрано ещё больше сотни.
Проверено 14.09 на Hermes v0.21.2 и 15.09 на v0.21.3. Скиллы ставятся прямо из GitHub, проходят проверку
безопасности и вызываются слэш-командой. Маркетинговые — из открытой библиотеки
coreyhaines31/marketingskills, решения — из CodeAlive-AI/ceo-ai-os, обе под лицензией MIT.
| Скилл | Что делает для бизнеса |
|---|---|
product-marketing | один раз рассказываете о бизнесе — агент сохраняет контекст, и остальные скиллы им пользуются |
offers | упаковывает предложение: бонусы, гарантия, честная срочность |
competitor-profiling | разбирает конкурента по ссылке на сайт: цены, сильные стороны, пробелы. Написан под платные Firecrawl и DataForSEO — без них попросите агента искать своим веб-поиском и браузером |
competitive-analysis | стратегия поверх досье: где угроза, где вы сильнее, как выигрывать |
lead-magnets | что дать клиенту в обмен на контакт: чек-лист, подборка, пробник |
decision-playbook | разбор решения по готовым схемам: поднять цену, нанять, закрыть направление |
hermes skills install coreyhaines31/marketingskills/skills/product-marketing --yes hermes skills install coreyhaines31/marketingskills/skills/offers --yes hermes skills install coreyhaines31/marketingskills/skills/competitor-profiling --yes hermes skills install coreyhaines31/marketingskills/skills/lead-magnets --yes hermes skills install CodeAlive-AI/ceo-ai-os/skills/decision-playbook --yes hermes skills install CodeAlive-AI/ceo-ai-os/skills/competitive-analysis --yes hermes skills list
Untrusted Code Integration — скиллы приходят из чужого GitHub.
Это не ошибка. Попросите Claude показать, что внутри каждого скилла, и разрешите установку
сами. Итог проверяйте по hermes skills list, а не по хвосту вывода установки.
competitor-research из ceo-ai-os не ставьте: внутри запуск чужой программы и платный поиск.Проверка — напишите агенту:
/offers У меня студия маникюра в Алматы, маникюр с покрытием стоит 8000 тенге, в будни мало клиенток. Упакуй оффер коротко, для поста в Instagram.
У нас агент применил скилл и за 12 секунд выдал готовый пост: будни, 8000 ₸ плюс дизайн на два ногтя в подарок, призыв написать «БУДНИ» в Direct. Проверяли в терминале; в телеграме команда та же.
copywriting из той же библиотеки: сканер принял за утечку строку в тестовом файле.
Не ставьте с --force вслепую — попросите Claude Code показать находку и решите сами.
Для текстов хватает offers.Инструменты и подключение внешних сервисов по общему протоколу 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 "0 9 * * *" "Утренний бриф" --deliver telegram # каждый день в 9:00 hermes cron create "every 2h" "Проверь ленту" # каждые два часа
"every 1d at 09:00", которая
гуляет по гайдам и стоит примером даже в документации, не работает: Invalid duration.
Работают "every monday 9am" и cron-строка минуты часы * * *. Время
считается по часам сервера, поэтому в шаге 2 мы ставим свой часовой пояс. Результат приходит
в домашний чат — тот, где вы отправили боту /sethome.hermes cron create "every monday 9am" "Идея акции на неделю через скилл offers" --deliver telegram hermes cron create "in 2m" "Короткое проверочное сообщение" --deliver telegram # разовая проверка hermes cron list --all hermes cron remove <id> # выполненная разовая задача сама из списка не уходит
Запуск не помнит прошлых. Формулируйте самодостаточно: «собери 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 config set skills.write_approval true systemctl --user restart hermes-gateway
По умолчанию false: агент правит свои скиллы сам, не спрашивая. С
true он предлагает изменение, а вы подтверждаете кнопкой в Telegram. Проверено
15.09: без этой строки обещание «учится под вашим контролем» не выполняется.
Заходить на сервер ради этого придётся редко.
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 забанил за неудачные попытки входа (не тот ключ или пароль) → веб-консоль провайдера, sudo fail2ban-client unban --all |
| Установщик падает: «No C++ compiler found» или просит пароль | нет системных пакетов → поставить от администратора первую строку шага 3 и запустить установщик снова |
Первая переписка: HTTP 400 … not supported when using Codex with a ChatGPT account | в настройках осталась модель Claude из шаблона → hermes config set model.default gpt-6-astra (или первая модель подписки в hermes model) |
| Бот отвечает «No home channel is set for Telegram» | не задан домашний чат → отправьте боту /sethome |
| Агент не может открыть сайт, установщик писал «No sudo — skipping» | нет системных библиотек браузера → команда playwright install-deps chromium из шага 3 |
| Установщик просит пароль, хотя компилятор стоит | нет python3-dev и libffi-dev → первая строка шага 3 |
| После перезагрузки бот молчит, хотя до неё отвечал | служба без автозапуска → systemctl --user is-enabled hermes-gateway; не enabled — hermes gateway install --force |
| Сводка «в 9 утра» приходит в 14:00 | сервер по UTC → sudo timedatectl set-timezone Asia/Almaty |
Раздел честный, на наших цифрах, а не на чужой витрине. Мы живём с этим классом инструментов с апреля 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 и нигде больше.Та же связка без программиста выпускает контент: карусели, посты, видео — больше 50 креативов в неделю. Два часа одним дублем, со всеми ошибками и правками:
Фабрика контента: Claude Code вместо агентства — 2 часа одним дублем
Фабрика контента в Claude Code: 50+ креативов в неделю вместо агентстваСмотреть Фабрику контента →
Интенсив в вашу команду. Сотрудники ставят агентов и собирают инструменты на задачах вашего бизнеса. Продюсер Алия Рызыхан, WhatsApp +7 776 086 8376.
Написать Алие →