Как установить Hermes Agent на VPS: пошаговая инструкция

Hermes Agent — это открытый AI-агент от Nous Research, который живёт на вашем сервере, запоминает контекст между сессиями и доступен через Telegram, Discord или Slack. Установка на VPS занимает около 15 минут: одна команда для инсталлера, несколько шагов для настройки модели и подключения мессенджера. В этой статье — полная пошаговая инструкция от создания сервера до работающего агента с автозапуском.

Что такое Hermes Agent и зачем устанавливать его на VPS?

Hermes Agent — это открытый (MIT-лицензия) автономный AI-агент, созданный исследовательской лабораторией Nous Research. В отличие от обычного чат-бота, Hermes работает как полноценный агент: выполняет команды в терминале, работает с файлами, ищет в интернете, запоминает контекст между сессиями и развивает собственные навыки через систему скиллов.

Установка на VPS (виртуальный выделенный сервер) отличается от локальной тем, что агент работает 24/7 и доступен из любого устройства через мессенджер. Вы запускаете Hermes на сервере, подключаете Telegram-бота — и получаете AI-ассистента, который отвечает с телефона, помнит ваши прошлые задачи и выполняет поручения на сервере без вашего участия.

Системные требования для Hermes Agent на VPS

Hermes Agent сам по себе лёгкий — вся нагрузка идёт на LLM-провайдер, к которому агент обращается по API. Минимальная конфигурация для API-only сценария:

Ресурс Минимум Рекомендуется
vCPU 1 2 и более
Оперативная память 1 ГБ 2 ГБ+
Диск 5 ГБ 20 ГБ+
ОС Ubuntu 22.04/24.04, Debian 12 Ubuntu 24.04 LTS
Python 3.11+ (устанавливается автоматически) 3.11+
Сеть Доступ к API LLM-провайдера Стабильный интернет

Важно: если вы планируете запускать локальную модель через Ollama на том же сервере, потребуется значительно больше оперативной памяти (от 16 ГБ) и желательно GPU.

Шаг 1: Подготовка сервера

Подключение по SSH и обновление пакетов

Подключитесь к вашему VPS по SSH и обновите систему:

ssh root@ваш-ip-адрес
apt update && apt upgrade -y
apt install -y git curl ca-certificates xz-utils

Git — обязательное требование для установщика Hermes. Пакеты curl и xz-utils нужны для загрузки Node.js в формате .tar.xz. Python 3.11+ устанавливается автоматически через менеджер пакетов uv — вручную ставить не нужно.

Создание непривилегированного пользователя

Не запускайте Hermes от root. Создайте отдельного пользователя:

adduser hermes
usermod -aG sudo hermes
rsync --archive --chown=hermes:hermes ~/.ssh /home/hermes
su - hermes

Это важно по двум причинам: Hermes имеет встроенный доступ к терминалу и может выполнять любые команды на сервере, а непривилегированный пользователь ограничивает потенциальный ущерб.

Настройка SSH и файрвола

Отключите аутентификацию по паролю и оставьте только SSH-ключи в /etc/ssh/sshd_config:

PasswordAuthentication no

Убедитесь, что файрвол настроен (UFW или iptables). Откройте только порт SSH:

ufw allow OpenSSH
ufw enable

Шаг 2: Установка Hermes Agent

Вариант A: Однострочный установщик (рекомендуется для начала)

Официальный установщик от Nous Research автоматически ставит все зависимости: Python через uv, Node.js 22, ripgrep, ffmpeg и сам Hermes CLI:

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

После завершения перезагрузите shell:

source ~/.bashrc

Проверьте, что команда доступна:

hermes --version

Установщик размещает код в ~/.hermes/hermes-agent/, а данные (конфигурацию, память, сессии) в ~/.hermes/. Команда hermes создаётся как символическая ссылка в ~/.local/bin/hermes.

Вариант B: Docker (для продакшена)

Docker-установка изолирует агент и упрощает управление профилями. Nous Research рекомендует один контейнер на профиль.

Сначала установите Docker:

# Добавьте репозиторий Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# Перелогиньтесь, затем проверьте:
docker --version

Запустите контейнер с мастера настройки:

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

Мастер настройки запишет API-ключи в ~/.hermes/.env. После настройки запустите агент в фоновом режиме:

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

Именованный том ~/.hermes сохраняет память, сессии и навыки между пересозданиями контейнера. Порт 8642 опционален — он нужен для API-сервера и дашборда, но не обязателен, если вы используете только мессенджеры.

Шаг 3: Настройка LLM-провайдера

Hermes Agent не включает модель — вы подключаете свою. Запустите интерактивный мастер выбора:

hermes model

Мастер предложит выбрать провайдера и ввести API-ключ. Самый простой путь — Nous Portal: одна подписка покрывает 300+ моделей и встроенные инструменты (веб-поиск, генерация изображений, TTS, браузер):

hermes setup --portal

Эта команда выполнит OAuth-авторизацию, настроит Nous как провайдера и включит Tool Gateway одной операцией.

Поддерживаемые провайдеры

Hermes работает с любым провайдером, у которого есть OpenAI-совместимый API и контекстное окно от 64 000 токенов:

  • OpenRouter — маршрутизация по множеству моделей
  • Anthropic — модели Claude напрямую
  • OpenAI — модели GPT
  • Google AI Studio — модели Gemini
  • DeepSeek — прямой доступ к API DeepSeek
  • Ollama — локальные модели на своём сервере
  • Любые кастомные эндпоинты — VLLM, SGLang и другие
  • Минимальное требование — контекстное окно 64 000 токенов. Модели с меньшим окном не поддерживаются, так как не могут поддерживать рабочую память для многошаговых задач.

    Переключиться между провайдерами можно в любой момент командой hermes model — привязки к одному провайдеру нет.

    Шаг 4: Проверка работоспособности

    Диагностика

    Запустите встроенную диагностику:

    hermes doctor
    

    Команда проверит зависимости, версию Python, размер контекстного окна модели и доступность API. Исправьте все замечания перед переходом к следующему шагу.

    Первый тестовый диалог

    Запустите интерактивную сессию:

    hermes
    

    Задайте конкретный вопрос, чтобы проверить работу:

    Проверь текущую директорию и скажи, какой файл выглядит как основной файл проекта.
    

    Если Hermes отвечает, использует инструменты (терминал, чтение файлов) и разговор продолжается больше одного хода — базовая настройка работает.

    Шаг 5: Подключение мессенджера (Telegram)

    VPS-установка имеет смысл только если к агенту можно обращаться откуда угодно. Встроенный шлюз (gateway) подключает Hermes к Telegram, Discord, Slack, WhatsApp, Signal или email.

    Telegram — самый быстрый вариант для старта. Порядок действий:

  • Создайте бота через BotFather в Telegram
  • Скопируйте токен бота
  • Запустите настройку шлюза:
  • hermes gateway setup
    

    Мастер предложит выбрать платформу и ввести токен. После настройки запустите шлюз:

    hermes gateway
    

    Отправьте тестовое сообщение боту в Telegram — Hermes должен ответить.

    Проверка конфигурации шлюза

    Посмотреть текущую конфигурацию шлюза можно командой:

    hermes gateway status
    

    Конфигурация шлюза хранится в ~/.hermes/config.yaml. Секреты (токены ботов, API-ключи) — в ~/.hermes/.env.

    Шаг 6: Автозапуск через systemd

    Чтобы Hermes работал 24/7 и перезапускался после перезагрузки сервера, настройте systemd-сервис.

    Для нативной установки

    Создайте файл сервиса:

    sudo nano /etc/systemd/system/hermes.service
    

    Содержимое:

    [Unit]
    Description=Hermes Agent
    After=network-online.target
    
    [Service]
    Type=simple
    User=hermes
    WorkingDirectory=/home/hermes
    ExecStart=/home/hermes/.local/bin/hermes gateway
    Restart=always
    RestartSec=5
    
    [Install]
    WantedBy=multi-user.target
    

    Запустите сервис:

    sudo systemctl daemon-reload
    sudo systemctl enable --now hermes
    

    Параметр Restart=always автоматически перезапускает агент при падении. Остановить можно только явной командой systemctl stop hermes.

    Для Docker-установки

    Параметр --restart unless-stopped при запуске контейнера уже обеспечивает автозапуск. Проверьте:

    docker update --restart unless-stopped hermes
    

    Контейнер будет автоматически перезапускаться при перезагрузке хоста и при падении процесса.

    Шаг 7: Проверка итоговой конфигурации

    Пройдитесь по чек-листу после установки:

  • VPS на поддерживаемой ОС (Ubuntu 22.04/24.04, Debian 12)
  • Системные пакеты обновлены, установлены git, curl, xz-utils
  • Создан непривилегированный пользователь, SSH только по ключам
  • Hermes установлен (нативно или через Docker)
  • hermes --version возвращает ожидаемую версию
  • Мастер настройки пройден: выбран провайдер, введён API-ключ
  • Выбранная модель поддерживает контекстное окно от 64 000 токенов
  • hermes doctor показывает чистый результат
  • Hermes отвечает на тестовый запрос
  • Подключён хотя бы один мессенджер и протестирован
  • Настроен systemd-сервис или Docker restart policy
  • Директория ~/.hermes регулярно бэкапится
  • Как обновить Hermes Agent

    Для нативной установки — повторно запустите установщик: он обновит всё на месте. Для Docker — перетяните новый образ и пересоздайте контейнер с сохранённым томом данных:

    docker pull nousresearch/hermes-agent:latest
    docker stop hermes && docker rm hermes
    # Повторите docker run с теми же параметрами
    

    Проверьте релиз-ноуты перед обновлением. Команда hermes update автоматически определяет способ установки и показывает подходящую команду обновления.

    Частые ошибки при установке

    Попытка установки на Windows без WSL2. Hermes не работает на нативном Windows. Используйте WSL2 или Linux VPS.

    Неправильная версия Python. Установщик ставит Python 3.11+ через uv. Системный Python 3.10 или 3.9 вызывает молчаливые ошибки зависимостей.

    Модели с контекстным окном менее 64 000 токенов. Такие модели не могут поддерживать рабочую память для многошаговых задач. Hermes откажется запускаться.

    Запуск от root. Hermes имеет доступ к терминалу как встроенный инструмент. Непривилегированный пользователь ограничивает потенциальный ущерб.

    Пропуск hermes doctor. Большинство проблем с установкой проявляются именно здесь. Не пропускайте эту команду.

    Отсутствие бэкапа ~/.hermes. Эта директория содержит память, навыки, сессии и учётные данные. Потеря = потеря всего контекста агента.

    Использование браузерных консолей VPS для установки. Некоторые VPS-провайдеры (Hetzner Cloud и другие) предлагают управление сервером через браузер. Эти консоли искажают спецсимволы — двоеточия, собачки, слеши могут прийти неправильно. Подключайтесь по SSH.

    Запуск двух контейнеров Hermes на одну директорию данных. Файлы сессий и память не поддерживают параллельную запись. Один контейнер на профиль.

    FAQ

    Сколько стоит запуск Hermes Agent на VPS?

    Сам Hermes Agent бесплатный (MIT-лицензия). Расходы идут на VPS (от $3–5/мес за минимальную конфигурацию) и на LLM-провайдера (зависит от модели и объёма использования). Бесплатные модели доступны через OpenRouter и一些 провайдеры с бесплатными тарифами.

    Можно ли запустить Hermes без Docker?

    Да. Однострочный установщик работает нативно на Linux, macOS и WSL2 и создаёт команду hermes в системе. Docker рекомендуется для продакшена из-за изоляции и удобства управления, но нативная установка подходит для личного использования.

    Где Hermes хранит данные?

    В директории ~/.hermes по умолчанию. Там находятся конфигурация, API-ключи, память, сессии и навыки. В Docker эта директория монтируется как том /opt/data и сохраняется между пересозданиями контейнера.

    Какую модель выбрать для Hermes?

    Любую с контекстным окном от 64 000 токенов и OpenAI-совместимым API. Популярные варианты: Claude (Anthropic), GPT (OpenAI), Gemini (Google), DeepSeek, Qwen (Alibaba). Через OpenRouter можно переключаться между моделями без смены провайдера.

    Можно ли запустить несколько агентов на одном VPS?

    Да. Hermes поддерживает мультипрофили — отдельные поддиректории ~/.hermes/ с разными SOUL, навыками, памятью и учётными данными. В Docker рекомендуется один контейнер на профиль с s6-супервизором.