live demo · alongside the terminal

dev — the topology, reconciled

A different desh surface. Not a terminal this time — a controller. You declare a small topology of services, press one button, and the system reconciles the running world to match it. The servers are simulated (desh runs on a Worker — we say so up front), but the record-keeping is real: every start, every line of output, every approval is an event on an append-only log, and the tiles are just a view of it. See the terminal demo →

ensure, not start

One verb brings up the whole topology, in dependency order. Run it again and it does nothing — the diff is empty. The duplicate servers that pile up everywhere else literally can't happen here.

a crash outlives its process

Output lands on the log as a hash, never inline. When a service dies, its last words are still there — scroll the tile, scrub the timeline. The server died; the crash didn't.

declare where it runs

Each service says its target. Local is instant; a remote one asks once, and the approval is a fact on the log. Same mechanism whether the ask comes from here or from a link.

time traveltip
topology web0/3 up
weblocal · :4101down
needs api
— not started —
apilocal · :4102down
needs pds
— not started —
pdsremote:proddown
— not started —
the ledger — every tile above is a reduction of this