Remote Control: mobile push notifications never deliver despite paired/working session
Resolved 💬 3 comments Opened May 19, 2026 by JappeF Closed Jun 19, 2026
Summary: With Remote Control paired and working (the session can be driven from the phone), PushNotification reports "Mobile push requested" but the notification never arrives on the phone. Desktop/terminal notifications work normally.
Environment
- Claude Code on Windows 11 (win32), model Opus 4.7
- Remote Control: "Enabled for all sessions" via
/config - Mobile app signed in with the same Anthropic account as the CLI session
- Phone confirmed interactively connected — user actively sent session input from the phone during debugging
Expected: When PushNotification returns "Mobile push requested" and the suppression gates are clear, the notification reaches the phone.
Actual: Terminal notification delivers; mobile push never arrives. ~6 test sends across varied conditions, none received on the phone.
Ruled out during debugging
- Account mismatch — same account on app and CLI
- OS notification permission for the Claude app — already enabled
- Pairing — confirmed; user actively sends input from the phone
- Activity gate — retested while idle >60s
- Terminal-focus gate — retested with terminal defocused/minimized (observed message:
Not sent — terminal has focus. Terminal + mobile suppressed.) - Phone VPN — retested with VPN disabled; still no delivery
Notes / possible leads
- The mobile app has no "Remote Control" section; remote sessions appear under the "Code" tab.
- Interactive Remote Control works but push does not — interactive control and push delivery may use different transports, and only the push (APNs/FCM token registration) path appears to be failing.
Repro
- Pair a phone with a Claude Code session via Remote Control (confirm by sending input from the phone).
- Trigger a proactive notification while the terminal is unfocused and the user idle >60s.
- Observe "Mobile push requested" returned, but nothing arrives on the phone.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗