{"version":"2.1.292","anchor":"hook-re-entry-handling-added-to-the-hooks-module-runtime","canonical_anchor":"hook-re-entry-handling-added-to-the-hooks-module-runtime","heading":"Plugin hooks are kept from setting themselves off again","tier":"notice","area":"Hooks","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.292\/e\/hook-re-entry-handling-added-to-the-hooks-module-runtime","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.292","markdown":"### Plugin hooks are kept from setting themselves off again\n\nThe hooks module now skips a hook that would run again inside its own plugin, and limits hooks that asked to catch errors to answering\n\n**What**\n\nA hook is a small piece of code that runs automatically when something happens in Claude Code. Plugins can supply hooks. The part of Claude Code that runs plugin hooks now protects against a hook running again while its own plugin is still busy:\n\n- A hook that would run again inside its own plugin is left out.\n\n- A hook that asked to catch errors is only told what happened, and may only reply.\n\n- There is new debug logging for these cases.\n\n- The `session.start` event now has a window in which a hook can still send its answer.\n\n**Why**\n\nThis stops a plugin hook from setting itself off over and over without end.\n\n- Area: Hooks\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}