{"version":"2.1.233","anchor":"notification-hook-fires-when-a-permission-prompt-is-left-una","canonical_anchor":"notification-hook-fires-when-a-permission-prompt-is-left-una","heading":"Notification hook fires when a permission prompt is left unanswered","tier":"use","area":"Hooks","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.233\/e\/notification-hook-fires-when-a-permission-prompt-is-left-una","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.233","markdown":"### Notification hook fires when a permission prompt is left unanswered\n\nUnder SDK or stream-json hosts, a pending permission request triggers your Notification hook after six seconds.\n\n**What**\n\nWhen Claude Code runs behind an SDK or `stream-json` host and asks that host for tool permission, a 6-second timer now fires your Notification hook with `notificationType: \"permission_prompt\"` and the message `Claude needs your permission to use <tool>`. It only fires if the request is still pending at 6 seconds, so answering promptly produces no notification. Set `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` to turn it off.\n\n**Details**\n\n- Covers both regular tool-permission requests and the WebFetch domain-approval request.\n- The timer is cancelled the moment the request resolves or rejects, in both the success and failure paths.\n- Neither the helper nor the environment variable existed in the previous build.\n\n**Evidence**\n\n`` `Claude needs your permission to use ${r}` ``\n\n- Area: Hooks\n- Names: `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS`\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 3\/5"}