Two-way, not just notified
Reply to Claude from the couch, the coffee line, the other side of town. Your message resumes the exact session on your Mac — and Claude’s answer comes back as a push.
Claude Code Notifier sends Claude’s questions to your iPhone — approve permission requests, deny with a reason, and keep the conversation going, right from your lock screen. End‑to‑end encrypted, always.
A real permission round trip: Claude asks on the Mac, you answer from the lock screen, the command runs.
Version 2.0 turns notifications into conversations. Your phone isn’t just informed anymore — it has a say.
Reply to Claude from the couch, the coffee line, the other side of town. Your message resumes the exact session on your Mac — and Claude’s answer comes back as a push.
Permission requests arrive as actionable notifications: approve (with authentication), deny, or deny with a reason Claude actually reads. First answer wins — Mac or phone.
Every event is sealed with ChaCha20‑Poly1305 before it leaves your Mac. The key travels exactly once — inside the pairing QR code. The server only ever sees ciphertext.
At your desk? You get a quiet local banner. Screen locked, or idle past a threshold you set? It goes to your phone instead. Nothing ever pings you twice.
Run as many Claude Code sessions as you like, across any number of projects. Each becomes a clean timeline on iOS: prompts, permissions, results, in order.
Built on Claude Code’s own hook system — no shell wrapper, no PATH tricks. If the app isn’t running, hooks fail open and Claude Code carries on untouched.
Set hours where pushes stay silent — suppressed on the Mac and the phone alike. Morning-you can review what late-night Claude got up to.
The relay is a single Cloudflare Worker. Use ours, or wrangler deploy your own — the pairing QR carries the API address, so your devices follow automatically.
From install to answering Claude across town in under two minutes.
A menu bar app that configures Claude Code’s native hooks in one click. It runs a local server on 127.0.0.1 that the hooks talk to — nothing leaves your Mac unencrypted.
Open the iOS app and scan the pairing code on your Mac. The encryption key rides along inside the QR itself — pairing completes without anything sensitive touching our servers.
Approve permissions, deny with feedback, and answer Claude’s questions from your phone. Your reply resumes the session on the Mac, and the results push right back.
Claude Code Notifier uses a blind-relay architecture: everything content-bearing is encrypted on your Mac and decrypted on your iPhone. The relay in between stores and forwards ciphertext — that’s all it can do.
An encrypted blob, a timestamp, and a coarse category (permission, attention, complete, info) used only to route the push. Nothing else.
Touch a server. It’s generated on your Mac at pairing time and delivered to your iPhone inside the QR code — a straight line between your two devices.
A ring buffer of your last 1,000 encrypted envelopes, hashed auth tokens, and push routing info. Old events are overwritten, not archived.
Everything. The backend is open for self-hosting on your own Cloudflare account — then no third party is involved at all. Read the full privacy policy.
The Mac app is free, full stop. The iOS app is free to pair and receive everything — Pro removes the daily cap on responding remotely.
Free
Homebrew or direct download
Free / Pro $2.99 per mo
Free includes 3 remote responses per day
The honest fine print — no hedging.
No. Hooks are local HTTP calls to 127.0.0.1 with timeouts of five to ten seconds, and they run alongside Claude’s work, not in front of it. The only hook that waits is a permission request — and it’s waiting for you, which it would be doing in the terminal anyway.
Nothing breaks. The hooks fail as non-blocking errors, and Claude Code continues exactly as if the notifier had never been installed. The integration is fail-open by design — the app can never hold your session hostage.
Ciphertext envelopes, timestamps, a coarse category used for push routing (permission / attention / complete / info), hashed auth tokens, and the APNs token needed to reach your phone. Prompts, code, tool inputs, file paths, and Claude’s responses are all inside the encrypted blob. The key never transits the server, so there is no “trust us” — there’s nothing to trust us with. Full details in the privacy policy.
One Mac app tracks any number of concurrent Claude Code sessions — each shows up as its own timeline on iOS, and permission requests are matched to the right session automatically. Using several Macs? Each one maintains its own pairing and its own encryption key; scan each Mac’s QR code from the same phone.
After the remote decision window (about nine minutes by default) the request quietly defers back to the normal Claude Code dialog in your terminal, and your phone gets a heads-up that a session is still waiting. Nothing is ever auto-approved on your behalf.
Not currently — the official companion app is iOS-only. The wire protocol is documented and the backend is self-hostable, so a third-party client is technically possible, but we don’t ship one today.
Yes. The relay is a single Cloudflare Worker with one Durable Object per account — wrangler deploy and you’re done. The pairing QR code carries the API base URL, so both apps point at your relay automatically after you pair. Self-hosting guide.
No. Claude Code Notifier is an independent project by touchtap. It is not affiliated with, endorsed by, or sponsored by Anthropic. Claude is a trademark of Anthropic, PBC. It integrates with Claude Code through its public, documented hooks system.