Skip to content
ReviewRamble

The weekly brief

AI, reviewed, in your inbox.

  • New reviews of tools, models, MCP servers and repos, with the verdict up front
  • Re-checked prices and ratings when something changes
  • New analysis pieces as they are published

Models, agents, MCP servers and the tools actually worth your time.

One email a week. Unsubscribe with the link in any brief. How we use your email

Rivet

Open-source actor engine and RivetKit SDK: one long-lived, stateful process with its own SQLite database per agent, user or session.

Reviewed by ReviewRamble editors · Updated

View on GitHub Open source

Our rating

4.1/5

Rivet is the most direct way to give each agent its own durable process and database without paying for an idle sandbox, provided you can live with a 3.x line that changed under its users this month.

What is Rivet?

Rivet runs actors: small long-lived processes, each with in-memory state, its own SQLite database, WebSocket connections and timers, addressed by a key such as an agent or tenant ID. You write them in TypeScript with the rivetkit npm package (a Rust SDK also exists) and run them inside your own Node.js or Bun service; the Rivet engine schedules them, puts idle ones to sleep and wakes them on the next request with their state intact.

Version 3.0, released on 1 November 2026, replaced the Postgres or FoundationDB and NATS dependencies of 2.x with a storage engine on object storage, so a self-hosted cluster needs only the rivetdev/engine Docker image and an S3-compatible bucket. The project is Apache-2.0, written mostly in Rust, and is also sold as Rivet Cloud and as a managed deployment inside your own cloud account.

Is Rivet worth it?

Rivet's argument is that an agent spends most of its life waiting on a model, so it should not hold a whole VM while it waits. An actor keeps the conversation, memory and live client connections in one cheap process, and reaches a sandbox only when it has to run code. The README puts an actor at 72 KB of memory with a 4.99 ms p99 cold start, against 512 MiB and 1.70 s for a default E2B sandbox; those are Rivet's own figures from its benchmark against Cloudflare Durable Objects, run on Rivet 3.0.3, and the raw samples are published.

The programming model will be familiar to anyone who has used Durable Objects or Orleans. You define an actor with actions, a SQLite schema and connection hooks, then call agent.getOrCreate with a key from a typed client or React hook. Persistence, broadcast to every connected client, cron-style wake-ups and actor-to-actor calls come built in. In practice that replaces a Redis cache, a WebSocket server and a job queue for per-user state, which is the real saving.

The security defaults are sensible for a control plane. The engine refuses to start without auth.admin_token, browser clients get scoped JWTs that last at most a day, and outbound calls to non-routable addresses are blocked to limit request forgery. Two things need attention: the peer port 6421 is plaintext and unauthenticated and must stay on a private network, and the engine sends crash reports to Rivet unless telemetry.enabled is set to false. Actors run your code with your service's own credentials; Rivet's agentOS sandbox or an external one is what isolates code an agent writes.

The catch is pace. The 3.0 announcement listed multi-region, serverless and ACLs as not yet carried over from 2.x and advised teams needing them to stay put, a promised migration tool had not shipped, and ten stable releases landed between 1 and 11 November. An actor whose data has gone cold to S3 takes about 689 ms to wake, according to the same post, far from the headline 5 ms. With 403 open issues and pull requests, this is a fast-moving codebase from a small company, not a settled standard.

Our take: for per-session agent state with live clients, Rivet does in one library what Temporal and a WebSocket server do in two systems, and does it cheaper. For long business workflows where a lost step costs money, Temporal's maturity still counts for more.

Where it earns its place

  • A three-person startup shipping a customer-support agent

    Keep each customer's conversation and memory alive across restarts and browser tabs

    One actor per customer stores messages in its SQLite database and streams tokens to every open tab. Rivet Cloud's Free plan with one node covers a prototype; Hobby at $18/month plus an $18 R-5 node is the next step.

  • A platform engineer at a regulated fintech

    Run stateful agent sessions without customer data leaving the company's own cloud

    Self-host the rivetdev/engine image on Kubernetes with an S3 bucket the company owns, a generated admin token and telemetry switched off. Licence cost is nil; the work is operating three instances across zones.

  • A product team building a collaborative document editor

    Sync edits between everyone in a document without a separate realtime service

    One actor per document holds the current state and broadcasts changes over WebSockets; idle documents sleep and cost nothing until someone opens them again.

Before you commit

Setup
npm install rivetkit, define an actor and a registry, and run it locally; the README also offers a prompt that has a coding agent install Rivet's own skills and scaffold a project. Production self-hosting is the rivetdev/engine image on ports 6420 and 6421 with a bucket and a local disk per instance.
Integrations
TypeScript SDK for Node.js and Bun, a Rust SDK, React hooks, the Vercel AI SDK, Vitest, OpenTelemetry, Pino, and OpenAPI and AsyncAPI specs. Storage on S3, Google Cloud Storage, Azure Blob, Cloudflare R2, MinIO or a local filesystem.
Data and privacy
Actor data lives in a bucket you choose when self-hosting, or in Rivet Cloud. Writes are committed to disk in a majority of instances before moving to object storage. Crash reports go to Rivet by default; telemetry.enabled: false turns them off.
Cost at scale
Self-hosting is free with no usage limits. Rivet Cloud's Team plan is $156/month for three control-plane nodes and up to 10 actor nodes at $18 to $327 each; a Team cluster with one R-5 node is $174/month. Larger clusters are quoted by sales.
Limits
The control plane runs in one region for now; multi-region, serverless and ACLs were not in 3.0. Cold wakes from S3 take about 689 ms for a 47 MiB database. No 2.x to 3.0 migration tool was published at the time of checking.

What’s good

  • One stateful actor with its own SQLite per agent, user or document
  • Self-hosting needs only one Docker image and an S3 bucket
  • Typed TypeScript client and React hooks over WebSockets
  • Admin token required to start; scoped JWTs for browsers

What’s not

  • 3.0 dropped multi-region, serverless and ACLs for now
  • Cold wakes from S3 take hundreds of milliseconds
  • Performance figures come from Rivet's own benchmark
  • Crash reports go to Rivet unless turned off

Best for

TypeScript teams building agents or collaborative apps that need durable per-user state and live connections without running a sandbox per session.

Rivet alternatives

Rivet: common questions

Is Rivet worth it?
Rivet is the most direct way to give each agent its own durable process and database without paying for an idle sandbox, provided you can live with a 3.x line that changed under its users this month. We rate it 4.1 out of 5.
How much does Rivet cost?
Free to self-host under Apache-2.0. Rivet Cloud: Free $0, Hobby $18/month, Team $156/month, Enterprise $740/month, plus $18 to $327 per actor node per month.
What are the downsides of Rivet?
3.0 dropped multi-region, serverless and ACLs for now; cold wakes from S3 take hundreds of milliseconds; performance figures come from Rivet's own benchmark; crash reports go to Rivet unless turned off.
Who is Rivet best for?
TypeScript teams building agents or collaborative apps that need durable per-user state and live connections without running a sandbox per session.
How much does Rivet cost for a team or in production?
Self-hosting is free with no usage limits. Rivet Cloud's Team plan is $156/month for three control-plane nodes and up to 10 actor nodes at $18 to $327 each; a Team cluster with one R-5 node is $174/month. Larger clusters are quoted by sales.
Is Rivet safe for company data?
Actor data lives in a bucket you choose when self-hosting, or in Rivet Cloud. Writes are committed to disk in a majority of instances before moving to object storage. Crash reports go to Rivet by default; telemetry.enabled: false turns them off.
What are the best Rivet alternatives?
The closest alternatives we have reviewed are Temporal, Dapr and Mastra.

Answers checked Nov 13, 2026.

Make Rivet? Show this rating on your siteRivet rated 4.1 out of 5 on ReviewRamble