Repolode
rivet-dev

rivet-dev/rivet

Rivet — оркестратор с открытым исходным кодом, который распределяет долговечные Actor с состоянием для агентов, рабочих процессов и приложений реального времени — альтернатива планированию на основе подов.

Open source альтернатива:Cloudflare Durable Objects

Звёзды
6,322
Форки
280
Открытые issues
350
Последний коммит
14 часов назад

Что это?

Rivet распределяет Actor — долгоживущие процессы, каждый из которых хранит устойчивое состояние, базу данных SQLite, очередь, подключения реального времени и логику планирования, а обращаться к ним можно по ключу. Можно создать отдельный Actor для каждого агента, сеанса, пользователя или арендатора. Actor работают в обычном процессе-воркере Node.js, Bun или Rust, а не в собственном контейнере или VM; простаивающие Actor переходят в спящий режим и пробуждаются при следующем запросе.

В проект входят SDK для TypeScript (RivetKit) и Rust с типизированными клиентами и React hooks, поэтому можно использовать существующие пакеты, инструменты и тесты без специальной среды выполнения. Control plane — это один бинарный файл на Rust, который можно развернуть самостоятельно с Postgres или FoundationDB и многоуровневым хранилищем на S3, либо запускать в Rivet Cloud или внутри VPC заказчика (BYOC).

В репозитории также есть workflows для долговечных многоэтапных операций и песочницы agentOS, предоставляющие недоверенному сгенерированному коду собственную файловую систему и shell.

Ключевые возможности

  • 01Actor переходят в спящий режим при простое и пробуждаются при следующем запросе, сохраняя состояние
  • 02Отдельная база данных SQLite или POSIX-файловая система для каждого Actor с многоуровневым хранением на S3
  • 03Типизированные SDK для TypeScript и Rust с React hooks для состояния реального времени
  • 04Подключения к Actor по HTTP и WebSocket, а также вызовы между Actor по ключу
  • 05Планирование по cron и временным меткам встроено в control plane
  • 06Трейсы, метрики и логи OpenTelemetry

Сценарии использования

  • Запуск отдельного долговечного процесса для каждого агента программирования или чата, сохраняющего состояние после перезапусков
  • Совместная работа в реальном времени, когда каждый документ или комната рассылает изменения подключённым клиентам
  • Запуск сгенерированного или недоверенного кода в изолированных Actor с собственным хранилищем
  • Самостоятельное размещение инфраструктуры для агентов внутри корпоративной VPC, рядом с существующими базами данных и API

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

  1. 1

    Установите пакет RivetKit

    npm install rivetkit
  2. 2

    Добавьте навыки агента для своего агента программирования (необязательно)

    npx skills add rivet-dev/skills
  3. 3

    Следуйте краткому руководству по настройке бэкенда для Node.js и Bun в документации

Что важно знать

  • Показатели холодного запуска в 12 мс и 72 КБ на Actor получены в собственных бенчмарках проекта, а не в независимом тестировании.
  • Некоторые функции, например ускоренный путь холодного запуска, обозначены как экспериментальные.
  • Для самостоятельного размещения плоскости управления потребуется запустить Postgres или FoundationDB и самостоятельно обслуживать инфраструктуру.

Темы

Частые вопросы

Что такое rivet?
Rivet — оркестратор с открытым исходным кодом, который распределяет долговечные Actor с состоянием для агентов, рабочих процессов и приложений реального времени — альтернатива планированию на основе подов. Rivet распределяет Actor — долгоживущие процессы, каждый из которых хранит устойчивое состояние, базу данных SQLite, очередь, подключения реального времени и логику планирования, а обращаться к ним можно по ключу. Можно создать отдельный Actor для каждого агента, сеанса, пользователя или арендатора. Actor работают в обычном процессе-воркере Node.js, Bun или Rust, а не в собственном контейнере или VM; простаивающие Actor переходят в спящий режим и пробуждаются при следующем запросе.
rivet можно использовать бесплатно? Какая у него лицензия?
rivet распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
rivet всё ещё поддерживается?
Активно поддерживается. Последний коммит в rivet — 22 окт. 2026 г..
Для чего можно использовать rivet?
Запуск отдельного долговечного процесса для каждого агента программирования или чата, сохраняющего состояние после перезапусков Совместная работа в реальном времени, когда каждый документ или комната рассылает изменения подключённым клиентам Запуск сгенерированного или недоверенного кода в изолированных Actor с собственным хранилищем Самостоятельное размещение инфраструктуры для агентов внутри корпоративной VPC, рядом с существующими базами данных и API
Как установить rivet?
Установите пакет RivetKit: npm install rivetkit Добавьте навыки агента для своего агента программирования (необязательно): npx skills add rivet-dev/skills Следуйте краткому руководству по настройке бэкенда для Node.js и Bun в документации
Где скачать rivet?
Исходный код и инструкции по установке — на GitHub: https://github.com/rivet-dev/rivet

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Restate — среда выполнения для создания отказоустойчивых приложений с долговечным выполнением, надежной передачей сообщений и состоянием, сохраняющимися при сбоях инфраструктуры.

4,6 тыс.226RustOtherОбновлён 1 час назад

Персональный AI-агент на базе Pi Durable для самостоятельного хостинга: продолжает задачи после перезапуска процесса, поддерживает субагентов, задачи по расписанию, веб-интерфейс и дополнительную интеграцию с WeChat.

384JavaScriptMITОбновлён 11 дней назад