Feature request: actionable Approve/Deny on mobile push for permission prompts

Open 💬 2 comments Opened May 26, 2026 by JamesPhillips-ASI

Use case

When Claude Code prompts for permission on a gateway action (e.g. Bash like cd X && git ... flagged for untrusted hook risk), the session blocks at the terminal 1. Yes / 2. No prompt. If I've stepped away from the Mac, the only options are:

  1. Walk back to the desk.
  2. --dangerously-skip-permissions — which I won't do, because the prompt is the audit point I actually want.

Remote Control + mobile push notifications close half the gap: my phone tells me a decision is needed, but I still have to be at the keyboard to answer. The push notification has no actionable buttons, and claude.ai/code mirrors the same blocking prompt rather than offering approve/deny.

Ask

Native Approve / Deny actions on the mobile push notification (or in the Remote Control web UI), wired into the same permission mechanism:

  • Server-signed token tied to the specific pending prompt
  • Default-deny on timeout
  • Optional per-command policy (allowlist / denylist patterns) configurable in settings.json

Closes the loop without weakening the security model.

What I built as a workaround

A PreToolUse hook on Bash → local FastAPI server → ntfy actionable push → Tailscale callback. ~200 LOC, works, but:

  • Every Claude Code user who hits this either does the same custom build or quietly flips --dangerously-skip-permissions.
  • The hook itself has a chicken-and-egg problem: it must default-deny on unreachable backend (otherwise it's a footgun), but that means a crashed server silently bricks every gateway Bash call until the user notices and disables the hook.
  • ntfy.sh (the obvious push channel) sees command text in the clear, so self-hosting is needed for anything sensitive — another build step.

A built-in solution avoids all three.

Optional but related

An explicit "this session is awaiting permission" signal in the API/SDK so external schedulers can route around blocked sessions, rather than treating a stalled prompt as a still-running task.

Environment

  • Claude Code on macOS terminal, v2.x
  • Mobile: iOS Claude app + Remote Control enabled
  • Use case context: financial controller running multi-hour reconciliation/build sessions where stepping away from the desk is normal

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗