Framework de modelo de atores para Go, inspirado em Erlang/OTP, para criar sistemas distribuídos supervisionados e transparentes à rede.
rivet-dev/rivet
Rivet é um orquestrador de código aberto que agenda Actors duráveis e com estado para agentes, workflows e apps em tempo real, como alternativa ao agendamento baseado em pods.
Alternativa open source a:Cloudflare Durable Objects
- Estrelas
- 6,323
- Forks
- 280
- Issues abertas
- 350
- Último commit
- há 17 horas
O que é?
Rivet agenda Actors, processos de longa duração que mantêm estado durável, um banco de dados SQLite, uma fila, conexões em tempo real e agendamento, e são identificados por chave. Você pode criar um Actor para cada agente, sessão, usuário ou tenant. Os Actors rodam em um processo worker comum de Node.js, Bun ou Rust, em vez de cada um ter seu próprio container ou VM; quando ficam ociosos, hibernam e despertam na próxima requisição.
O projeto oferece SDKs em TypeScript (RivetKit) e Rust, com clientes tipados e hooks para React, para que seja possível usar os pacotes, ferramentas e testes existentes sem um runtime personalizado. O control plane é um único binário Rust que pode ser hospedado por você com Postgres ou FoundationDB e armazenamento em camadas no S3, ou executado no Rivet Cloud ou dentro da VPC do cliente (BYOC).
O repositório também inclui workflows para operações duráveis de várias etapas e sandboxes agentOS que fornecem a códigos gerados e não confiáveis seu próprio sistema de arquivos e shell.
Recursos principais
- 01Actors hibernam quando estão ociosos e despertam na próxima requisição com o estado intacto
- 02Banco de dados SQLite ou sistema de arquivos POSIX por Actor, com armazenamento em camadas no S3
- 03SDKs tipados em TypeScript e Rust, com hooks para React para estado em tempo real
- 04Conexões HTTP e WebSocket com Actors, com chamadas entre Actors por chave
- 05Agendamento por cron e com base em timestamp integrado ao control plane
- 06Traces, métricas e logs do OpenTelemetry
Casos de uso
- Executar um processo durável para cada agente de programação ou chat, que continue funcionando após reinicializações
- Colaboração em tempo real na qual cada documento ou sala transmite alterações aos clientes conectados
- Executar código gerado ou não confiável em Actors isolados, com armazenamento próprio
- Hospedar por conta própria a infraestrutura de agentes dentro da VPC da empresa, junto aos bancos de dados e APIs existentes
Início rápido
- 1
Instale o pacote RivetKit
npm install rivetkit - 2
Adicione habilidades de agente ao seu agente de programação (opcional)
npx skills add rivet-dev/skills - 3
Siga o guia de início rápido do backend para Node.js e Bun na documentação
Antes de usar
- Os números de 12 ms de inicialização a frio e 72 KB por Actor vêm dos benchmarks do próprio projeto, não de um teste independente.
- Alguns recursos, como o caminho de inicialização a frio mais rápido, são descritos como experimentais.
- Hospedar o plano de controle por conta própria exige executar Postgres ou FoundationDB e operar a infraestrutura você mesmo.
Em coleções
Tópicos
Perguntas frequentes
- O que é rivet?
- Rivet é um orquestrador de código aberto que agenda Actors duráveis e com estado para agentes, workflows e apps em tempo real, como alternativa ao agendamento baseado em pods. Rivet agenda Actors, processos de longa duração que mantêm estado durável, um banco de dados SQLite, uma fila, conexões em tempo real e agendamento, e são identificados por chave. Você pode criar um Actor para cada agente, sessão, usuário ou tenant. Os Actors rodam em um processo worker comum de Node.js, Bun ou Rust, em vez de cada um ter seu próprio container ou VM; quando ficam ociosos, hibernam e despertam na próxima requisição.
- rivet é gratuito? Qual é a licença?
- rivet é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- rivet ainda é mantido?
- Manutenção ativa. O último commit de rivet foi em 22 de out. de 2026.
- Para que posso usar rivet?
- Executar um processo durável para cada agente de programação ou chat, que continue funcionando após reinicializações Colaboração em tempo real na qual cada documento ou sala transmite alterações aos clientes conectados Executar código gerado ou não confiável em Actors isolados, com armazenamento próprio Hospedar por conta própria a infraestrutura de agentes dentro da VPC da empresa, junto aos bancos de dados e APIs existentes
- Como instalar rivet?
- Instale o pacote RivetKit: npm install rivetkit Adicione habilidades de agente ao seu agente de programação (opcional): npx skills add rivet-dev/skills Siga o guia de início rápido do backend para Node.js e Bun na documentação
- Onde consigo rivet?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/rivet-dev/rivet
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Plataforma de backend open source para criar apps com Auth, Databases, Storage, Functions, Messaging, Realtime e Hosting, auto-hospedada via Docker.
Motor de workflows duráveis que executa funções por etapas, tarefas em segundo plano e workflows de IA em serverless, servidores ou edge, com novas tentativas e controle de fluxo.
Restate é um runtime para criar aplicações resilientes com execução durável, troca confiável de mensagens e estado durável, mesmo diante de falhas na infraestrutura.
Biblioteca JavaScript para criar apps web multiplayer em que os navegadores se conectam diretamente por WebRTC, sem precisar manter um servidor próprio.
Agente pessoal de IA auto-hospedado, criado com Pi Durable, que retoma tarefas após reinicializações do processo e oferece subagentes, tarefas agendadas, uma interface web e integração opcional com WeChat.