Notification hook idle_prompt should also fire when AskUserQuestion is waiting for selection

Resolved 💬 1 comment Opened Apr 22, 2026 by cangenius Closed May 27, 2026

Problem

The Notification hook with idle_prompt matcher only fires when Claude is waiting for text input. It does not fire when Claude presents a multi-choice selection UI (e.g., from AskUserQuestion).

This means any idle reminder configured via hooks won't trigger when the user needs to pick an option — only when they need to type a response.

Current behavior

"hooks": {
  "Notification": [
    {
      "matcher": "idle_prompt",
      "hooks": [
        {
          "type": "command",
          "command": "bash /path/to/idle-notification.sh",
          "async": true
        }
      ]
    }
  ]
}
  • ✅ Fires when Claude finishes and waits for user text input
  • ❌ Does NOT fire when Claude presents a selection prompt (e.g., "Choose an option: 1. ... 2. ... 3. ...")

Expected behavior

idle_prompt should fire whenever Claude is waiting for any user interaction, including:

  • Text input prompts
  • Multi-choice selection prompts (AskUserQuestion)
  • Any other UI state where Claude is blocked on user response

Alternatively, provide a separate matcher (e.g., ask_user_question or waiting_for_selection) so users can hook into selection prompts specifically.

Use case

I have an idle notification that opens a browser reminder after 1 minute of inactivity, prompting me to switch back to the terminal. This works great for text prompts but completely misses selection prompts, which are equally important to respond to.

Environment

  • Claude Code on Windows 11
  • Using Notification hook with idle_prompt matcher
  • Settings configured in ~/.claude/settings.json

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗