Toren runs agents
that work for days
and survive anything.

The open-source runtime for process-shaped agents — work measured in hours and days, not seconds, that shrugs off crashes, deploys, and a literal kill -9. In your cloud.

npx toren init my-crew
Watch it survive a kill -9 ↓
FIG. 1 — RUN r_9f2c1a · TWO WAVES, ONE MURDERKILL TEST
WAVE research · task w0t0 WAVE research · task w0t1 WAVE write · task w1t0 kill -9 resumed · 0 tokens re-paid recorded once
CLAIM 01 — AN ASSERTION IN CI

A resumed run never re-pays for a completed model call.

CLAIM 02 — AN ASSERTION IN CI

Crash-tested after every single write point.

CLAIM 03 — BY CONSTRUCTION

Your VPC. Your keys. Apache-2.0, forever.

"90% of the work is checkpointing, delivery tracking, and human oversight — agent logic is 10%."
— practitioners building multi-agent systems in production, 2026

Every serious agent team rebuilds the same plumbing: queues, checkpoints, retries, approval flows. Toren is that 90%, built once, chaos-tested, and open — so your team ships the 10% that's actually yours.

Kill it. It keeps working.

Every model call and tool call is recorded in a Postgres event log the moment it completes. The run's state is the log — so nothing that lives in a process can die with one.

KILL TEST · LIVE TRANSCRIPT

Agents as durable processes.

Files define the agent. Waves fan out the work. The event log holds everything. Parked runs cost nothing — not a worker, not a container, not a poll loop.

workflow.ts WAVES — YOUR CODE OWNS FANOUT

export default async function (ctx) {
  // one planner task; the model decides
  // what deserves research
  const plan = await ctx.wave("plan",
    [ctx.task("planner", ctx.input)]);

  // your code turns the plan into a
  // dynamic parallel fan-out
  const topics = parse(plan.results[0].output);
  const found = await ctx.wave("research",
    topics.map(t => ctx.task("researcher", t)),
    { onTaskFailure: "collect" });

  // park for a human — zero compute
  const memo = await ctx.wave("write",
    [ctx.task("writer", join(found))]);
  return memo.results[0].output;
}

tools/send.ts DURABILITY ATTRS

effects: "external",
// recorded once, never re-run
idempotency: "keyed",
// retries carry a stable key
approval: "always"
// parks until a human signs

anywhere.ts TYPED CLIENT

const t = new TorenClient({url, token});
const {runId} = await t.startRun({input});
const run = await t.waitForRun(runId);

The whole machine FIG. 2 — ONE BORING DATABASE

CLI · API QUEUE WORKERS EVENT LOG(postgres) hintsleasestruth LOCAL: postgres is all three boxes on the right · AWS: SQS + Fargate + RDS — same binary, same log
SPEC — MEASURED, NOT MARKETED
0
tokens re-paid on resume
every
write point crash-tested in CI
1
dependency to run locally
$0
compute while a run waits — hours or weeks

They optimize time-to-first-agent. We optimize agent-lifetime.

Long-running agentsYour cloudNever re-pay tokensOpen source
01Vercel Evelimitedno — theirsnoframework only
02Temporalcode, not agentsyesnoyes
03LangGraphcheckpoints onlypartlynoyes
04Inngest / Restatefunctions, not agentspartlynopartly
05TORENyes — by designyes — by designyesyes · Apache-2.0

One dependency locally. Your AWS in production.

LOCAL — FREE FOREVER

docker compose up

Postgres is the entire stack — state, queue, and event log in one boring database. The scaffold runs offline; no API keys required to feel it work.

npx toren inittoren run

PRODUCTION — YOUR ACCOUNT

toren deploy-aws

One Terraform apply into your AWS: SQS, RDS, Fargate workers, an authenticated HTTP API. Your VPC, your keys, your data boundary. Identical binary.

toren deploy-aws --region eu-central-1 --yes

Free for developers. Paid where organizations need it.

Open source

Apache-2.0 · forever
  • The full runtime + CLI
  • Deploy to your own AWS
  • Scheduling & local memory
  • HTTP API & typed SDK

Toren Cloud

from ~$100/mo · usage-based
  • Fully hosted, zero ops
  • Dashboard & approvals UI
  • Hosted memory
  • For teams without infra

Toren BYOC

enterprise · 3–5 design partner seats open
  • Data plane in your cloud — payloads never leave your VPC
  • Our hosted control plane: fleet dashboards, SSO, RBAC, audit exports, SLAs
  • The self-improvement loop, fed by fleet telemetry
  • What procurement signs after the free deploy wins the eval