Repolode
rivet-dev

rivet-dev/rivet

Rivet is an open-source orchestrator that schedules durable, stateful Actors for agents, workflows, and realtime apps, as an alternative to pod-based scheduling.

Open-source alternative to:Cloudflare Durable Objects

Stars
6,322
Forks
280
Open issues
350
Last commit
14 hours ago

What is it?

Rivet schedules Actors, long-lived processes that each carry durable state, a SQLite database, a queue, realtime connections, and scheduling, and are addressed by key. You can create one Actor per agent, session, user, or tenant. Actors run inside an ordinary Node.js, Bun, or Rust worker process rather than in their own container or VM, and idle Actors hibernate and wake on the next request.

The project ships TypeScript (RivetKit) and Rust SDKs with typed clients and React hooks, so existing packages, tooling, and tests can be used without a custom runtime. The control plane is a single Rust binary that can be self-hosted with Postgres or FoundationDB and tiered storage to S3, or run on Rivet Cloud or inside a customer VPC (BYOC).

The repository also includes workflows for durable multi-step operations and agentOS sandboxes that give untrusted, generated code its own filesystem and shell.

Key features

  • 01Actors hibernate when idle and wake on the next request with state intact
  • 02Per-Actor SQLite database or POSIX filesystem tiered to S3
  • 03Typed TypeScript and Rust SDKs with React hooks for realtime state
  • 04HTTP and WebSocket connections to Actors, with Actor-to-Actor calls by key
  • 05Cron and timestamp-based scheduling built into the control plane
  • 06OpenTelemetry traces, metrics, and logs

Use cases

  • Running one durable process per coding or chat agent that survives restarts
  • Realtime collaboration where each document or room broadcasts changes to connected clients
  • Running generated or untrusted code in isolated Actors with their own storage
  • Self-hosting agent infrastructure inside a company VPC next to existing databases and APIs

Quick start

  1. 1

    Install the RivetKit package

    npm install rivetkit
  2. 2

    Add agent skills for your coding agent (optional)

    npx skills add rivet-dev/skills
  3. 3

    Follow the Node.js and Bun backend quickstart in the docs

Things to know

  • The 12 ms cold start and 72 KB per Actor figures come from the project's own benchmarks, not an independent test.
  • Some features, such as the faster cold-start path, are described as experimental.
  • Self-hosting the control plane requires running Postgres or FoundationDB and operating the infrastructure yourself.

Topics

FAQ

What is rivet?
Rivet is an open-source orchestrator that schedules durable, stateful Actors for agents, workflows, and realtime apps, as an alternative to pod-based scheduling. Rivet schedules Actors, long-lived processes that each carry durable state, a SQLite database, a queue, realtime connections, and scheduling, and are addressed by key. You can create one Actor per agent, session, user, or tenant. Actors run inside an ordinary Node.js, Bun, or Rust worker process rather than in their own container or VM, and idle Actors hibernate and wake on the next request.
Is rivet free to use? What license does it have?
rivet is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is rivet still maintained?
Actively maintained. The last commit to rivet was on Oct 22, 2026.
What can I use rivet for?
Running one durable process per coding or chat agent that survives restarts Realtime collaboration where each document or room broadcasts changes to connected clients Running generated or untrusted code in isolated Actors with their own storage Self-hosting agent infrastructure inside a company VPC next to existing databases and APIs
How do I install rivet?
Install the RivetKit package: npm install rivetkit Add agent skills for your coding agent (optional): npx skills add rivet-dev/skills Follow the Node.js and Bun backend quickstart in the docs
Where can I get rivet?
The source code and installation instructions are on GitHub: https://github.com/rivet-dev/rivet

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects