Install

Install QuickTUI on your machine

Three steps to get your sessions on your phone, then the full reference: installer options, pairing ops, gestures.

Three steps

  1. On your machine — Install the server. One line in the terminal of your Mac or Linux box. Needs tmux 3.2+ (the installer checks, but does not install it). Windows: one line in PowerShell, no tmux needed.

    Needs tmux 3.2+ on macOS / Linux — the installer checks it but does not install it.

    macOS / Linux · Global

    curl -fsSL https://quicktui.ai/q.sh | sh

    macOS / Linux · China

    curl -fsSL https://dl.quicktui.cn/q.sh | sh

    Windows · PowerShell

    irm https://quicktui.ai/q.ps1 | iex
  2. On your phone — Get the app. QuickTUI for iPhone and iPad, from the App Store.

  3. On your phone — Pair once. The installer shows a QR code; scan it from the app. Your sessions are on your phone.

    An interactive install opens the pairing guide. To start it again, run quicktui-server pairing welcome, or run quicktui-server pairing qrcode and scan the short-lived QR from the native app.

At your phone, not at the machine? Add a server in the app, choose Quick Setup, and enter its SSH login — the app installs the server for you.

Reference

Pair each client.

Add --browser to render the QR in the machine's default browser (desktop sessions), --select-address to choose a detected address, or --debug-addr <host:port|URL> to put a specific public URL in the QR.
This CLI flow currently supports new-device pairing for native apps that can scan the QR; it does not provide a supported full-payload export for new Web or Desktop pairing. Web creates or stores device credentials only on an HTTPS or loopback origin such as http://localhost:8022; remote plain-HTTP origins are refused. There is no root-token or browser-token login.

Device pairing ops.

List or revoke paired devices without restarting the daemon:

# macOS / Linux
quicktui-server pairing devices list
quicktui-server pairing devices revoke <device_id>

# Windows PowerShell
& "$env:LOCALAPPDATA\QuickTUI\quicktui-server.exe" pairing devices list
& "$env:LOCALAPPDATA\QuickTUI\quicktui-server.exe" pairing devices revoke <device_id>

Each paired client pins the server identity and authenticates inside the E2E tunnel with transcript-bound device_pop_v1. Direct connections carry that E2E tunnel end to end; QuickTUI Relay only forwards its opaque encrypted frames. Revoking a device makes that client pair again. quicktui-server pairing identity rotate rotates the E2E identity and clears all pairs; on Windows invoke it through the same full executable path shown above. The service must be stopped first. Only use it when you intend to re-pair every device.

Profiles created with the retired root token must be paired again. A legacy per-device token may be converted once to a PoP device credential inside a pinned E2E tunnel; after that migration, the client re-authenticates with device_pop_v1 and removes the old token.

China mirror.

This is a parallel entrypoint for users in China. Existing installs from quicktui.ai/q.sh do not migrate automatically; re-run dl.quicktui.cn/q.sh to use OSS-backed automatic updates.

Windows machine? One line in PowerShell.

Downloads the installer, installs the qscn session backend automatically, and registers a Scheduled Task that starts the service at logon. China mirror support for Windows arrives once qscn assets are mirrored. On legacy Windows PowerShell 5.1 with TLS 1.2 disabled, prepend [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor 3072; to the same line.

INSTALLER OPTIONS

Non-interactive installs, custom ports, environment checks. Pass via sh -s --:

OptionDescription
-y, --yesNon-interactive mode
--addr <address>Listen host, host:port, or http(s)://host:port (default: 0.0.0.0). An IPv6 literal must be bracketed and carry its own port, e.g. [::1]:9000
--port <port>Listen port, used when --addr has no port (default: 8022)
--term <value>TERM for tmux (default: xterm-256color)
--lang <value>LANG for tmux (default: en_US.UTF-8)
install --channel stableInstall the latest stable server release (the zero-argument bootstrap default)
install --channel previewInstall the latest server preview release
install --tag <tag>Install that exact release tag straight from the release host, bypassing the manifest
checkRun environment checks without installing
--no-serviceSkip background service setup
uninstallStop the service and uninstall QuickTUI
curl -fsSL https://quicktui.ai/q.sh | sh -s -- install --channel stable -y --port 9000

GESTURES

How you actually drive the terminal from a phone or iPad. A few of these are swappable in Settings if you prefer single- and double-finger flipped.

GestureAction
1-finger double-tapSend Tab
2-finger double-tapSend Enter
1-finger swipe ↕Scroll history
1-finger swipe ↔Switch tmux window
2-finger swipeArrow keys
3-finger swipe ←Backspace
3-finger swipe ↑Open session switcher