Get started

Install & pair in three steps.

No accounts, no cloud sign-up. Install the open-source service on your box, scan the code it prints (or type the PIN), done.

The whole thing, one take: paste the command, scan the QR, drive the box. (Terminal sped up; nothing else.)
1

Run one command on the box

It installs a tiny service, no dependencies. Pick the command for your OS:

Linux — SteamOS · Bazzite · Steam Deck  (Terminal)

$ curl -fsSL https://couchside.tv/install.sh | bash

Read the script first →  ·  not a shell person? Paste it into ChatGPT or Claude and ask what it does; it’s a short, open-source script.  ·  New Steam Deck? Run passwd once in Desktop Mode so it can ask permission.  ·  Got Decky Loader? The same one-line install drops a Couchside Game Mode panel straight into your Quick Access Menu, without going through a plugin store.  ·  On Bazzite? These steps are also in the official Bazzite documentation →

Windows — 10 / 11  (beta)

  Download CouchsideSetup.exe

Double-click to install — it sets up the service and shows your PIN and a QR. It’s unsigned for now, so Windows SmartScreen shows a one-time “More info → Run anyway”; the admin prompt after that is the normal Windows UAC.

Prefer the terminal? In PowerShell (asks for admin via UAC):

> irm https://couchside.tv/install.ps1 | iex

Windows is in beta. Linux is the primary target and the most polished; the Windows service works today but is newer, so expect the odd rough edge and file anything you hit. Either path installs the same unprivileged service that can only run an audited allowlist of commands — no root daemon. Read the install script → or check the Windows agent source.

Either takes about 15 seconds, then shows a PIN (and a QR) and leaves the service running. Re-run any time.

2

Scan for your box, type the PIN

Get Couchside on your phone, then tap Scan for boxes. It finds the box on your network; the box shows a short PIN on its own screen — type that in and you’re paired. No IP addresses, no tokens, no typing. Prefer the QR? Scan it with the in-app scanner (Setup → Scan a pairing code) or just point your phone’s regular camera at it.

Download on the App Store →  ·  Get it on Google Play →

3

Fly the couch

Watch the vitals, restart a wedged display, tail the logs, or flip to the controller. Never get up to find a keyboard again.

+

Want more? A couple of one-time opt-ins

The installer adds a couchside command. A few extra powers are off by default — you turn them on only on the box (never from the phone), and each one tells you exactly what it grants first:

Update the box from your phone — Flatpak apps and the OS (SteamOS / Bazzite)

$ couchside allow-system-updates on

It grants the service passwordless sudo for one fixed command each — a root-owned wrapper that runs flatpak update or stages an OS update, and accepts nothing else. Never a blank cheque on flatpak or rpm-ostree. An OS update stages for the next boot, so the app says “reboot to apply” rather than pretending it finished. Turn it off any time with couchside allow-system-updates off.

Also: couchside allow-updates on (let the app update Couchside itself) and couchside allow-launchers on (let the app create launchers, not just run them). Full detail — and why each grant is shaped the way it is — is in the README on GitHub →