Terminal Deck 0.15.0

From your phone

The sessions stay on your computer. Getting a phone attached is six digits, not a network to set up.

Six digits, then approve it

The desktop shows a six-digit code; you type it into the phone. There is no QR code and no pairing link — the QR did not work, and a link is a live bearer secret with a trip through a messaging app attached to it, so both were deleted rather than hidden.

1 On your computer 4 8 2 9 1 5 good for sixty seconds 2 On the phone 4 8 2 9 1 5 you type them in 3 Back on your computer Let this phone in? Approve nothing is paired until you do
Three steps, and the last one happens on the computer itself — so a code somebody else typed still gets them nowhere.

The code lives sixty seconds, is single-use, and dies after five wrong guesses. Redeeming it does not pair anything on its own: it creates a pending device that a person has to approve on the machine itself. The same six digits pair one computer to another.

They find each other by themselves

Nothing is set up on your network: no port forwarding, no VPN, no account and nothing else to join. Both ends dial out and a rendezvous server puts them together — it carries sealed bytes it holds no key for, and it is the one piece of plumbing in this product. How that is built, and what it can and cannot see.

A browser, an Android APK, and an iPhone build on TestFlight

app.terminaldeck.dev is the web client: open it anywhere, type the six digits, and you have the session list and a real terminal. Nothing to install, and it follows your system's light or dark setting.

Both phone clients are native, with a real terminal and a key bar for the characters a phone keyboard hides. Neither is in an app store: Android is a signed APK on the download page, and iPhone is on TestFlight, internal testing only.

Your dev server, on the phone

Tap a port and the phone reaches a dev server running on the desktop. It is a raw TCP byte pipe rather than an HTTP proxy, so WebSockets, hot reload, service workers and cookies survive untouched. Only loopback is dialable, only ports something is listening on right now, and only after a person taps one.

Download it What the relay can and cannot see