How to use Claude Code from your phone
You start a big refactor, go make coffee, and Claude Code stops to ask whether it can run the migrations. You're not at your desk, so the agent just sits there. This guide covers how to leave the computer working and keep an eye on it from your phone: what to set up, and in what order.
Why you'd want this
A coding agent doesn't always work in two-minute bursts. A long task can run for half an hour or more, and along the way Claude Code asks permission to run commands, edit files, or touch something outside the project. With nobody there to answer, it waits.
With your phone in your pocket you can see where it's at, read what it's asking, and decide. You don't have to stay glued to the desk, and you don't have to approve everything in advance just in case.
What you need
Three things on the computer where Claude Code runs, plus an app on your phone.
An SSH server. Your phone connects to your computer over SSH, the same way another laptop would.
- On macOS: System Settings › General › Sharing › Remote Login.
- On Linux (Debian or Ubuntu):
sudo apt install openssh-server
sudo systemctl enable --now ssh
A way to reach it from outside your home network. On the same Wi-Fi, the local IP is enough. Away from home, a VPN such as Tailscale is the sensible route: the phone and the computer see each other as if they were on one network, and you don't have to expose port 22 to the internet. Don't do the latter, especially with password logins.
A terminal multiplexer, such as tmux. Without one, if the phone drops its connection or you close the app, the terminal session dies with it. With tmux, Claude Code keeps running on the computer and you just reattach to the same session.
brew install tmux # macOS
sudo apt install tmux # Debian/Ubuntu
Step by step
- Turn on SSH on the computer and check it works from another machine:
ssh your-user@computer-ip. - Install the VPN on both ends if you want to connect away from home, and note the name or IP the computer has on that network.
- Start Claude Code inside tmux:
tmux new-session -A -s claude
claude
The -A flag means that if a session called claude already exists, you attach to it instead of creating a second one.
- Connect from the phone over SSH and attach to that tmux session. From there you can type to Claude, read what it's doing, and answer.
That works. What it lacks is convenience: you have to open the app every few minutes to see whether Claude is still waiting on you. That's what the last piece is for.
Where Wendo fits
Wendo is an SSH client for iOS and Android, made by Lirafy, built for keeping tabs on coding agents. It isn't in the stores yet; it's coming soon to the App Store and Google Play.
What it adds on top of plain SSH is the alerts and approvals. On the computer, you run one command:
curl -fsSL https://wendo.lirafy.dev/install.sh | sh
The script downloads the hook and the pairing script into ~/.wendo, installs jq and qrencode if they're missing, registers the hook in ~/.claude/settings.json (saving a copy first as settings.json.bak-wendo), warns you if nothing is listening for SSH on port 22, and prints a QR code. You can run it again without anything being duplicated.
On the phone, go to Machines › Add and choose to scan the QR code. Wendo pins the server's host key fingerprint from that first moment, so you aren't accepting a key blindly. The app then shows you a command to run on the computer that installs the phone's key in authorized_keys.
From then on, whatever Claude Code needs from you shows up in the Inbox: permission requests, questions, and finished tasks, from all your machines in one place. Each permission request can be approved or denied from its row. If you don't answer, nothing odd happens: the hook waits 90 seconds, and after that Claude Code asks you in the terminal as usual. The details are in the alerts and approvals page.
If you run Claude inside tmux, tapping an alert takes you to the exact pane it's running in. The setup is on the tmux page, and what happens when the network drops is covered in sessions that survive disconnects.
Two more things help on a small screen: the diff viewer for reviewing what Claude changed, and pasting images into the conversation. If you're building something for the web, there's also a browser preview.
The free plan includes 5 trial approvals from the Inbox; with Pro there's no limit.
With the app closed
The Inbox refreshes by itself while Wendo is open. With the app closed, alerts arrive through ntfy, a push notification service you can self-host. How to set it up, and why the topic is effectively a password, is in the article on Claude Code notifications on your phone.
What if I'd rather use another client
Any SSH client covers the basics: connect, attach to tmux, talk to Claude Code. What you lose is everything else. Without the hook there's no Inbox, no approving from a row, and no alert when the session needs you, so you have to remember to check. If that's enough for you, the steps above are all you need.
Limits worth knowing
- On Windows you need WSL2: the app sends POSIX shell commands over SSH, and tmux doesn't exist on Windows. Run Claude Code inside WSL so the hooks run there.
- For now the hook is only registered for Claude Code.
- Claude's questions and plan approvals don't block: you answer them from the chat view, not from an Inbox row.
- The tmux, zellij and herdr integration is part of Wendo Pro.