{"version":"2.1.295","anchor":"hooks-keep-running-from-user-settings-in-a-managed-hooks-onl","canonical_anchor":"hooks-keep-running-from-user-settings-in-a-managed-hooks-onl","heading":"Your own hooks can keep running when disableAllHooks is set","tier":"notice","area":"Hooks","scope":"both","heads_up":true,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295\/e\/hooks-keep-running-from-user-settings-in-a-managed-hooks-onl","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295","markdown":"### Your own hooks can keep running when `disableAllHooks` is set\n\nWith `disableAllHooks` set, Claude Code can now still run hooks from your own settings under certain conditions\n\n**Unclear.** The internal condition that lets your own hooks keep running is not stated, so it is unclear when this applies to you.\n\n**What**\n\nHooks are commands Claude Code runs automatically at set points, such as before a tool is used. The `disableAllHooks` setting turns them off. Before, when it was set, Claude Code kept only the hooks your organization deploys.\n\nClaude Code can now load hooks from your other settings files too, when all of these hold:\n\n- An internal condition on your user settings passes.\n\n- `allowManagedHooksOnly` is not in force.\n\n- No settings source other than the one that turned on `disableAllHooks` also turns it on.\n\nClaude Code also now saves the hooks from your user settings for each session, and a hook entry can carry a `personal: true` marker.\n\n**Why**\n\nThis changes how `disableAllHooks` works across your different settings files. If you rely on it to stop every hook, check that your own hooks are not still running.\n\n- Area: Hooks\n- Names: `disableAllHooks`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5\n- Scope: both\n- Heads-up: yes"}