You'll noticeTier: how much it should matter to you
3Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
HooksArea: what it touches
ImprovementsKind: in v2.1.314,
ImprovementsSection of the release
What
A hook is a script you configure to run at certain moments. The PermissionRequest hook runs when a tool call, an action Claude wants to take, needs a permission decision. A headless run is one with nobody at the screen, such as a script or automation.
In a headless run, when an action is one that only a person can approve and no approval prompt can be shown, Claude Code now ignores an allow answer from a PermissionRequest hook. It skips that hook and carries on. Before, an allow from the hook was always accepted. A deny from the hook works as before.
Why
This stops a hook from automatically approving actions that are meant to need a human, in runs where no human can be asked. If your automation relied on a hook allowing such an action, it will no longer be approved that way.