The native iPhone app is a full Code workbench - create sessions, plan, diff, PR, terminal, files, and an offline outbox. Live Activities and widgets keep limits and progress in reach; Apple Watch handles approve / interrupt. Continuum Voice is a system keyboard for any text field.
São Paulo
sp-1
Six tabs on session detail: Chat, Plan, Diff, PR, Terminal, Files. Create sessions from the Code tab, pin provider, model, and effort, and steer mid-run. Tabs appear only when they have something in them - Plan when a plan exists, Terminal when a pane is running, Files when the agent wrote artifacts - and the phone remembers which tab you were on per session, so reopening a session drops you back into the diff you were reading.
Plan mode is a real gate here, not a preview: the agent proposes, you read the steps on the phone, and nothing touches the repo until you tap Approve. Same loop as Claude Code plan mode, minus the terminal. Diff shows the worktree's changes per hunk, PR carries live GitHub state, and Terminal is a real PTY with a keyboard accessory row for the keys a phone keyboard lacks.
Networks on a train are not networks. Every write - send, approve, interrupt, model change, merge - goes through a command outbox. The composer clears the instant you tap send, the envelope queues, and retries walk a backoff of 1s, 4s, 15s, 60s, 5min, 30min before parking for a manual retry. Each envelope carries an idempotency key, and the host replays the original receipt instead of re-running the work, so a flaky connection can't double-send a prompt or merge a PR twice.
Same session pool as Mac and web - start on the train, merge from the desk. Your device and repo picks stick across disconnects and relaunches, so a Mac that briefly slept doesn't move the next session to a different machine. See Sessions, Code, and parallel Claude Code sessions.
The watch app is a Crown-scrollable session list plus a detail screen with three buttons that matter: Approve, Interrupt, Voice reply. Swipe sideways through full provider limit pages - one per provider, same numbers the Mac shows - and put a complication on the face for glance status. Sessions carry city names rather than branch hashes because a 40mm screen has room for "São Paulo" and not for feat/parse-actor-isolation-2.
State reaches the wrist from your iPhone, latest-wins, with a queued fallback when the watch is out of range. So a plan that went ready while you were in a meeting is waiting on the complication when you look down. If you're used to checking quota by rerunning a command, how to check your Claude usage limit covers what those numbers mean.
The watch is a control surface, not an IDE. Deep diff review, transcript sharing, and composing long prompts stay on iPhone and Mac. Approving a plan from a wrist is worth doing; reading 14 hunks from one is not. See Widgets.
Four widget kinds ship, and they answer four different questions. Claude usage gives you the 5-hour session bar and the weekly bar. Provider usage does the same for any enabled provider. All providers stacks every one you've turned on in a single medium or large card. Spend shows cost today, this week, and this month across providers. Put them on the Home Screen, the Lock Screen, or in StandBy on a charging phone.
A Live Activity on the Lock Screen and Dynamic Island tracks how many Code sessions are active, so you can tell a busy fleet from a stalled one without unlocking. There's also a Control Center control that toggles Continuum Voice, which is what makes the Action Button work from a cold start.
Foreground updates happen in-process; deeper background refresh is a platform constraint we don't pretend away, and the widgets plus the Island still cover the daily glance path. Full spend history lives on Analytics, and checking Claude Code usage explains where the numbers come from.
claude · 5h
An agent that runs for eleven minutes while your phone is in your pocket is only useful if the phone tells you something worth reading when it finishes.
A finished turn notifies with the agent, the repo, how long it ran, and the same first-message summary you see in the sidebar. Not "a session finished." Tapping it opens that session, on the right tab.
Four sound packs, including transit-chime sets, so a done agent is audible without being a generic ping. Quiet hours default to 22:00 through 07:00: overnight runs finish silently and wait for morning.
Session rows animate from the real per-turn state a host publishes, not a coarse "running" flag. A row showing a data stream is streaming right now, even when the box is two continents away.
The Continuum Voice keyboard is a mic-only system keyboard - use it in Continuum or in any other app. Assign Continuum to the Action Button and one press starts dictation, another finishes it, even from a cold start. Set up a double Back Tap in Accessibility and two taps on the back of the phone do the same.
It ends when you do. Go quiet and the take closes on its own and delivers the text - no second press. The pause length is yours to set at 1.5s, 2.5s, or 4s, and it fails safe: if the audio signal isn't usable, it waits for a manual stop rather than guessing. A live pill shows the waveform while you talk, then the finished text before it lands in the field.
Dictation keeps running when you leave the app, with a Live Activity showing that you're recording and a stop control in the Dynamic Island. Finished text inserts at the keyboard, or falls back to the clipboard if the field moved out from under it. Same intent as the Mac's Option-hold: start a Code session or steer a running one without typing a novel on a train. More on Voice.
Email pairing / account mesh - signing in is how devices join your Continuum account. There's no separate pairing chore: sign in on the phone and your hosts are there. Scan a QR or paste a pairing URL for the direct-to-Mac path, where MagicDNS hostnames come first so the pairing target survives sleep, wake, and a Wi-Fi switch instead of pointing at a stale IP.
The connection reconnects on wake and on network change, and rotates relay endpoints when one stops answering. Push rides the same account mesh. More on Pairing.
Honest pricing: the app is free with your own keys - gauges, pairing, and the whole Code workbench on iPhone included. Continuum-hosted inference (Plus from $25/mo) is the only paid line, and it’s optional. Provider subscriptions stay yours.
Short answers here, long answers in the docs.
Something has to host agent compute - a Mac running Continuum, an enrolled Linux box, a Windows or Linux desktop running its own bundled daemon, or a Continuum Cloud runner. The iPhone is a full control surface onto whichever of those you pick. Once paired you can create, steer, approve, and merge entirely from the phone; you never need to open the Mac UI.
The app is free with your own keys - gauges, pairing, and the full Code workbench (managed sessions, plan/diff/PR ship path) on every platform. The paid line is Continuum-hosted inference: Plus, Max, and Ultra buy a weekly hosted budget. Provider subscriptions (Claude Max, Codex, etc.) are still yours, billed by those vendors.
Yes - an Expo Android twin tracks the same navigation and product tabs. Feature depth follows the shared mobile client; native iOS still owns Live Activities, Watch, and the deepest system hooks.
Composer and approve paths enqueue in the mobile outbox. Transient server and network errors retry with backoff; a 4xx that isn't a rate limit fails immediately rather than retrying forever. The host dedups by idempotency key, so a flaky network can't double-send or double-merge. Anything that exhausts its retries parks in the outbox pane with swipe-to-retry and swipe-to-cancel instead of vanishing.
Yes for reading and approving, and that's the honest scope. The Diff tab renders the worktree's changes per file and per hunk, the PR tab carries live GitHub state with a Merge action, and the Files tab previews artifacts the agent wrote. Staging individual hunks and long-form code editing stay on the desktop. The phone is where you decide; the desk is where you rearrange.
The same set the host supports: Claude Code, Codex, Cursor, Gemini, Grok, and OpenCode. The phone doesn't run any of them - it picks the provider, model, and reasoning effort, and the host spawns the real binary. Multiple accounts of the same provider are pinnable per session, so work and personal subscriptions never bill each other. See Providers and Accounts.
Download Continuum for Mac, sign in on iPhone - that's pairing. Then start Code sessions from anywhere. If you're comparing this against a hosted agent you message and wait on, read Continuum vs Devin; if you already live in the terminal, Claude Code in Continuum covers what the phone adds.