Coding agents
Follow every Claude Code session on your computer from your iPhone, answer its permission prompts and questions there, and get a notification when it needs you.
The Agents tab and notifications are part of Code Remote Pro, and need a recent coderemote on the computer: run coderemote update and start coderemote up again if the app says so.
Set up
Once per computer, with Claude Code installed:
$ coderemote setup claude
This installs the Code Remote plugin into Claude Code (the same as /plugin install coderemote --marketplace CodeRemoteApp/coderemote inside Claude Code). Claude Code sessions you start afterwards, in a folder shared with coderemote up, show up in the app. Sessions already running appear after you restart them. To undo it: coderemote setup claude --remove.
The plugin does nothing when no coderemote is running, or when the session's folder isn't shared: Claude Code then works exactly as without it.
Codex
Codex 0.139 or later works too:
$ coderemote setup codex
Then open Codex once, type /hooks and trust the Code Remote hooks: Codex runs a plugin's hooks only after you have reviewed them. Codex sessions show in the Agents tab labelled Codex.
One difference: Codex shows its own approval prompt only after the hook steps aside. So while you're using the computer (or have the machine open in the app), Codex asks in its terminal as usual and the app shows "Answer on your computer"; when you're away, the request waits for your phone, with a notification, for up to ten minutes before Codex asks in the terminal. Codex has no "always allow" from a hook.
The Agents tab
Lists the sessions on the machine, grouped into Needs You (waiting for an answer), Working, Idle and Ended; the tab shows how many need you. Open one to see what it did: your prompts, Claude's replies, and each tool it ran. Commands show with their output, file edits as the lines they change (tap for the whole change or the file), and reads open the file.
A session started in a terminal in the app has Open in Terminal, to type into it directly. Sessions you started on the computer show the same timeline.
Sessions live in coderemote's memory: stopping coderemote up clears the list, and ended sessions disappear after a day.
Answer from the phone
When Claude asks for permission to run something, or asks you a question, a card appears at the bottom of the session:
- Allow or Deny. The ⋯ menu has the same "always allow" choices Claude Code offers on the computer, and Deny with Message to tell Claude what to do instead.
- For a question, tap an answer, or Other… to type one.
The prompt stays open on the computer too. Whichever side answers first wins: answer at the computer and the card (and its notification) goes away on the phone. A prompt nobody answers from the phone within an hour is left to the computer.
Start and drive sessions
Tap + in the Agents tab to start a coding agent on the computer. Pick the Agent (Claude Code, or Codex once it's set up) and the Folder: it opens the shared folder, where you go into subfolders, filter them by name, and tap Use This Folder. Then:
- For Claude Code, a model and how it asks for permission (Ask First, Accept Edits, Plan Only or Auto).
- For Codex, a model from the ones Codex itself offers (Default is the one in Codex's config), and whether it may Ask before running outside the sandbox. Turned off, Codex refuses what its sandbox doesn't allow, without asking.
The session runs in a terminal of the app, so you can type to it from the session's message box:
- Write a prompt and send it; while Claude works, what you send waits its turn, as it would at the computer. Stop interrupts it (like Esc).
- + attaches photos, videos, files, a photo from the camera or a copied image. They go to
~/.coderemote/uploads/on the computer (outside your project, deleted after a week), and Claude sees images as images; for other files it gets their path. - The ⚡ menu has Next Permission Mode (Shift+Tab),
/compact,/clear,/modeland Open in Terminal (Codex has no permission modes to cycle and no/clear). In the terminal, Chat in the … menu comes back. - An ended session offers Resume Here, which continues the conversation in a new terminal.
A session you started in a terminal on the computer can be followed and answered here but not typed into, since it isn't the app's terminal; resume it here once it ends.
Notifications
Turn them on per computer in the machine's info (hold it in the machine list, or Machine Info in a tab's menu): Needs an answer and Finished a long task (one that took a minute or more), with a test button.
Long-press a permission notification to Allow or Deny without opening the app (after Face ID); a single question offers its answers the same way. Nothing is sent while you're using the computer (on a Mac) or have the machine open in the app.
How it works
The plugin runs coderemote hook for each Claude Code event (a prompt, a tool call, a reply, a permission prompt). It hands the event to the coderemote sharing the session's folder, on the same computer, authenticated by a secret that never leaves it. A permission prompt waits there for an answer from the phone while Claude Code shows its own prompt as usual.
Notifications go from your computer through a relay that adds the app's Apple push key; their content is encrypted for your iPhone, so neither the relay nor Apple can read it, and the relay keeps nothing. See the privacy policy.