The computer that outlives its hardware.
Give each agent its own machine. Ask for work in one sentence; get back a link you can open. Close your laptop. Nothing dies.
fig. 01 — one computer moving across three providers. its memory stays put; only the computer moves.
- handle
- cmp_7df82· constant
- status
- running
- vcpu
- 16
- memory
- 64 GiB
- disk
- 40 GiB nvme
- uptime
- 3:12:07· never resets
- region
- fsn1
- provider
- hetzner
- price
- $0.12/hr
The computer is not the server.
When the server it is running on disappears at 2 AM, your agent does not notice. The server is just a place the computer happens to be: when it dies, gets expensive, or something faster shows up, the computer moves and keeps working.
- your work
- saved to git, continuously
- the computer
- an identity, not a box
- the server
- swappable at any moment
- your setup
- travels with the computer
fig. 02 — the two planes. nothing above depends on anything below.
It remembers everything.
Leave on Tuesday, come back Thursday: same files, same session, same conversation. Every computer keeps a diary of what happened to it, and you can rewind to any moment in it.
| t | event | record |
|---|---|---|
| 09:14 | created | born with 16 cores and 64 GB of memory |
| 09:41 | snapshot | saved a copy of itself before a risky change |
| 09:42 | fork | split into two copies to try two ideas at once |
| 10:03 | resize | borrowed 32 cores for a heavy build |
| 10:11 | move | found faster hardware and moved itself |
| 11:26 | hibernate | went to sleep to stop costing money |
| 14:02 | resume | woke up exactly where it left off |
fig. 03 — one computer's working day, in its own words. the 14:02 wake-up is the same session that went to sleep at 11:26.
One call. Four verbs.
Say what you need: this much power, this much memory, what to optimize for. It finds a home for it. You never pick a company, a datacenter or a server.
const computer = await durable.computers.create({
cpu: 16,
memory: "64gb",
optimize: "compile-per-dollar",
});
await computer.exec(agent);
await computer.resize({ cpu: 32 });
const experiment = await computer.fork();
await computer.hibernate();Close the laptop. Nothing is lost.
A session can die a hundred ways: the laptop sleeps, the server vanishes, the wrong window gets closed. The work finishes anyway, and the link arrives like nothing happened.
fig. 04 — a crash, replayed. red is the kill; blue is what survived it. our test suite does this to every build.
| time we add to your agent | 0.5 s |
| from ask to an open link | 24 s |
| work lost to a crash | 0 |
| everything saved on shutdown | 30 s |
| measured, 0.44–0.68 s across suite runs · wall clock, cold preview included · interrupted work replays at boot, test-enforced · work in progress pushed to git before stop | |
Priced like a market. Because it is one.
You never shop for a server again. Say what to optimize; the router keeps choosing, and keeps re-choosing when prices move.
| provider | $/hr | build time | availability | |
|---|---|---|---|---|
| hetzner ccx | 0.18 | 41 s | 98% | |
| vultr hf | 0.31 | 29 s | 94% | |
| do cpu-opt | 0.37 | 38 s | 99% | |
| dc metal | 0.14 | 27 s | 91% | routed here |
fig. 05 — sample market. the router chose the last row because it was asked for the cheapest fast builds.
Pricing.
- on your laptop
- free
- forever. everything runs on your own machine.
- hosted
- $0.06/hr
- 2 cores · 4 GB, billed per second. asleep, it only pays for storage.
- your own servers
- 5%
- on top of what your provider charges you. never a markup on AI tokens.