Rivet представила открытую платформу акторов для ИИ-агентов на S3

Rivet, проект с открытым кодом (лицензия Apache 2.0): платформа «акторов». Актор в терминах проекта, долгоживущий процесс с состоянием в памяти, базой SQLite, WebSocket-соединениями и планировщиком. Его можно создавать на каждого агента, пользователя, сессию или арендатора. Сам Rivet описывает себя как универсальную платформу акторов, в которой нет ничего специфичного для агентов.
Главная идея для ИИ-агентов, не гонять цикл агента внутри песочницы. По словам авторов README, большую часть времени агент ждёт ответа модели, поэтому песочница (целая виртуальная машина) простаивает почти без нагрузки на процессор, а платить приходится за неё целиком. В Rivet цикл агента работает в акторе, а к песочнице агент обращается через инструменты, только когда нужно выполнить код. Такой подход в README называют «отделением головы от рук»; он, как утверждается, требует доли памяти и ограничивает «радиус поражения» и границу доверия для запускаемого кода.
Цифры, которые приводит проект: 4,99 мс при p99 на холодный старт (без загрузки образа и запуска виртуальной машины), 72 КБ оперативной памяти на актор (акторы делят процесс Node), 1,07 мс на надёжную запись и 1,36 мс на чтение при p99 для SQLite поверх S3. Хранение, по расчёту проекта по прайс-листам AWS (S3 Standard против трёх копий Amazon EBS gp3), обходится примерно в 10,4 раза дешевле реплицируемых SSD. Для сравнения с песочницей взяты показатели E2B: 512 МиБ памяти по умолчанию (по документации E2B на 4 ноября 2026 года) и 1,70 с холодного старта при p99 (по бенчмарку ComputeSDK от 30 октября 2026 года). Цифры Rivet взяты из опубликованного проектом сравнения с Cloudflare Durable Objects на версии Rivet 3.0.3; репозиторий с ним содержит сырые замеры и скрипты для повторения.
Масштабирование: все данные лежат в S3, поэтому, как заявлено, кластер масштабируется до миллиардов акторов, а один сервер вмещает сотни тысяч. Простаивающие акторы «засыпают», ничего не стоят и просыпаются по следующему запросу без потери данных. Единственная зависимость, бакет объектного хранилища: не нужны ни Postgres, ни FoundationDB, ни NATS. Работают Amazon S3, Google Cloud Storage, Azure Blob Storage и S3-совместимые хранилища (MinIO, Cloudflare R2, Hetzner Object Storage); для локальной проверки есть файловый бэкенд.
Нужна ли агенту песочница? README отвечает: часто нет, она требуется лишь для запуска кода, который агент пишет сам. Описаны три схемы: агенты только с инструментами (вызовы инструментов, MCP, API, например, поддержка клиентов); агенты с лёгкой песочницей agentOS (изоляция для JS и Python на V8 и WebAssembly, покрывает анализ данных, обработку файлов, проверки качества и режим кода); агенты с полной песочницей стороннего провайдера, чьи оболочку и файловую систему актор получает как инструменты и к которой переподключается после сна и перезапусков.
Сравнение с Cloudflare Durable Objects: Rivet называет себя открытой альтернативой, которую легко развернуть у себя. По заявлению проекта, у него нет лимита памяти 128 МБ, хранилище не ограничено 10 ГБ SQLite, акторы не вытесняются случайно, а работают на обычных Node.js или Bun без особой среды выполнения. Дополнительно заявлены встроенная работа с соединениями, рассылка событий, надёжный планировщик и cron, поддержка Vitest, хуки для плавного вывода и контроль обновлений акторов. Модель, «виртуальные акторы», ближайший аналог, Orleans.
В составе также: библиотеки агентов (готовый Pi Durable), рабочих процессов (многошаговые операции, которые воспроизводятся, а не начинаются заново), agentOS и Dynamic Apps (предпросмотр), отдельный бэкенд на пользователя в момент генерации. Развернуть узлы можно в Docker Compose, Kubernetes, на виртуальных машинах и «голом железе», Hetzner, AWS ECS, Railway, Render; рантаймы, Node.js, Bun, Rust. Есть управляемое облако Rivet Cloud (выделенные кластеры на AWS или GCP) и вариант BYOC в своём облачном аккаунте, включая изолированные от интернета среды.
Ключевые факты
- Rivet, открытая (Apache 2.0) платформа акторов: долгоживущие процессы с состоянием в памяти, SQLite, WebSocket и планировщиком; по одному на агента, пользователя или сессию.
- По собственным замерам проекта (Rivet 3.0.3): холодный старт 4,99 мс при p99 и 72 КБ памяти на актор против 1,70 с и 512 МиБ у песочницы E2B.
- Все данные хранятся в S3 (или S3-совместимом хранилище), других зависимостей вроде Postgres, FoundationDB и NATS нет; запись SQLite, 1,07 мс, чтение, 1,36 мс при p99.
- Агент работает в акторе, а песочницу вызывает через инструменты только для запуска кода; для лёгкой изоляции есть agentOS на V8 и WebAssembly.
- Позиционируется как открытая альтернатива Cloudflare Durable Objects без лимитов 128 МБ памяти и 10 ГБ SQLite; есть самостоятельный хостинг, Rivet Cloud и BYOC.
Почему это важно
Проект бьёт в конкретную боль агентных систем: большую часть времени агент ждёт модель, а песочница-виртуальная машина на каждого агента простаивает, но стоит как целая машина. Rivet предлагает держать цикл агента в лёгком акторе (72 КБ и 4,99 мс p99 на старт по данным проекта), а тяжёлую изоляцию подключать только когда нужно исполнять код. Для сравнения: у E2B, по данным README, 512 МиБ по умолчанию и 1,70 с на холодный старт. Идея не нова по сути (виртуальные акторы в духе Orleans), но SQLite поверх S3 как единственная зависимость делает её интересной для самостоятельного развёртывания.
Кому это важно
Командам, которые строят продукты с множеством долгоживущих агентов, сессий или многопользовательских сценариев и упираются в стоимость и время запуска песочниц. Также тем, кто присматривается к Cloudflare Durable Objects, но не хочет лимитов 128 МБ памяти и 10 ГБ SQLite или привязки к одному провайдеру. Разработчикам на Node.js и Bun, Rivet работает на них без особой среды выполнения.
Как это применить
Проект открыт (Apache 2.0) и разворачивается у себя: Docker Compose, Kubernetes, виртуальные машины, Hetzner, AWS ECS, Railway, Render; нужен только бакет объектного хранилища. Для локальных опытов есть файловый бэкенд. Минимальный агент в README, один актор на агента (agent.getOrCreate), SQLite для истории, WebSocket для потоковой выдачи токенов всем клиентам. Для готового агента предлагается библиотека на базе Pi Durable. Если нужен запуск написанного агентом кода, используйте agentOS или подключите существующую песочницу как набор инструментов. Есть также управляемое облако Rivet Cloud на AWS или GCP и BYOC; цены в README не указаны.
Можно ли доверять
Источник, README самого проекта, то есть материал разработчика. Цифры Rivet получены его собственным опубликованным бенчмарком; независимой проверки в тексте не упоминается, но в репозитории бенчмарка заявлены сырые замеры и скрипты для воспроизведения. Сравнение с песочницей построено на одном провайдере (E2B), а значение 10,4× по стоимости хранения, расчёт по прайс-листам (S3 Standard против трёх копий EBS gp3), а не реальный счёт. Утверждения про «миллиарды акторов» и «сотни тысяч на сервер», заявления; описания тестов на таких масштабах нет.
Риски и подводные камни
Сравнение 72 КБ против 512 МиБ не вполне равноценно: актор делит процесс Node и не даёт той изоляции, что виртуальная машина. Для недоверенного кода, который пишет агент, нужен agentOS или полноценная песочница, так что экономия относится к циклу агента, а не к исполнению кода. Заявленные задержки SQLite на S3 и холодный старт, результаты на конкретной версии Rivet 3.0.3 и в условиях бенчмарка проекта; в вашей среде они могут отличаться. Dynamic Apps пока в предпросмотре. Данных о числе промышленных пользователей и о цене Rivet Cloud в источнике нет.
«отделение головы от рук»
— README проекта Rivet, так, по тексту, часто называют запуск цикла агента вне песочницы