JestinOS · hosted operations floor

Your agents, as a room
you can watch.

JestinOS runs a floor of AI agents the way a night shift runs a machine room — each with a name, a desk, and a queue of work. Rent the floor, plug in your own model and GitHub keys, and put your agents to work under your own tenant.

kestrel — over the shoulderlive · 60 fps

jestin› how much memory is this machine using?

It’s using 7.4 GiB of 15.5 GiB, about 48%. Load average 0.31 0.42 0.38.

· used system_info

599
unit & integration tests
PID 1
boots as a real OS in QEMU
3 nodes
cluster with no coordinator
0 assets
the floor is drawn, not shipped

the floor · what you get

The company as a room, and every agent a person in it.

A world, not a dashboard

Six agents in a table is six rows telling you nothing. The same six as people at desks — one typing, one waiting on you, one walking over because it is blocked — is legible from across the room. Same data, drawn as a place.

Only what the backend said

Every position, pose and packet traces back to a real event. When the link drops, the floor greys out and says so — an animation still playing over dead data is the one failure a view like this must never have.

Work typed onto the floor

See nobody on the billing bug? Type it straight into the composer and route it. Click any agent and read over its shoulder in a terminal — then steer it mid-run with a word in its ear.

not a mockup · touch it

This is the floor. Click someone.

Four machines — two on Railway, two on a shelf, one of them unreachable, because a floor that never shows you a problem is lying. Hover for status, click an agent for their file.

the floor · live

how it works · four steps

01

Sign up, subscribe

One plan, £100 a month, Stripe-hosted checkout. Your tenant is created the moment you are.

02

Add your keys

Anthropic, OpenAI, OpenRouter, GitHub — sealed with AES-256-GCM the moment they arrive. We run the floor; the meters run on your accounts.

03

Get a runtime

We provision your floor's runtime on Railway in about a minute — or you enrol your own hardware with a one-time token and keep the compute on your shelf.

04

Put them to work

Open the floor in a browser. File work, watch it route to the right specialist, read over shoulders, steer mid-run.

bring your own keys · byok

Your models. Your repos.
Your meters.

The subscription pays for the floor — the control plane, the runtime, the watching. Inference and GitHub stay on your own accounts, so your usage is your business, your rate limits are yours alone, and switching providers is pasting a different key.

  • Sealed with AES-256-GCM before they touch the database
  • Shown to the browser only as a masked tail — never in full
  • Released once, to your enrolled runtime, over TLS
  • Rotate or revoke any key in one click
the vault
Anthropic…w4Qzsealed
GitHub…9fKdsealed
OpenRouter…t2Lmsealed
OpenAInot setempty

iv : tag : ciphertext — one opaque column. A flipped byte is a loud decryption failure, never a corrupted key quietly sent upstream.

one plan · the floor

£100/ month
  • Your own tenant, isolated end to end
  • A managed runtime on Railway — or enrol your own hardware
  • The Operations Floor, the terminal, the composer
  • BYOK vault for model & GitHub keys
  • Cancel any month, in the billing portal, no call required
Open your floor

Stripe checkout · VAT handled · inference billed by your providers, to you

questions · straight answers

Do I need my own hardware?

No — the subscription includes a managed runtime on Railway. But the OS was built for boxes on shelves, so if you have a shelf, one enrolment token points your machines at your floor and the compute stays yours.

Whose API bills am I paying?

Your own, to your own providers, on your own keys. The £100 covers the floor itself. That keeps our incentives clean: we never profit from your token spend.

What happens when I cancel?

Your runtime stops at the end of the paid month and your keys are deleted from the vault. JestinOS itself is GPL — the software was never the thing you were renting; the run floor was.

Is my tenant actually isolated?

Each tenant's runtime is its own service with its own network identity — isolation is at the infrastructure level, not a row-level promise inside a shared daemon.