Short version. Claude Code stays on your computer. Your phone connects to that computer over SSH, through Tailscale so it works from anywhere. A terminal multiplexer keeps the session alive between connections, and Herdr also tells you when an agent needs you. Then you pick a phone app: a plain SSH client, Moshi, Melta, or Anthropic's own Remote Control.

Time: about ten minutes. Cost: nothing beyond what you already pay for Claude.

Why not run it on the phone?

Claude Code is a command-line program that edits files, runs your tests and shells out to git. It needs your repository, your toolchain and your login. Phones have none of that, and iOS won't let an app run a persistent process in the background anyway. Every working setup, including Anthropic's official Remote Control, runs the agent on a real computer and uses the phone as a window into it.

So the questions are: how does the phone reach the computer, how does the session survive you putting the phone away, and what app do you look at.

Step 1: reach your computer from anywhere with Tailscale

Your computer sits behind home Wi-Fi or an office network. The old way in was port forwarding on your router, which opens SSH to the whole internet. Don't. Use Tailscale: install it on the computer and the phone, sign both into the same account, and each device gets a private address (100.x.y.z) that works from any network, encrypted with WireGuard, with nothing exposed publicly. The personal plan is free for up to 100 devices.

On a Mac you also need SSH itself switched on: System Settings › General › Sharing › Remote Login. On Linux, install openssh-server. Our Tailscale SSH guide walks through both, including keys and MagicDNS names.

Step 2: keep the session alive with a multiplexer

A phone connection drops constantly: you lock the screen, switch apps, walk out of Wi-Fi. If Claude Code is attached directly to that connection, it dies with it. A terminal multiplexer runs your sessions on the computer independently of any client, so you can disconnect and come back to exactly where things were.

Two good choices:

  • tmux. Installed everywhere, decades old, rock solid. Start Claude Code inside a tmux session and reattach later.
  • Herdr. A newer multiplexer built around coding agents. It knows which pane runs which agent and whether that agent is working, blocked on a question, or done, and it exposes that through a CLI and socket API. That's what makes phone notifications and a native pane list possible. Install with curl -fsSL https://herdr.dev/install.sh | sh or brew install herdr.

We wrote a longer tmux vs Herdr comparison. Short answer: tmux if you already live in it, Herdr if you run more than one agent and want to know which one needs you.

Step 3: pick the phone app

All of these connect to the same computer over the same Tailscale address. They differ in how much they understand about agents.

A plain SSH client (Termius, Blink, Prompt)

Works today with any multiplexer. You get a terminal, and everything else is up to you: no notifications when Claude asks for permission, and you drive tmux or Herdr with key chords on a phone keyboard. Fine for a quick check, tiring for a working session. Termius is free with a local vault and $10/month (billed yearly) for sync across devices; Blink Shell is $19.99/year after a trial and adds Mosh, which keeps a terminal usable on bad networks.

Moshi

Moshi is the most complete agent-aware terminal on iOS and Android. It supports tmux, Zellij and Herdr, Mosh and SSH, voice input, a diff viewer and Apple Watch approvals. Agent features need its moshi-hook helper running on the computer. Free to start, Pro is $7.99/month or $69.99/year on the US App Store. We compared it with our own app in Moshi vs Melta.

Melta (ours)

Melta is built only for Herdr and takes the phone-first route: your workspaces and panes become a native list, each pane opens full-screen, and a Jump To screen groups agents by needs you, working and done. Claude Code and Codex show as a chat, read from their own session logs, with a terminal one tap away. Setup is one pasted command that adds the phone's key, installs Herdr and the notification plugin. It's coming soon to the App Store and Google Play, so if you're reading this before launch, the other options are the ones you can install today.

Anthropic's Remote Control

Since early 2026, Claude Code itself can be steered from the Claude mobile app or claude.ai/code. Run claude --remote-control (or /remote-control inside a session) and the session appears in the app; messages, permission prompts and even photos sync both ways, while everything still runs on your machine. It needs a Pro, Max, Team or Enterprise subscription; API keys aren't supported. The limits, from Anthropic's docs: the claude process must keep running, each interactive session supports one remote connection, some commands are terminal-only, and it only covers Claude Code. If you also run Codex, or want to see your shells and dev servers, you still need one of the apps above. It's the zero-install option, and for many people a good enough one.

The day-to-day loop

  1. At the desk: start Herdr (or tmux), open a pane per project, start claude in each.
  2. Leave. The agents keep working on the computer.
  3. A notification says an agent needs you. Open it, read the question, allow or answer.
  4. Back at the desk, everything is where you left it. Nothing ran on the phone.

Things that bite

  • The computer sleeps. A sleeping Mac is off the network; nothing can wake it remotely. On a Mac, turn on Prevent automatic sleeping on power adapter when the display is off (System Settings › Battery › Options on recent macOS) and keep it plugged in. Or run caffeinate in a spare pane.
  • Folder trust. The first time Claude Code opens a folder it asks whether you trust it. That prompt appears in the terminal, so answer it before you leave, or you'll be answering it from the phone.
  • Permissions. Every Allow? prompt blocks the agent. Either answer them from the phone as they arrive, or set the permission mode to something you're comfortable with for unattended runs. Read Anthropic's permissions docs before turning anything off.
  • Android kills background apps. Most Android phones freeze an app within seconds of switching away, which drops SSH. Apps that keep a foreground service survive; for the rest, expect a reconnect on return.

FAQ

Claude Code on my phone isn't working. Where do I start? Nine times out of ten it's the connection, not Claude: the computer is asleep, Tailscale is off on one side, or the key isn't installed. Work through Fix SSH from your phone first.

Can I control Codex CLI from my phone the same way? Yes. Codex runs in a pane like Claude Code, Herdr detects it, and Melta and Moshi both show it. Anthropic's Remote Control is the only option here that's Claude-only.

Does Claude Code work on Android? Not on the phone, but you can drive it from Android the same way as from an iPhone: SSH client or Moshi (both platforms), Melta (both platforms at launch), or the Claude Android app's Remote Control.

Do I need Mosh? No. Mosh keeps a terminal responsive on patchy connections and survives network switches. Over Tailscale, plain SSH usually survives a Wi-Fi to mobile handover too; you notice the difference mainly on trains and in lifts. See mosh.org.

Is any of this safe? Tailscale exposes nothing publicly. SSH with keys, not passwords. The agent has exactly the access it has at your desk, no more, so the real question is which permissions you grant it while you're not watching.

Sources