Hermes AI Assistant — установка, настройка, рабочий процесс и устранение неполадок

Установка и быстрое начало работы с агентом Hermes для разработчиков

Содержимое страницы

Hermes Agent — это самодостаточный, независимый от моделей ИИ-ассистент, работающий на локальной машине или недорогом VPS, взаимодействующий через терминал и мессенджеры, который со временем совершенствуется, превращая повторяющиеся задачи в переиспользуемые навыки.

По функциональности он очень похож на OpenClaw, другой самодостаточной стеком ассистента, построенным вокруг инструментов, памяти и локального контроля.

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

Что касается компромиссов при развертывании и выбора среды выполнения, Размещение LLM в 2026 году: локальное, самодостаточное и облачные инфраструктуры в сравнении предоставляет карту размещения, а Производительность LLM в 2026 году: бенчмарки, узкие места и оптимизация охватывает вопросы пропускной способности и задержки после запуска Hermes.

peronal-ai-assistant on laptop

Моя субъективная оценка: Hermes наиболее интересен, когда его рассматривают как инфраструктуру, а не как вкладку, которую вы открываете изредка. Как только он работает как служба и имеет стабильный домашний каталог, ваши промпты начинают выглядеть меньше как «чат» и больше как «операции» (ops).

Что такое Hermes Agent и почему это важно

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

Два дизайнерских решения заслуживают особого внимания, поскольку они определяют всё остальное в этом руководстве.

Во-первых, Hermes не привязан к одному провайдеру моделей. Официальный процесс настройки поддерживает несколько провайдеров и любые конечные точки, совместимые с OpenAI, а переключение выполняется через команду hermes model, а не путем изменения кода.

Во-вторых, Hermes проводит четкую грань между «разговором» и «выполнением». Агент может болтать весь день, но когда ему нужно действовать, он делает это через явные инструменты и настраиваемый бэкенд выполнения. Именно здесь находятся безопасность, воспроизводимость и устранение неполадок.

Стоимость и лицензирование приятно скучны. Сам Hermes Agent является бесплатным ПО под лицензией MIT. Если вы используете размещенные модели, текущая стоимость — это то, что взимает ваш провайдер. Если вы запускаете локальные модели, вы можете полностью избежать платы за API.

Установка Hermes Agent

Hermes предлагает быстрый путь установки для Linux, macOS и WSL2. Официальная документация намеренно сохраняет всё простым.

Установка одной командой

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

После установки перезагрузите оболочку и запустите CLI.

source ~/.bashrc   # или source ~/.zshrc
hermes

Установщик — это не просто тонкая обертка. Согласно руководству по установке, он настраивает зависимости, репозиторий, виртуальную среду и команду hermes, после чего вы сразу получаете состояние, готовое к первому чату.

Примечания для Windows и Android

Нативная поддержка Windows отсутствует. В документации рекомендуется использовать WSL2 и запускать Hermes внутри него.

Для Android Hermes поддерживает установку через Termux. Он спроектирован так, чтобы обнаруживать Termux и соответствующим образом адаптировать настройку зависимостей и среды.

Быстрый старт

Самый быстрый первый запуск — это просто команда hermes, но осмысленный быстрый старт подразумевает два дополнительных решения: какой провайдер моделей использовать и какие инструменты следует включить.

Выбор провайдера и модели

Hermes предоставляет три взаимодополняющие точки входа:

  • hermes model для выбора провайдера и модели по умолчанию
  • hermes tools для включения или отключения наборов инструментов
  • hermes setup для запуска интерактивного мастера по основным областям конфигурации

Минимальный поток выглядит следующим образом:

hermes model
hermes tools
hermes

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

Доказательство выполнения инструментов на раннем этапе

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

На практике небольшой промпт «дымовой проверки» выполняет две задачи: он проверяет инструмент терминала и валидирует запросы разрешений.

Пример промпта:

Покажи мне использование диска и пять крупнейших директорий.

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

Конфигурация, готовая к масштабированию

Hermes вознаграждает тех, кто понимает, где он хранит состояние и как он разрешает конфигурацию. Именно здесь возникает много проблем типа «вчера работало».

Где хранятся конфигурация и состояние

Hermes хранит свои настройки и состояние в каталоге ~/.hermes. Официальное руководство по конфигурации документирует структуру, включая config.yaml для настроек, .env для секретов, auth.json для учетных данных OAuth, SOUL.md для идентификации, а также папки для памяти, навыков, cron, сессий и логов.

Это важно по двум причинам.

  • Отладка становится механической, потому что вы точно знаете, куда смотреть.
  • Резервное копирование становится простым, потому что один каталог содержит большую часть состояния агента, которое вас интересует.

Приоритет конфигурации и исключение секретов из config.yaml

Hermes разрешает конфигурацию с определенным порядком приоритетов. Наверху находятся переопределения CLI, затем config.yaml, затем .env, а на дне — встроенные значения по умолчанию.

Положительная деталь заключается в том, что команда hermes config set направляет значения в нужный файл: API-ключи в .env, а несекретные настройки — в config.yaml.

hermes config set model openrouter/meta-llama/llama-3.1-70b-instruct
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-v1-xxxxxxxx

Hermes также поддерживает подстановку переменных окружения внутри config.yaml через синтаксис ${VAR_NAME}. Это полезно, когда вы хотите хранить определенные значения в окружении, но при этом ссылаться на них в структурированной конфигурации.

Песочницы и бэкенды выполнения

Hermes поддерживает несколько бэкендов терминала, которые определяют, где фактически выполняются команды оболочки. В руководстве по конфигурации перечислены local, docker, ssh, modal, daytona и singularity.

Субъективный, но не пропагандистский способ думать об этом:

  • local — самый быстрый и простой, но он не изолирован
  • docker — прагматичный слой безопасности и воспроизводимости
  • ssh — чистый способ разделить устройство чата и вычислительную машину
  • modal и daytona подходят для рабочих процессов «серверная часть, но с достаточной персистентностью»
  • singularity — вариант, дружелюбный к HPC

Минимальный пример бэкенда Docker:

# ~/.hermes/config.yaml
terminal:
  backend: docker
  docker_image: "nikolaik/python-nodejs:python3.11-nodejs20"
  docker_volumes:
    - "/home/user/projects:/workspace/projects"
  docker_forward_env:
    - "GITHUB_TOKEN"

В документации также описано усиление безопасности для бэкенда Docker, например, отбрасывание возможностей и отключение повышения привилегий.

Навыки, память и профили

У Hermes есть два взаимосвязанных механизма для накопления ценности.

Навыки — это процедурная память. Hermes может создавать, обновлять и удалять свои собственные навыки и может предложить сохранить подход как навык после завершения сложной задачи.

Встроенная память хранится в виде файлов, таких как MEMORY.md и USER.md, в каталоге ~/.hermes, и Hermes также может использовать внешние провайдеры памяти для более глубокого запоминания. В руководстве по памяти перечислены несколько плагинов провайдеров, а в руководстве по провайдерам памяти описан интерактивный процесс настройки.

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

Типичный рабочий процесс

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

Стабильная база

Базовая линия, которая имеет тенденцию не деградировать:

  1. Установите и проведите первый чат в CLI.
  2. Выберите провайдера и модель с помощью hermes model, затем подтвердите стоимость.
  3. Настройте наборы инструментов и решите, будет ли выполнение терминала локальным или изолированным.
  4. Внесите небольшую правку в SOUL.md только после того, как вы немного поработаете с настройками по умолчанию. Изменения идентификации важнее, чем люди ожидают, потому что это «слот 1» в системном промпте.

Ежедневное использование, накапливающее эффект

У Hermes есть терминальный интерфейс, а не веб-интерфейс, и он спроектирован для длинных сессий со слэш-командами, возобновляемыми сессиями и потоковой передачей вывода инструментов.

На практике полезный ритм выглядит так:

  • выполняйте работу в именованной сессии для проекта
  • сжимайте контекст, когда он становится слишком большим
  • позвольте Hermes превращать повторяющиеся рутины в навыки
  • сохраняйте ментальную границу между «спросить» и «действовать», чтобы выполнение инструментов оставалось аудируемым

Шлюз мессенджера для доступа 24/7

Шлюз мессенджера — это та часть, которая заставляет Hermes ощущаться как ассистент, а не как терминальное приложение. В документации он описывается как единый процесс, который подключается к нескольким платформам, обрабатывает сессии, выполняет задания cron и доставляет сообщения.

Настройка вызывается через hermes gateway setup, и шлюз может работать на переднем плане или как пользовательская служба. Справочник CLI документирует подкоманды шлюза, такие как run, install, start, stop, status и restart.

Безопасность для бота, использующего инструменты, имеет значение. В документации шлюза описаны списки разрешений для конкретных платформ и поток парного соединения (DM pairing), который выдает одноразовые коды сопряжения и требует одобрения через hermes pairing approve.

Обновления без драмы

Обновления Hermes — это команда первого класса. Руководство по обновлению документирует hermes update, проверки миграции конфигурации и небольшую процедуру валидации после обновления, включая hermes doctor и hermes gateway status.

hermes update
hermes doctor
hermes gateway status

Устранение неполадок и диагностика

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

Быстрые команды для сортировки

Справочник CLI явно позиционирует три команды как основной цикл:

  • hermes doctor для интерактивной диагностики
  • hermes status для быстрого обзора
  • hermes dump для общего, очищенного от чувствительных данных резюме настройки

Для логов команда hermes logs выводит файлы, хранящиеся в ~/.hermes/logs.

hermes doctor --fix
hermes status
hermes dump --show-keys
hermes logs errors -f

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

В FAQ и руководстве по устранению неполадок перечислены несколько повторяющихся проблем и их решения, включая проблемы с версией Python, ошибку «uv не найден» и проблемы с правами доступа, вызванные смешиванием установки с sudo и установки для пользователя.

Если вы столкнетесь с этими ошибками, в документации приведены конкретные шаги по исправлению, такие как обновление Python, установка uv и повторная установка Hermes без sudo.

Проблемы с провайдерами и моделями

Когда API-ключи не работают, FAQ рекомендует проверить конфигурацию, повторно запустить hermes model или установить ключ напрямую через hermes config set. Также отмечается распространенная ловушка: ключи специфичны для провайдера.

Для проблем «модель не найдена» FAQ указывает на использование hermes model для выбора правильного идентификатора и показывает как конфигурационные, так и переопределяющие на уровне сессии настройки.

Также рассматриваются проблемы ограничения скорости и длины контекста. FAQ предлагает подождать при ошибках 429, переключиться на другого провайдера или модель, а также снизить давление на контекст через сжатие или новую сессию.

Проблемы бэкенда терминала и шлюза

Если команды терминала не выполняются сразу, в руководстве по конфигурации есть раздел «распространенные проблемы бэкенда терминала», который указывает на типичные причины для каждого бэкенда, включая неработающий Docker и отсутствующие переменные SSH. Также отмечается, что откат к локальному режиму является валидным шагом отладки, когда возникает вопрос о конфигурации песочницы.

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

Ссылки