{"version":"2.1.304","anchor":"permissionrequest-hooks-can-deny-before-a-person-is-asked","canonical_anchor":"permissionrequest-hooks-can-deny-before-a-person-is-asked","heading":"Permission request hooks can refuse a tool before you are asked","tier":"use","area":"Hooks","scope":"both","heads_up":true,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.304\/e\/permissionrequest-hooks-can-deny-before-a-person-is-asked","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.304","markdown":"### Permission request hooks can refuse a tool before you are asked\n\nWhen a tool would ask for your permission, PermissionRequest hooks can now run first and turn that question into a refusal\n\n**What**\n\nA hook is a command of your own that Claude Code runs at set moments. When a tool call (an action Claude wants to take) would stop to ask for your permission, Claude Code can now run your `PermissionRequest` hooks first, when hooks are allowed to refuse. If a hook denies the call, the question becomes a refusal, and the hook can also ask to interrupt Claude. This step is skipped for remote execution and served calls.\n\nThe message shown when a hook asks for a prompt that is not shown now says \"a hook\" rather than naming a `PreToolUse` hook.\n\n**Why**\n\nA hook can now stop a permission prompt before it reaches you, so a blocked action never needs your attention.\n\n- Area: Hooks\n- Names: `PermissionRequest`\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 3\/5\n- Scope: both\n- Heads-up: yes"}