Symptoms
The AI assistant logs a force-quit on a drifting app, but the app is still on screen. Or it briefly disappears and immediately reopens. The drift log shows repeated quit attempts.
Apps that resist force-quit
- System-protected apps under SIP (System Integrity Protection) — these can't be killed by a user-space helper.
- Apps with their own watchdog process that re-launches them on death (Steam, certain VPN clients, some Electron apps).
- Apps that ship a kernel extension or driver — the visible app dies but the daemon respawns it.
- Browser tabs inside a browser that itself isn't on the block — the AI can only act on the whole app, not individual tabs without the browser extension.
Workaround: manual block list
Adding an app to a block's manual items list uses a stronger termination path than the AI's drift-quit. The daemon enforces it continuously rather than reactively, which usually wins the race against watchdog respawn.
- 1. Edit the block → Apps → add the resistant app by name or bundle ID.
- 2. Save. The daemon re-applies rules within 2 seconds.
- 3. Restart the block to force a clean enforcement cycle.
Do not add macOS system apps (Finder, WindowServer, loginwindow, etc.) to a manual block list. Blocking them mid-session can wedge your login session and force a reboot. The app refuses obvious system bundle IDs but the safety net is not exhaustive.
For browser-tab drift, install the browser extension — it terminates individual tabs without needing to quit the browser itself.
Still stuck? Contact support at hi@focusdragon.app with the app name and a screenshot of the drift log showing the repeated quit attempts.