Under SDK or stream-json hosts, a pending permission request triggers your Notification hook after six seconds.
What's wrong with this entry?
When 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.
- Covers both regular tool-permission requests and the WebFetch domain-approval request.
- The timer is cancelled the moment the request resolves or rejects, in both the success and failure paths.
- Neither the helper nor the environment variable existed in the previous build.
` Claude needs your permission to use ${r} `
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.229
Repositories can declare that all hooks are off
Both mention disable hook
-
v2.1.242
Managed hook skip message now says SDK callback hooks still run
Both mention disable hook