Skip to content
← Tools / Skills
ToolRestate/10 trustVerified

Restate

Durable execution for AI agents and microservices — code that survives every failure, with no extra infrastructure.

Visit official site →

About

Restate gives you a distributed, durable version of your everyday building blocks. You write ordinary service handlers in TypeScript, Python, Java, Go, or Rust, and Restate guarantees they run to completion: failures trigger retries that recover partial progress via durable execution instead of re-running completed steps, services communicate with exactly-once semantics, and each entity gets isolated key/value state persisted alongside execution progress. Durable promises, timers, and sleeps make long-running agent loops (waiting on a human approval, a webhook, a timer) trivially resilient.

The positioning is explicit in the README: durable AI agents, workflows-as-code, microservice orchestration, and event processing, with SDKs for five languages and a UI/CLI for introspection plus OpenTelemetry traces. It is the simplest on-ramp to the durable-execution idea Temporal pioneered, with a lighter operational story. The license is the catch: BSL 1.1 (Business Source License), not OSI open source, so read it before building a business on the server itself.

What it can do

  • Durable execution: retries recover partial progress, never re-run completed steps
  • Exactly-once service communication: request-response, one-way messages, scheduled tasks
  • Durable promises, timers, and sleeps resilient across failures and restarts
  • Consistent per-entity key/value state persisted with execution progress
  • SDKs for TypeScript, Python, Java/Kotlin, Go, and Rust
  • Built-in UI, CLI introspection, and OpenTelemetry tracing

Setup

  1. Install the server: brew install restatedev/tap/restate-server, npx @restatedev/restate-server, or Docker.
  2. Install an SDK for your language (npm i @restatedev/sdk, pip install restate_sdk, etc.).
  3. Write a service handler with durable steps — ctx.run() for recoverable work, ctx.sleep() for durable timers.
  4. Register your service deployment with the server.
  5. Invoke it over HTTP/Kafka; inspect executions in the UI and CLI.

Prerequisites

A Restate server (local binary, Docker, or managed); one of the supported language SDKs.

Use cases

agentsworkflowsdeveloper-toolsautomationopen-source

Works with

Trust score — 7/10

/10 trustVerified

Scored 7/10 (verified tier, metrics-v1). Evidence: 4,561 GitHub stars (GitHub API), pushed Oct 15 2026; the README documents the durable-execution primitives, the five SDKs, and the AI-agent use case; docs corroborate the install and handler model. Strengths: the cleanest durable-execution on-ramp, genuinely useful for long-running agent loops, very active. Docked for: (1) BSL 1.1 license, not OSI open source — read before commercial use; (2) younger and smaller ecosystem than Temporal; (3) 474 open issues is a lot relative to star count. License: BSL 1.1.

★ 4,561 GitHub stars

How the trust score is built

Full methodology →
Adoption · stars/downloads, log-scaled vs peers
7.0/10
Maintenance · recency, releases, issue load
8.0/10
Openness · license + docs
7.0/10
Manual review · sanity read + red-flag check
8.0/10
  • · Adoption 7: starScore from 4,561 stars on restatedev/restate
  • · Maintenance 8: pushed 2026-10-15 (recency 10); frequent releases (10); 474 open issues on 4.6k stars (issues 1)
  • · Openness 7: BSL 1.1 source-available (0.7*6) + official docs verified at docs.restate.dev (0.3*10)
  • · Manual 8: README documents durable-execution primitives, five SDKs, and the durable-AI-agent use case; docked for BSL 1.1 license, younger ecosystem than Temporal, high issue count

Sources

Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.