KeyBrainавтоматизация бизнеса с ИИ Канал «Не нанимай»
РАЗБОР

Hermes Agent без сервера: Windows, Mac, телефон и где их предел

Hermes Agent можно поставить на Windows и Mac без сервера, но задачи по расписанию идут, пока компьютер не спит. Что говорит документация, зачем здесь телефон и как выбрать.

Hermes Agent без сервера: что работает на Windows, Mac и телефоне и что остаётся за сервером

Hermes Agent ставится на Windows и на Mac с процессором Apple Silicon без всякого сервера - это написано в официальной документации. Но у агента, который работает по расписанию, есть оговорка: он живёт ровно столько, сколько работает его компьютер. Закрыли крышку ноутбука: утренняя сводка не пришла вовремя, сообщение боту в Telegram при обычных настройках пропало молча. Телефон в этой схеме работает пультом, и только. Ниже разберу, что поддерживается, что происходит, когда компьютер засыпает, и как выбрать место для агента.

Сразу скажу о своей заинтересованности: я продаю курс по Гермесу, где агент ставится на сервер. Поэтому отделяю написанное в документации от того, что делала сама. Гермес у меня живёт на арендованном сервере, а пишу я ему в Telegram. Опыт работы агента на ноутбуке я не описываю: в этой статье только документация и то, что видела на своём сервере. Что такое Hermes Agent, разобрано в отдельной статье, установка и расходы в инструкции. Здесь их нет.

На каких компьютерах работает Hermes Agent?

Коротко: на Mac с процессором Apple Silicon, на Windows 10 и 11 и на Linux. Mac с Intel официально не поддерживается.

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

ГдеКак ставитсяЧто важно
Mac с Apple SiliconПриложение Hermes Desktop или команда в терминалеMac с Intel не поддерживается
Windows 10 и 11Команда в PowerShell или установочный пакет приложенияПакет приложения требует Windows 11 версии 22H2 или новее
Linux и WSL2Команда в терминалеПроверяют на последней Ubuntu
Android, TermuxПакет из подписанного репозиторияВторой уровень, подробности ниже

Первые три строки относятся к первому уровню. На сайте продукта для Mac указано «macOS 12 или новее». Актуальные требования указаны на странице платформ в документации. Для Mac с Intel документация допускает только командную версию, без обещаний поддержки. У части необязательных компонентов под Windows есть ограничения по архитектуре процессора.

Приложение Hermes Desktop - окно с чатом и настройками. Под ним работает тот же агент, что и в терминале: те же ключи, сессии, навыки и память. Команды установки я не привожу, они есть в статье про установку.

Что делает агент, когда компьютер спит?

Коротко: ничего. Задачи по расписанию и ответы в Telegram обслуживает один фоновый процесс, шлюз. Он работает, пока работает машина.

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

Пропущенные задания. Если шлюз был выключен, когда наступило время задания, оно догоняется один раз после возвращения. После долгого простоя задание запускается один раз: отдельных запусков на каждое пропущенное время не будет. Значит, неделя с закрытым ноутбуком не принесёт вам семь утренних сводок: после включения придёт одна, с опозданием, и в списке заданий она будет помечена как догоняющая. Догонять можно запретить настройкой.

Сообщения в Telegram. По умолчанию бот сам ходит к серверам Telegram за новыми сообщениями. Пока шлюз выключен, ваши сообщения лежат в очереди Telegram. Но при холодном запуске Hermes эту очередь по умолчанию выбрасывает, и документация уточняет: молча, без записи в журнал и без повторной попытки. Серверу, который не выключают, такое поведение подходит. Документация прямо предупреждает, что компьютеру, выключаемому на ночь, этот режим не подходит.

Если вы остаётесь на компьютере и хотите получать накопившиеся сообщения, в настройках есть параметр:

platforms:
  telegram:
    extra:
      drop_pending_on_cold_boot: false

Тогда после запуска шлюза бот получит накопившиеся сообщения по порядку.

Схема: что происходит с заданием по расписанию и сообщением из Telegram, когда компьютер включён и когда спит

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

Можно ли заставить компьютер не засыпать?

Коротко: можно, но с оговорками. Настройка есть в приложении, крышку ноутбука она не отменяет.

В приложении есть параметр «Keep computer awake» в разделе Advanced с тремя режимами: выключен, «пока работает» и «всегда». Режим «пока работает» не даёт компьютеру уснуть лишь в то время, когда агент отвечает на запрос. Для утренней сводки он не годится: в это время ничего не идёт, и компьютер уснёт. Режим «всегда» не даёт ему уснуть, пока открыто приложение. Если включён «Minimize to tray», закрытие окна лишь прячет приложение. Закрытая крышка или команда «Сон» всё равно усыпляют машину, а на батарее Windows может уснуть по своему таймеру.

Шлюз можно установить как службу командой hermes gateway install. Под Windows команда регистрирует задачу планировщика, которая стартует при входе пользователя в систему, а под Mac - агент launchd. Значит, после перезагрузки агент проснётся не раньше, чем вы войдёте в учётную запись.

Телефон: пульт или место работы?

Коротко: пульт. Через Telegram агенту можно писать с любого устройства, в том числе голосовыми, а результаты заданий приходят туда же. Сам агент на телефоне сейчас под вопросом.

В одном ряду с Telegram сайт продукта называет Discord, Slack, WhatsApp, Signal и почту. В такой схеме телефон остаётся окном для общения, а агент работает на машине, где запущен шлюз. Если это ваш ноутбук, он должен быть включён.

Про Android документация говорит осторожно. Termux, программа с терминалом для телефона, относится ко второму уровню поддержки, пакет там называют предварительным. Шлюз запускают в сессии Termux, а Android может завершить фоновые процессы. Для агента, которому нужно дождаться времени запуска, это риск. К тому же на странице установки в Termux стоит пометка, что пакет временно не работает и исправление готовится. Перед установкой проверьте эту страницу. Поддерживаются только телефоны с 64-битным процессором ARM.

Про iPhone ответ короткий: в таблицах поддерживаемых платформ iOS нет. Сторонние приложения-пульты здесь не разбираю.

Закрытый ноутбук и телефон с мессенджером: сообщение отправлено, но принимать его некому

Рисунок передаёт главное: телефон отправляет сообщение, но принять его некому, пока ноутбук закрыт.

У меня агент живёт на сервере, а пишу я ему в Telegram. Гермес разбирает Telegram-каналы, мои подписки на YouTube и в X (бывшем Twitter), а выжимки приходят мне в Telegram.

Когда хватит компьютера, а когда нужен сервер?

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

Что вы хотитеГде запускатьПочему
Познакомиться с агентом, поэкспериментировать несколько вечеровКомпьютерПриложение ставится из готового пакета, сервер не нужен
Поручения и вопросы, пока вы сидите за компьютеромКомпьютерАгент рядом, файлы под рукой
Утренняя сводка или сторож, которые должны прийти при закрытом ноутбукеСерверШлюз не спит, пропусков нет
Писать боту с телефона в любой часСерверНа выключенном компьютере сообщения по умолчанию теряются
Тяжёлые задачи на ночьСерверНужна машина, которая работает и ночью
Работа с важными документами рядом с агентомСервер или контейнерНа отдельном сервере доступ агента ограничен самим сервером

Последняя строка требует пояснения. Агент выполняет команды в терминале, и на вашем компьютере он достанет всё, до чего дотянетесь вы. В документации среди способов запуска команд есть контейнер Docker, где агент отделён от вашей системы. Настройку контейнера на ноутбуке здесь не разбираю. Мой вариант: агент живёт на отдельном сервере, который работает круглые сутки.

Локальную модель, например через Ollama, тоже можно подключить, но Hermes требует окно контекста не меньше 64 тысяч токенов, иначе откажется работать. Выбор модели и расходы разобраны в статье про модель и подписку.

Как остаться на компьютере и не терять задачи?

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

  1. Установите шлюз как службу: hermes gateway install, затем hermes gateway status. Служба нужна, чтобы шлюз стартовал сам после входа в систему. Приложение при первом обращении запускает шлюз само фоновым процессом, но службу не устанавливает.
  2. В приложении откройте Advanced, включите режим «Keep computer awake» в положении «всегда», подключите ноутбук к питанию и не закрывайте крышку.
  3. Если компьютер на ночь выключаете, добавьте в настройки Telegram параметр drop_pending_on_cold_boot: false, как в примере выше.
  4. Решите, нужно ли догонять пропущенное. Для сводок, которые теряют смысл через сутки, догонять можно запретить: hermes config set cron.catch_up_missed false.
  5. Проверьте на практике. Поставьте тестовое задание на ближайшее время, дайте компьютеру уснуть, затем разбудите его и откройте список заданий командой hermes cron list. Догнанный запуск там помечен. Раз в неделю запускайте hermes cron doctor: он перечисляет задания, запускавшиеся с опозданием. Команда завершается с кодом 1, пока есть находки, и сохраняет предупреждение до следующего своевременного запуска, так что пугаться не нужно.

Эти шаги не превращают ноутбук в сервер, они лишь уменьшают потери. Если расписание ломается снова и снова, пора переезжать. В курсе я собрала вариант, который не зависит от сна компьютера: в первом из четырёх уроков сервер, модель, бот в Telegram и первое расписание. Подробности на странице курса по Гермесу.

Как переехать с компьютера на сервер, если компьютера уже не хватает?

Коротко: резервной копией и командой hermes import. Можно начать на компьютере: память, навыки и настройки потом переносятся на сервер.

Документация описывает два способа. Полная резервная копия восстанавливается на другой машине командой hermes import, отдельный профиль агента переносится своей командой. При выгрузке профиля ключи в файл не попадают, так задумано, поэтому ключи модели придётся ввести на новом месте заново.

Приложение после переезда пригодится. Отдельной версии только для удалённой работы нет: ставите обычный пакет и подключаете его к серверу в разделе Settings → Gateways. Там четыре вида подключения: локальное, Hermes Cloud, удалённый шлюз и SSH. Облачный вариант здесь не разбираю. Сервер приложение само не запускает. Документация предупреждает: серверную часть с доступом по паролю нельзя выставлять напрямую в открытый интернет.

Как устроено у меня?

Гермес у меня с самого начала живёт на арендованном сервере. Сначала я хотела проверить одно: нужен ли мне автономный агент, который не спит и сам приносит пользу.

На маке стоит Hermes Desktop, поставленный установщиком Nous Research. Он подключён к серверу по SSH через Settings → Gateways → Add и показывает те же сессии, что и сервер. Установщик при этом оставил на диске мака локальную копию агента. У меня она заняла 3,7 ГБ, а отдельный фоновый сервис не появился.

Что выбрать

Если только пробуете, ставьте приложение на компьютер и берите задачу, которую выполняете, сидя за ним. Нужна утренняя сводка или бот, отвечающий ночью: думайте о сервере сразу. В обоих случаях запишите, что агенту нельзя трогать, и заведите ему отдельный ключ модели с лимитом.

Источники

Сверено с документацией на момент написания. Hermes Agent обновляется часто, поэтому перед установкой проверьте актуальную документацию.

Если хотите настроить сервер по шагам и сверяться со скриншотами каждого экрана, четыре урока курса по Гермесу ведут от сервера до команды помощников.

Свой Гермес по шагам: курс из четырёх уроков

Сервер, модель, бот в Telegram, папка знаний о вашем деле и доска задач. Текстовые уроки со скриншотами, без программиста. 8 700 ₽, доступ сразу после оплаты.

Посмотреть программу курса