Drive Claude Code From Your iPhone
The exact, copy-paste steps to run a real Claude Code session on your computer and steer it from your phone — including the part everyone needs: how to get back in after you close the app.
Six steps
Short answer: install the right version, start claude remote-control on the computer, scan its QR code with the Claude iPhone app's Code tab, and type. Full detail follows below; this is the spine.
- On the computer — check the version. Run
claude --version; you need v2.1.51 or newer. If older, update first. - On the computer — sign in with your plan. Run
claude /loginand choose your claude.ai account (Pro/Max/Team/Enterprise) — not an API key. - On the computer — trust the project once.
cdinto the folder, runclaude, accept the workspace-trust prompt, then exit. - On the computer — start Remote Control. Run
claude remote-control, then press the spacebar to show a QR code. - On the iPhone — connect. Open the Claude app, sign in with the same account, tap the Code tab, and scan the QR code.
- On the iPhone — turn on pings. Allow iOS notifications, then on the computer run
/configand enable "Push when Claude decides."
Jump straight to: how to get back in after you close the app →
What you are building
You are going to leave a Claude Code session running on your computer and point your iPhone at it. The model keeps working inside your real project — your files, your MCP servers, your scripts, your environment — and the phone becomes a window onto that session. Your code never leaves the machine. This mechanism is called Remote Control, and it is a built-in, official feature of Claude Code — not a hack and not a third-party tool.
Two things are true and worth fixing in your head before you start:
- The work runs on the computer, not the phone. The computer must stay awake (sleep is usually fine — see limits). The phone is a remote control, like a TV remote: turn it off and the show keeps playing.
- Closing the Claude app does not end the session. This is the single most important fact, and the reason the "get back in" section below exists.
Requirements — check these first
Five things. Confirm each before you try to connect; skipping one is the usual reason a connection silently fails.
1. The right version of Claude Code
Remote Control needs Claude Code v2.1.51 or newer. Check it:
# on the computer
claude --version
If the number printed is below 2.1.51, update Claude Code, then check again. (Push notifications, step six, need v2.1.110+ — a slightly newer build. If your push doesn't appear, the version is the first thing to check.) Version-specific behavior changes quickly; confirm against the Remote Control docs.
2. A subscription plan — not an API key
Remote Control is for accounts signed in through claude.ai on a Pro, Max, Team, or Enterprise plan. An ANTHROPIC_API_KEY will not work for this feature. Sign in with:
# on the computer
claude /login
When prompted, choose your Claude account (claude.ai), not "API key." You can confirm you're on a subscription login at any time with /status inside a session.
3. Workspace trust accepted once
Claude Code will not act in a folder you haven't trusted. cd into your project and run claude once; accept the workspace-trust prompt when it appears, then exit. You only do this the first time per project.
# on the computer
cd ~/path/to/your-project
claude
# accept the "Do you trust the files in this folder?" prompt, then /exit
4. The Claude app on your iPhone
Install the official Claude app from the App Store, open it, and sign in with the same account you used in step two. You need iOS 17 or newer and the latest version of the app. (The same flow works on iPad and Android; this guide is written for iPhone.)
5. (Team / Enterprise only) Remote Control enabled by an admin
On a personal Pro or Max plan there is nothing extra to do. On Team or Enterprise, a workspace admin must have Remote Control enabled in the Claude Code admin settings. If your session never becomes reachable and you're on a managed plan, ask your admin to check this.
Start Remote Control on the computer
There are three ways to make a session reachable from your phone. Pick one. The first is the cleanest for phone-only driving.
Way 1 — dedicated server mode (recommended)
From inside your project folder, run:
# on the computer, in your project folder
claude remote-control
This starts a session in server mode. Press the spacebar to display a QR code in the terminal (it also prints a session URL you can open instead). Leave this terminal open — it is the session. You can name it so it's easy to spot in the phone's list:
claude remote-control --name "My Project"
Way 2 — open a session you're already in
If you're already working in a normal Claude Code session at the keyboard and want to hand it to your phone, just type the slash command:
# inside an existing Claude Code session
/remote-control
It opens the current session to remote access and shows a QR code right in the conversation. Everything you'd already typed stays; the phone picks up the same live session.
Way 3 — start a normal session that's also reachable
Launch a regular interactive session that is simultaneously available to the phone:
claude --remote-control "My Project"
You work at the keyboard as usual and it shows up on the phone.
Make every session reachable, always
So you never have to remember to flip it on, turn it on once globally:
# inside any session
/config
# enable: "Remote Control for all sessions"
With that enabled, every interactive session you start is reachable from the phone by default — which also makes the "get back in" steps below far simpler. Recommended.
| Command | What it does |
|---|---|
claude remote-control | Server mode. Press space for the QR code. Best for phone-first. |
/remote-control | Opens the session you're already in; QR shown in the conversation. |
claude --remote-control "Name" | A normal keyboard session that's also reachable from the phone. |
/config → all sessions | Makes every session reachable by default. Set once. |
Connect from the iPhone
With a session live on the computer, open the Claude app on your iPhone and tap the Code tab in the bottom navigation. Then do any one of these:
- Scan the QR code shown in your terminal — the session opens immediately. (This is the fastest path the first time.)
- Open the printed session URL — the terminal prints a link alongside the QR code; tap or paste it into the app or Safari.
- Pick it from the list — reachable sessions appear in the Code tab with a small computer icon and a green dot when your machine is online. Tap it.
Once connected, you type steering messages exactly as you would at the keyboard — "run the tests," "try a different approach," "review line 47." Typing @ auto-completes file paths from your actual local project. Edits, comments, and approvals stay in sync across the terminal and the phone in real time, so you can hand off mid-task in either direction.
How to get back in after you close the app
Quitting the Claude app does not end your session. The session lives on the computer; the phone is only a window. Closing the app, locking the phone, or switching apps changes nothing on the computer side — the work keeps running. Here is exactly how to return.
If the computer is still running the session (the normal case)
- Reopen the Claude app on your iPhone.
- Tap the Code tab.
- Tap your session in the list — it shows a computer icon and a green dot when the machine is online. Your full history is back, right where you left it.
Or, even faster: open your claude.ai/code bookmark in Safari and sign in — the same session is listed there too.
If the session is not in the list
That means the session actually ended — the terminal was closed, the computer shut down, or a long network outage timed it out. The history of that session is gone, but starting a fresh one takes seconds. On the computer:
# on the computer, in your project folder
claude remote-control
# press SPACE for the QR code, then re-scan from the Code tab
Then scan the new QR code from the app's Code tab, exactly as you did the first time.
Make "getting back in" effortless next time
- Bookmark claude.ai/code on your iPhone home screen for one-tap access.
- Turn on "Remote Control for all sessions" (
/configon the computer). Then any session you start is reachable — you never have to remember to flip it on, and it's always waiting in the Code tab. - Keep the computer awake while you're away (caffeinate / power settings), so the green dot stays green.
Push notifications — so it pings you
By default, Claude Code asks before editing files or running commands. With push on, those prompts — and "I'm done" / "I need a decision" — come straight to your iPhone, and you approve or deny right in the Code tab. Push requires Claude Code v2.1.110 or newer.
Turn it on
- Install the Claude app and sign in with the same account as the CLI. (Opening the app is also what registers your phone for push.)
- Allow iOS notifications for the Claude app when prompted (or in iOS Settings → Notifications → Claude).
- On the computer, run
/configand enable "Push when Claude decides."
From then on the phone buzzes when a long task finishes, when Claude needs a decision, or when you ask it to ("notify me when the tests pass").
/config says "No mobile registered," opening the app registers it. Then check iOS Focus mode and Settings → Notifications → Claude. A delayed push almost always traces to the token or Focus, not to Claude Code.Honest limits & troubleshooting
So nothing surprises you at 2 a.m.:
- The computer must stay awake. Closing the terminal or shutting the machine down ends a Remote Control session. Brief sleep is generally fine; a laptop lid-close that suspends networking is not.
- Auto-reconnect on sleep. If a laptop sleeps and wakes, the session reconnects on its own — you don't have to restart.
- ~10-minute network-drop timeout. A network outage longer than about ten minutes ends the session. When that happens, just restart it on the computer (
claude remote-control) and re-scan. - Interactive pickers don't work from mobile. Commands that open a terminal chooser —
/mcp,/plugin,/resume— can't be driven from the phone. Text commands like/context,/usage, and/compactwork fine. - Push delayed or missing? Open the app to refresh the token; check iOS Focus and the Claude app's notification settings; confirm you're on v2.1.110+.
- "No mobile registered"? Open the Claude app once (same account) — that registers the phone.
- Subscription, not API key. If sign-in used an API key, Remote Control won't appear. Re-run
claude /loginand choose the claude.ai account. - Small screens. Great for steering and approving; large multi-file diffs are simply harder to read on glass than on a monitor.
Version-specific details move quickly — check the canonical docs: code.claude.com/docs (Remote Control) and platform.claude.com/docs.
Alternatives — and when to use them
Remote Control is the answer for "drive the session on my desk from my phone." Two other native paths exist for different needs:
| Path | Use it when |
|---|---|
| Claude Code on the web claude.ai/code | You want the work to run in Anthropic's cloud with your computer off. Each task gets an isolated cloud VM and git branch; needs a connected GitHub repo. Best for parallel tasks and repos you haven't cloned locally. |
| Claude Dispatch (macOS only) | You're on a Mac and want to delegate tasks from your phone to your Mac inside Claude Cowork. Real, but Mac-only. |
claude --teleport <session-id> pulls a running cloud (web) session down into your local terminal. The reverse — pushing a running local CLI session up to the web mid-flight — isn't seamless yet.For per-device steps across iPhone, iPad, Android, web, and desktop — and a fuller treatment of all three paths — see Claude on any device →
Sources
Everything here traces to Anthropic's own documentation. Version-specific details move quickly — verify against the originals before relying on them:
- Remote Control — continue local sessions from any device
- Use Claude Code on the web
- Claude Code on the web — quickstart
- platform.claude.com/docs — the canonical reference
The whole library: Guide · Start · Cookbook · Devices · Videos · Sources · News