Coding agents

Claude Code and Codex,
from your iPhone.

Nimlet tells your iPhone when Claude Code or Codex is waiting for you or has finished, and lets you allow or deny Claude Code’s shell commands from wherever you are. Your agents keep running on your own Mac.

What reaches your phone

EventClaude CodeCodexWhat you see
Waiting for youYesYesThe agent is about to show a permission prompt or ask a question. Your phone names the agent and what it wants, such as “Wants to run: npm test”.
FinishedYesYesA run has ended, so you can check the result or give the next instruction.
Approve a commandYesNoBefore Claude Code runs a Bash command, it waits for you to allow or deny it on your phone.

“Waiting” and “Finished” only tell your phone; the agent’s own prompt still appears on the Mac as usual. Optional encrypted push alerts reach you while Nimlet is in the background. An alert alone never approves anything.

Allow, deny, answer, or explain why not.

When Claude Code asks permission or asks you a question, your iPhone shows what it wants and the choices it offered. Tap Allow, or “don’t ask again”, and Claude Code carries on. Tap Deny, or Deny with a reason, and the reason goes back to Claude so it can change course instead of asking again. A question shows its options, or lets you type your own answer, and the answer goes back to the session that asked.

You set how long a question waits for your phone, up to twelve hours for a long run you only check now and then. If nobody answers, nothing is approved: Claude Code’s own prompt is still waiting on your Mac. Nothing runs on a guess.

Set it up once.

  1. Install and pair.

    Download the Mac companion, join the TestFlight beta and pair your iPhone on the same network. Pairing steps.

  2. Turn on the hooks you want.

    In the Mac companion, open Settings → Agents. Three switches add Nimlet’s entries to ~/.claude/settings.json and, if you use Codex, ~/.codex/hooks.json: waiting, finished and Claude Code command approval. Your other hooks stay as they were, and Nimlet keeps a copy of each file before its first change.

  3. Trust the hooks in Codex.

    Codex runs new or changed hooks only after you approve them. Run /hooks in Codex and trust Nimlet’s entries. Restart any agent sessions that were already running.

  4. Run your agents in tmux.

    A hook that fires inside a tmux pane reports against that pane, so the alert lands on the right target on your phone and you can answer from the same screen. Outside tmux, Nimlet uses the app the agent runs in.

Answer from the same screen.

Choose the agent’s pane as your target and reply by voice or keyboard. Quick replies start as continue, yes, run the tests and stop, and you can change them. Keys such as Esc, the arrows and Enter answer an agent’s own menus. The pane itself appears on your phone as live, sharp text. How tmux targets work.

Questions

Does Nimlet replace Claude Code’s permission settings?

No. The approval hook adds one more check before Claude Code runs a Bash command. Claude Code’s own allow and deny rules still apply, and you can turn the hook off in Settings → Agents at any time.

Can I approve Codex commands from my phone?

No. Codex tells your phone when it is waiting for you and when it has finished, but Codex’s hooks can stop a command without being able to approve one, so its approvals stay in Codex. You can still answer a Codex prompt from your phone by sending keys or text to its tmux pane.

Do I need to be on the same Wi-Fi as my Mac?

Only to pair. After that, turn on Away access on the Mac and Nimlet can reach it over a private VPN such as Tailscale, a direct route or Nimlet’s end-to-end encrypted connect relay. Your Mac needs to stay awake and running Nimlet. Remote access details.

Does Nimlet send my code or prompts to an AI service?

No. Nimlet includes no AI model. Hook messages travel from your Mac to your paired iPhone over an encrypted connection, and optional push alerts are encrypted on the Mac before they leave it. Read the privacy policy.

What happens if I miss an approval?

Nothing is approved. You choose how long a question stays answerable from your phone — from two minutes to twelve hours, ten by default — in Settings → Agents on the Mac. When that runs out, Claude Code’s own prompt is still waiting on your Mac. You can also answer from the Mac’s menu bar or with nimlet decide.

Try it on your own Mac.

The public beta includes agent alerts, approvals and remote access, with no purchase during testing.