Дайджесты новостей
Облачные изолированные песочницы Daytona для автономных агентов Hermes Agent OS

Каждому агенту по компьютеру: изоляция и облачные среды Daytona для Hermes Agent OS

Ты когда-нибудь ловил себя на холодном поте, когда запускал автономного кодинг-агента с правом выполнять любые bash-команды прямо на твоем рабочем ноутбуке?

С одной стороны, свобода подкупает: агент сам ставит нужные библиотеки через pip или npm, тестирует скрипты, компилирует исходники и правит конфигурации. С другой стороны, достаточно одной галлюцинации в синтаксисе rm -rf или неосторожного скрипта, переписавшего порт базы данных, чтобы вся твоя рабочая машина превратилась в дымящиеся руины. Ранее мы уже подробно разбирали, как устроена операционная система Hermes Agent OS и как работает архитектура локального деплоя Hermes Agent. Но сегодня инженеры пошли дальше и предложили радикальное, но предельно логичное решение: выдать каждому виртуальному сотруднику собственный изолированный компьютер.

Давай разберем, как устроена интеграция Hermes Agent с облачной платформой сред разработки Daytona (daytona.io) и почему запуск агентов в песочницах — это единственный путь к безопасной автономии.

Почему локальный запуск стал тупиком

Когда ты доверяешь агенту рутинные задачи — мониторинг конкурентов, регулярный парсинг или тестирование правок в репозитории — держать ноутбук постоянно открытым неудобно. Но главное даже не в этом. Локальная ОС слишком уязвима: процессы агента делят память, файловую систему и сетевые интерфейсы с твоими личными документами и рабочими мессенджерами.

Интеграция с Daytona решает эту проблему за счет концепции изолированных сред исполнения (Sandboxed Execution). Вместо того чтобы пускать агента в корень твоего диска, система создает для него легковесный облачный контейнер или микро-ВМ. Агент получает полноценный доступ к терминалу, права суперпользователя и файловую систему, но замкнут внутри песочницы. Даже если скрипт упадет в бесконечный цикл или попытается стереть системные библиотеки, хост-машина останется в абсолютной безопасности.

При этом в самой операционной системе Hermes Agent OS разрозненные терминалы собираются в единый визуальный пульт управления (Control Center / Bot Screen). Ты видишь в браузере весь парк своих агентов:

  • Oracle Daily News Agent собирает утреннюю подборку отраслевых релизов;
  • Competitor Research Agent парсит сайты конкурентов и выгружает прайс-листы;
  • Automated Outreach Agent готовит драфты писем партнерам;
  • Voice Agent ждет голосовых команд.

И всё это крутится в облаке в фоновом режиме, даже когда твой ноутбук закрыт и лежит в рюкзаке.

Конфигурация воркспейса в Daytona

В ядре Hermes заложена поддержка нескольких терминальных бэкендов (terminal.backend). При переключении на Daytona все вызовы команд маршрутизируются в облачный инстанс через API.

Вот как выглядит конфигурация рабочего окружения daytona.workspace.yaml, описывающая ресурсы и автогибернацию агента:

name: "hermes-agent-worker-01"
image: "ubuntu:24.04"
resources:
  cpu: 2
  memory: "4Gi"
  disk: "20Gi"

environment:
  HERMES_ENV: "production"
  PYTHONUNBUFFERED: "1"
  WORKSPACE_ROOT: "/home/agent/workspace"

setup:
  - "apt-get update && apt-get install -y git curl ripgrep jq python3 python3-pip nodejs npm"
  - "curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash"
  - "mkdir -p /home/agent/workspace"

auto_sleep:
  enabled: true
  idle_timeout_minutes: 15

Обрати внимание на параметр auto_sleep: это серверлесс-гибернация (Serverless Persistence). Когда агент закончил задачу и перешел в режим ожидания (idle), контейнер засыпает с сохранением всех файлов на диске. Ты не платишь за пустые процессорные такты, а при поступлении нового триггера контейнер мгновенно просыпается.

Упаковка агента в легковесный Docker-контейнер

Если тебе требуется развернуть аналогичную песочницу на собственном сервере или VPS, можно использовать Dockerfile с ограничением прав пользователя:

FROM python:3.11-slim

RUN apt-get update && apt-get install -y --no-install-recommends \
    curl \
    git \
    ripgrep \
    jq \
    build-essential \
    && rm -rf /var/lib/apt/lists/*

RUN useradd -m -s /bin/bash agentuser
WORKDIR /home/agentuser

USER agentuser

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

ENV PATH="/home/agentuser/.hermes/bin:${PATH}"
ENV HERMES_TERMINAL_BACKEND="daytona"

EXPOSE 8080
CMD ["hermes", "gateway", "--host", "0.0.0.0", "--port", "8080"]
Никаких открытых API-ключей в файлах образов

Никогда не зашивай секреты и токены провайдеров (OpenAI, Anthropic, GitHub) прямо в Dockerfile или репозиторий. Для изолированных контейнеров используй защищенный менеджер секретов платформы (Daytona Secrets Manager) или монтируй их как переменные среды в рантайме. В противном случае скомпрометированный агент или публичный образ откроет доступ ко всей твоей инфраструктуре.

Подводные камни и цена автономии

Давай сразу проговорим компромиссы. Главный минус серверлесс-гибернации — задержка холодного старта. Пробуждение уснувшего инстанса занимает от 3 до 8 секунд. Если тебе нужен мгновенный ответ в чате, контейнер придется держать горячим, а это уже постоянные расходы на сервер.

Второй момент — тяжелые модели. Стандартные контейнеры Daytona оптимизированы под CPU: они прекрасно компилируют код, качают страницы и запускают тесты, но локальный запуск массивных открытых сетей вроде Llama 70B потребует отдельных дорогих GPU-нод. Поэтому в реальном бою агент внутри песочницы обычно использует облачные API для «мышления», а виртуальный компьютер — для грязной исполнительской работы.