Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.278 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.267 ·

Function-hook execution now supports a per-hook .catch handler and 'fail closed' recovery

Hooks can now supply a .catch handler to recover instead of failing closed

TierUse it nowhow much it should matter to you
Useful4my rating, 1 to 5
Signal3worth watching, 1 to 5
AreaHookswhat it touches
KindNew Featuresin v2.1.267,
Use it now

Hooks can now supply a .catch handler to recover instead of failing closed

What

When a hook (custom code that runs at specific points in Claude Code) throws an error or times out, the dispatch system now checks whether the hook supplied its own .catch handler. If it did, a new recovery path runs that handler and can use the answer it returns as the hook's final result, rather than simply failing. This is logged as "hook failed closed: ... (its .catch answered)" and reported through telemetry with a reason and a flag for whether the hook overran its time limit. A new "caught" outcome is now recorded for hooks handled this way.

Why

This lets hook authors define custom recovery behavior for failures or timeouts instead of the hook simply failing closed, giving more control over how errors in custom hooks are handled.

Read from
Names in the bundle.catch
What the documentation says

See this entry in the whole of v2.1.267 →