Python utility package for building Claude Code hooks
github.com
github.com
Feeding the reason back into Claude's context could break that cycle much faster.
One question for the author: when several hooks fire, does Claude get all the denial reasons concatenated, or does the first deny win?