Allow plugin monitors to opt out of the exit confirmation prompt
Summary
Plugin monitors (monitors/monitors.json) are session-scoped: they start with the session and stop when it ends. Exiting a session with an active monitor currently triggers a confirmation prompt:
Background work is running
The following will stop when you exit:
shell · <monitor description>
❯ 1. Exit anyway
2. Stay
For monitors, the monitor stopping is the expected behavior on exit. The prompt adds a friction step on every session exit when a plugin includes an always-on monitor.
Proposal
One of:
- Per-monitor
silentExit: truefield on entries inmonitors/monitors.json— opts that monitor out of the prompt. - Global
suppressBackgroundExitConfirmationsetting — less ideal because it would also affect Bash background tasks.
Option 1 is preferred: the plugin author declares intent at config time. Other long-running work keeps the existing prompt.
Context
Use case: a plugin runs a mailbox-watcher monitor that delivers cross-agent messages to Claude as monitor lines. The monitor's lifetime is exactly the session's lifetime — nothing to preserve on exit. The confirmation is the only friction point.
Related
- #18544 — different problem (completion-notification token waste) but in the same area.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗