Documentation
Claude Code notifications and phone approvals
Choose a completion alert, a supported permission hook, or Claude Remote Control. Set up Ntfyx with clear version, platform and failure boundaries.
Updated
Choose the interaction you need
#For a simple “finished” alert, wrap a Claude Code command. For a supported permission decision, install the Ntfyx hook and review the request on your phone. To continue the whole Claude conversation from another device, consider Claude’s own Remote Control.
| Goal | Use | Scope |
|---|---|---|
| Know when a command exits | notify-after.sh + claude -p | Fixed status summary; output stays in the terminal. |
| Answer a tool permission request | Ntfyx PermissionRequest hook | Verified Linux x64 Bash / Edit / Write flow. |
| Continue a Claude session remotely | Claude Remote Control | Official phone/browser session interface; eligible account required. |
Before you start
#Install the current Ntfyx CLI (0.1.2) on macOS or Linux and use a compatible Ntfyx iPhone build (iOS 18.4 or later). The iPhone app is awaiting App Store review; installing the CLI alone does not give you a connected phone. Free includes one active Topic. Several sources can use that Topic; adding a source does not require another paid Topic.
- Display the fresh pairing QR on your computer. Keep the QR private.
- In the iPhone app, open Connect Topic, scan the QR, and create or choose a named Topic. Authorize this computer.
- Use Work as the local CLI alias in these examples, or replace Work with your configured alias.
curl -fsSL https://ntfyx.me/install.sh | bash
export PATH="$HOME/.local/bin:$PATH"
ntfyx version --json
ntfyx connect
ntfyx topicsUse your existing Claude Code setup
#This example needs Claude Code installed, authenticated and permitted to run the requested task. Claude Code usage is governed by your own account and plan. The -p option runs a prompt and exits. This wrapper observes the process exit; it is not a hook for every turn of an interactive chat.
Inspect the wrapper
#The same small wrapper used for shell notifications works with Claude Code. It sends only a generic completion status and preserves the command’s exit code.
curl -fsSLo notify-after.sh https://ntfyx.me/examples/scripts/notify-after.sh
cat notify-after.shRun a small task
#From a project whose README you are allowed to share with your configured Claude service, run this read-only request. Review any permissions requested by your Claude client under your normal policy. On process exit, Ntfyx sends Task finished or Task failed to Work.
bash notify-after.sh Work claude -p "Explain this project's README without changing files."Read the alert and return to your work
#Your iPhone displays the encrypted notification after delivery and local decryption. A phone-authorized browser can receive newly addressed messages too. Open the original terminal to read the answer. If no notification arrives, check CLI pairing, the warning in the terminal and phone notification settings.
Add native permission decisions
#Preview the changes, then apply them on the paired computer. Setup preserves unrelated configuration and registers local MCP tools plus lifecycle hooks. Use setup or the Ntfyx plugin, not both. A supported PermissionRequest waits up to 90 seconds for the signed answer inside a 100-second host hook timeout.
Existing deny rules still apply.
- Keep Claude running on the computer and let an ordinary task reach a permission request under your existing policy.
- Check the complete tool context on the phone. Allow authorizes that invocation once; Deny blocks it.
- On an unsupported request, timeout or verification error, return to the terminal. A late Allow cannot restart an ended invocation.
ntfyx setup claude-code --dry-run
ntfyx setup claude-codeWhen Claude Remote Control is a better fit
#Claude Remote Control continues a local session through the Claude app or browser, with mobile push options. The local computer and Claude process must stay running. Its current requirements include an eligible Pro, Max, Team or Enterprise subscription and Claude sign-in; API-key or custom API-endpoint setups are excluded.
Choose it when you want the full conversation. Ntfyx also carries ordinary script notifications and requests from other sources into named Topics.
What was verified
#These scripts were tested with the compiled CLI, a real local encrypted relay and signed replies from the Web Inbox. Phone authorization in that automated test used a programmatic identity. The screenshots show synthetic messages from that local Web test; they are not iPhone or APNs delivery evidence.
The wrapper was exercised with harmless shell processes; this tutorial test did not make a new paid Claude request. Separate real-host tests cover the versions and modes stated above. Ntfyx is not currently listed in the ChatGPT or Claude app directories.