2026-05-29 Hermes Agent Serverless: hibernate Modal/Daytona + пробуждение Telegram (HK / JP / KR / SG / US)
Облачная VM 24/7 для AI agent часто стоит $5–20/мес ещё до первого LLM token. Hermes Agent (MIT, Nous Research) решает это через serverless terminal backends: sandbox Modal и Daytona, которые hibernate в idle и просыпаются, когда Hermes нужно запускать shell tools—пока вы общаетесь в Telegram с телефона.
Проблема операционных затрат
Основатели с ограниченным бюджетом и энтузиасты automation видят три статьи расходов:
| Статья | Типичный диапазон | Что драйвит |
|---|---|---|
| Compute VM | $5–50/мес | VPS/RDS always-on для gateway + tools |
| LLM API | $5–500+/мес | Выбор модели × tool loops |
| Egress / storage | $0–20/мес | Логи, артефакты, Modal disk |
Hermes не убирает расходы на LLM. Он может сжать idle compute между burst, направляя terminal execution в Modal/Daytona вместо толстого always-on box с 24/7 bash.
Если Hermes уже работает на арендованном Mac mini M4 для iOS-сборок, см. наш гайд Telegram gateway на M4—эта статья про минимизацию cloud compute, а не максимальную колocation Xcode.
Архитектура: gateway vs terminal backend
Цитируемое техническое резюме: Hermes gateway (hermes gateway) обрабатывает messaging; terminal backend (terminal.backend в ~/.hermes/config.yaml) решает, где выполняются bash, file tools и scripts.
| Слой | Hibernate при idle? | Типичный хост |
|---|---|---|
| Telegram gateway (long polling) | Нет — outbound polls требуют running process | VPS ~$5, домашний Mac или аренда Mac |
| Terminal backend: Modal | Да — sandbox спит между tool bursts | Cloud Modal |
| Terminal backend: Daytona | Да — sandbox спит между tool bursts | Cloud Daytona |
| LLM provider | N/A (pay per token) | OpenRouter, Nous Portal и т.д. |
Желаемый wake path:
- Вы отправляете сообщение боту в Telegram.
- Gateway (на thin host) получает update.
- Agent loop Hermes вызывает tools → Modal/Daytona просыпается, выполняет команды, возвращает output.
- Sandbox снова hibernate; gateway может оставаться up (мало RAM).
Для настоящего sleep-everything upstream Telegram docs описывают webhook mode (HTTPS ingress) на Fly.io/Railway—сложнее на SSH-only аренде Mac. Default long polling проще, но нужен always-on gateway process.
Официальные ссылки: Terminal backends, Telegram setup, GitHub README.
Матрица решений по затратам (4 строки)
| Паттерн | Месячный idle compute | Лучше всего для | Компромисс |
|---|---|---|---|
| Fat VPS 24/7 | ~$5–12 (1 vCPU) | Самая простая mental model | Платите во сне |
| Thin VPS gateway + Modal/Daytona tools | ~$5 gateway + idle sandboxes почти $0 | Telegram + bursty automation | Два провайдера мониторить |
| Домашний Mac / laptop gateway | Только электричество | Solo dev testing | Должен быть online |
| Аренда Mac mini M4 (класс MacXCode) | Плата за аренду (регионально в месяц) | Xcode + agent на одном Apple Silicon хосте | Не самый дешёвый chat-only bot |
Modal считает CPU-second и GB-second при работе sandbox; idle hibernated периоды избегают этих charges. Daytona заявляет похожее sleep-when-idle—проверьте текущие цены на dashboard каждого vendor перед production.
Mac mini specs Apple важны только при colocation gateway со сборками—not required для serverless terminal routing.
Modal terminal backend
Когда Modal подходит
- Bursty shell work (scripts,
pip install, data pulls) с минутами между Telegram messages. - Опциональные GPU classes для ML-side tasks (pay only during runs).
- Filesystem persistence через Modal snapshots при
container_persistent: true.
Настроить ~/.hermes/config.yaml
terminal:
backend: modal
modal_image: "nikolaik/python-nodejs:python3.11-nodejs20"
container_cpu: 1
container_memory: 5120
container_disk: 51200
container_persistent: true
Предусловия (upstream):
pip install modal
modal token new
hermes doctor
Когда Modal не подходит: sub-second local file edits на огромном monorepo checkout—cold start + image pull latency. Используйте local или SSH backend на machine с repo.
Daytona terminal backend
Daytona направляет tool execution в cloud sandboxes, которые hibernate при idle (по Hermes docs). Задайте:
terminal:
backend: daytona
Export API key перед стартом gateway:
export DAYTONA_API_KEY="your_key"
# persist in ~/.hermes/.env for launchd
Когда Daytona подходит: serverless persistence без Docker на VPS—Hermes README ставит Daytona рядом с Modal для «cost nearly nothing between sessions».
Когда Daytona не подходит: строгие data residency только on-prem—cloud sandboxes вне compliance scope.
Telegram: разбудить agent без fat server
Подключите Telegram один раз (полные шаги в нашем гайде Telegram gateway):
hermes gateway setup
Low-cost gateway hosts:
- VPS ~$5/мес (1 GB RAM) только с
hermes gateway+~/.hermes/.env - Oracle Cloud free tier (если доступен в регионе—проверьте лимиты аккаунта)
- Домашний always-on Mac для экспериментов
Укажите terminal.backend на modal или daytona на той же machine—gateway остаётся lightweight; heavy work будит serverless sandboxes.
Безопасность: только numeric TELEGRAM_ALLOWED_USERS—никогда не expose bot без allowlist (@userinfobot для вашего ID).
Сравните agent frameworks в матрице Hermes vs OpenClaw vs OpenHuman—OpenClaw силён на headless launchd аренде; Hermes на learning loop + Modal/Daytona offload.
Runbook из 8 шагов: near-idle compute stack
- Установить Hermes —
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash - Model auth —
hermes setup(BYO keys; budget models на OpenRouter для cost control). - Выбрать serverless backend — Modal (
modal token new) или Daytona (DAYTONA_API_KEY). - Написать
~/.hermes/config.yaml—terminal.backend: modalилиdaytonaс resource limits выше. - Telegram —
hermes gateway setup; подтвердить~/.hermes/.env. - Thin gateway host — deploy
hermes gateway install && hermes gateway startна VPS (не на дорогой GPU box). - Smoke test — сообщение боту: «run
uname -aand report»—смотрите Modal/Daytona dashboard на sandbox start/stop. - Cost guardrails — provider spend caps; schedule
hermes gateway stopна каникулах, если gateway не нужен.
Устранение неполадок
Bot отвечает «hello», но tools падают с Modal auth errors
| Симптом | Исправление |
|---|---|
modal token missing | Run modal token new под user gateway host |
| Wrong Python env | hermes doctor; install modal в Hermes venv |
| Stale sandbox | Toggle container_persistent или clear Modal app logs |
Sandbox работает, но Telegram молчит
- Gateway not running:
hermes gateway status - Check
~/.hermes/logs/gateway.logна Telegram token errors - Only one process may poll bot token (
Conflict: terminated by other getUpdates)
Costs выше ожидаемых
- LLM tokens dominate—switch model, shorten tool loops, use
/compressв chat per upstream CLI docs - Modal persistent disk snapshots still bill storage—trim
container_disk - Gateway VPS left at 4 GB RAM tier—downsize to 1 GB if only polling
MEDIA: file attachments fail from Modal backend
Gateway sends files from host paths—inside Modal write to host-mounted volume path documented in Telegram + Docker section upstream docs.
FAQ
hermes doctor.Бюджетная automation без толстой VM
Когда достаточно Telegram + burst tools, лёгкий шлюз + hibernate Modal/Daytona дешевле shell 24/7—аренда M4 имеет смысл только при colocation Xcode.