The RLM agent orchestration framework.

Spawn a sandbox, let an agent decompose the task, and fork children that inherit its exact state — every exec ledgered, every checkpoint resumable.

Open source · Apache 2.0 licensed.

Read the docs GitHub →
index.ts sandbox · 0.5 vCPU · 256Mi
const root = await Agent.load("planner.json");
 
const [a, b] = await Promise.all([
  root.spawn("worker.json"),
  root.spawn("worker.json"),
]);
 
await a.prompt("Review src/api");
await b.prompt("Review src/db");

Not a copy. Not a re-run. The exact checkpointed state, forked.

How it works

One task, split recursively.

Every spawn, exec, and checkpoint is written to the ledger as it happens. Scroll to watch it happen.

Master Agent sandbox
0.5 vCPU · 256Mi
Worker Agent A sandbox
0.5 vCPU · 256Mi
Worker Agent B sandbox
0.5 vCPU · 256Mi
Master Agent sandbox
"Review PR #482" 0.5 vCPU · 256Mi
Worker Agent A sandbox
prompt("Review src/api") ✓ 14 files reviewed 0.5 vCPU · 256Mi
Worker Agent B sandbox
prompt("Review src/db") ✓ 1 migration flagged 0.5 vCPU · 256Mi
Built for

Real workloads, not demos.

spawn Decomposition
One task, split recursively across forked sandboxes. The root agent decides how to split the task at runtime — not a pipeline you hard-coded in advance.
fork Isolated, stateful branches
Each child inherits the parent's exact checkpoint, then runs and fails independently of it.
shard Eval shards
Fan out parallel test or eval runs from a single checkpoint.
resume Long-running agents
Checkpoint mid-task, resume exactly where they left off.
ledger Auditability
Every exec, checkpoint, and spawn is a row in the ledger.
The primitives underneath

Everything, one SDK.

Ready to orchestrate?

Spawn your first sandbox in a few lines of TypeScript.