Under the hoodTier: how much it should matter to you
2Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
HooksArea: what it touches
Internal ChangesKind: in v2.1.277,
Internal ChangesSection of the release
What
Every model call now passes through a new wrapper that checks whether a prompt.attachment hook (code a plugin can use to modify text attached to a message) is active, and if so runs resolveAttachments on the outgoing messages first.
A new settingsHooksOff option can be set on a session or subagent to fully disable hooks, similar to how isolated agent contexts already skip them. It's checked throughout isolation and hook-invocation logic, including permission checks, and it also disables the new attachment-hook resolution step.
Why
This makes sure a prompt.attachment hook reliably runs before every model call, while giving Claude Code a clean way to run a session or subagent with hooks turned off entirely when that's needed.