Watch, don't type
People you invite see the screen. They don't get the keyboard until you say so.
[wrapper] controls: Ctrl+\ then s share | u unshare | w typing | ? status
~/projects/api ❯ git status
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
modified: src/relay/p2p.ts
modified: tests/tickets.test.ts
no changes added to commit (use "git add" and/or "git commit -a")
~/projects/api ❯
share this session: press ⌃\ then s or nothing leaves the host until you share it
Start Wrapper on your computer, then share a session to connect.
[wrapper] controls: Ctrl+\ then s share | u unshare | w typing | ? status
~/projects/api ❯ git status
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
modified: src/relay/p2p.ts
modified: tests/tickets.test.ts
no changes added to commit (use "git add" and/or "git commit -a")
~/projects/api ❯
Enter the invitation shown by the host.
The share code is used only for backend verification and is never written to logs.
Direct P2P can reveal peer IP addresses. Relay fallback is encrypted in transit but is not zero knowledge.
The terminal stays on your computer. Open it from your phone when you share. Other people can watch; they cannot type unless you allow it.
Then wrapper share. Works with Claude, Codex, vim, or whatever is already running.
Interactive traffic takes the shortest secure path. Signaling and fallback remain authenticated end to end.
Connection diagram: your viewer and your shell connect directly over WebRTC with DTLS encryption. When a direct path is unavailable, traffic falls back to an authenticated WebSocket through the Fly relay, encrypted with TLS in transit.
Your process, filesystem, credentials, and history stay on the host. Sharing takes two keys and ends with two more.
How terminal data movesPeople you invite see the screen. They don't get the keyboard until you say so.
Ctrl+\ then s opens the tunnel and prints a code.
Ctrl+\ then u closes the share and unused tickets.
Viewer tickets are random, stored hashed, and expire after 60 seconds.
Dotfiles, prompt, plugins, and history behave exactly as before.
Use Wrapper on this machine for free. Upgrade only when a session needs to cross networks.
Install the free CLI$0forever
Your shell, on this machine.
$99/ year
$8.25/ month
From your phone, or any other device.
Sign in to upgrade from the dashboard.
Not until you share. Unshared hosts listen on loopback and send no bytes and no session metadata. A share uses WebRTC when it can, else an authenticated relay that keeps nothing.
How terminal data movesNo. wrapper share wraps one session. wrapper install is optional if you want every new terminal wrapped. Remove it with wrapper uninstall.
Not unless you allow it. Watching is the default. Remote access stays off until you share (wrapper share or Ctrl+\ then s).
No. Anything in your terminal. Claude, Codex, vim, a build, a server. The tool does not matter.
Everything on one machine. Does not patch your shell config. Pro is $99/year ($8.25/month) or $15/month: another device, a Linux host, and the iOS viewer.
Compare the plansThe viewer is in TestFlight beta now and App Store review is the next step. Leave an address on the right and you get one email when it lands.
Yes, when the terminal needs you. The alert names the session. It does not include what is on screen.