How it works

Your agent asks for a desktop. The fleet hands one out from a warm pool, the agent works it the way a person would, and when the agent goes quiet the desktop is paused.

Ask

Your agent asks.

One HTTP call to the fleet, carrying the fleet key. The fleet refuses to start without one.

POST /v1/computers

Wake

A warm desktop wakes.

The fleet keeps a warm pool of desktops already started and paused, so handing one out only wakes it. It comes back with its own bearer token, shown once.

26 ms median, 29 ms p95to hand out a warm desktop · 25 soak runs · Docker on one Windows PC

Work

The agent works it.

It sees by taking a screenshot and acts with click, type, key and scroll. It can also run a shell command with bash.

screenshot · click · type · key · scroll · bash

Sleep

Then it sleeps.

When the agent goes quiet, the fleet pauses the desktop, and a paused desktop wakes where it left off. Release destroys it; stop keeps its home.

Pause round trip 0.097 s. Resume round trip 0.080 s.One desktop, HTTP round trip through the fleet API

Illustration of one allocation. Scroll to run it.

Three pieces

A desktop, a fleet service that keeps a warm pool and hands desktops out, and Python and JavaScript clients.

  • The desktop

    Each desktop is a Docker container running XFCE, driven by screenshot, click, type, key, scroll and bash.

  • The fleet service

    The fleet keeps a warm pool of desktops, hands them out, takes them back and pauses idle ones.

  • The clients

    A Python client with a command line, and a JavaScript client. Both talk to the fleet over HTTP.

Stop it, keep it, copy it

A desktop does not have to be thrown away when the work is done.

  • Stop and start

    A stopped desktop keeps its home on its own disk and holds no container, network, ports or memory. Start brings it back.

    Stopped and started again, a desktop kept its home: 3 files including 50 MiB of random data matched byte for byte in 5 of 5 cycles.

    Stop took 642–994 ms. Start took 1,102–1,264 ms.

  • Clone

    Clone makes a new desktop from a stopped desktop's disk, with new secrets. It is built and merged, but not yet on the running fleet.

  • Self-healing records

    If a desktop's container disappears, the fleet notices and drops its record instead of handing out a dead desktop.

    When a desktop's container vanished, the fleet dropped its record in 8.53 to 12.74 s.