{"name":"allowManagedHooksOnly","slug":"allowmanagedhooksonly","family":"setting","title":"Settings keys","noun":"settings key","description":"Run only the [hooks](\/docs\/en\/hooks) your organization deploys","description_source":"docs","described_by":{"doc":"claude-code\/settings-reference","title":"All settings"},"presence":{"first_seen":"2.1.138","removed_in":"2.1.284","in_current_build":false,"newest_mined":"2.1.308","builds":126,"mined_builds":149,"first_cited":{"version":"2.1.140","released_at":"2026-05-12 19:50:28","spans":7}},"aliases":[],"entries":[{"version":"2.1.300","anchor":"cowork-cloud-holds-on-managed-policy-settings","heading":"Cowork cloud keeps strict managed policy settings once they are set","line":"In Cowork cloud, once certain managed policy settings are tightened, a later settings update can no longer loosen them","released_at":"2026-10-14 14:27:26","reason":"found in this entry's text"},{"version":"2.1.295","anchor":"hooks-keep-running-from-user-settings-in-a-managed-hooks-onl","heading":"Your own hooks can keep running when disableAllHooks is set","line":"With `disableAllHooks` set, Claude Code can now still run hooks from your own settings under certain conditions","released_at":"2026-10-08 18:22:58","reason":"found in this entry's text"},{"version":"2.1.283","anchor":"new-claude-dev-mods-dir-placeholder-in-skill-prompts-bac","heading":"Skill text can use a ${CLAUDE_DEV_MODS_DIR} placeholder for a live session folder","line":"Claude Code replaces `${CLAUDE_DEV_MODS_DIR}` in skill text with a per-session folder and starts watching it for plugin changes","released_at":"2026-09-25 18:46:11","reason":"found in this entry's text"},{"version":"2.1.282","anchor":"invalid-managed-settings-keys-fall-back-to-their-restrictive","heading":"Invalid managed settings now fall back to their strict value in one consistent way","line":"Bad values in managed settings now fall back to the strict choice by one shared rule, and one bad `enabledPlugins` entry no longer voids the rest","released_at":"2026-09-24 15:56:22","reason":"found in this entry's text"},{"version":"2.1.282","anchor":"allowed-tools-in-skills-and-plugin-commands-ignored-under-al","heading":"Skills and plugin commands can no longer grant themselves tools under managed-only permission rules","line":"When policy restricts permission rules to managed settings, tool grants written into skills and plugin commands are ignored","released_at":"2026-09-24 15:56:22","reason":"found in this entry's text"},{"version":"2.1.280","anchor":"hooks-modules-plugin-tests-early-access-gate-and-messages","heading":"Hooks modules (plugin tests) early-access gate and messages","line":"Plugin hook tests now give a specific reason when they can't run: rollout off, or disabled locally","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text"},{"version":"2.1.280","anchor":"allowmanagedhooksonly-now-also-scopes-plugin-hooks","heading":"allowManagedHooksOnly now also scopes plugin hooks","line":"allowManagedHooksOnly setting now also restricts which plugin hooks can run","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text, named in this entry"},{"version":"2.1.280","anchor":"hooks-module-skip-reasons-now-surface-to-the-plugin-author-v","heading":"Hooks-module skip reasons now surface to the plugin author via a notification channel, not just debug logs","line":"Plugins are now notified directly when their hooks module is skipped, not just via a debug log line","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text"},{"version":"2.1.280","anchor":"new-hooks-modules-gate-condition-via-bj","heading":"New hooks-modules gate condition via BJ()","line":"A new internal check can force 'managed hooks only' mode even without the matching policy setting","released_at":"2026-09-22 15:44:39","reason":"found in this entry's text, named in this entry"},{"version":"2.1.271","anchor":"new-claude-plugin-test-cli-command-for-function-hooks-plug","heading":"New claude plugin test CLI command for function-hooks plugins","line":"New `claude plugin test` command runs a plugin's hook tests in a sandboxed environment that mimics the real runtime","released_at":"2026-09-14 19:45:19","reason":"found in this entry's text"}],"entries_total":25,"docs":[{"source":"claude-code","path":"settings-reference","title":"All settings","documented":true},{"source":"claude-code","path":"settings","title":"Claude Code settings","documented":true},{"source":"claude-code","path":"admin-setup","title":"Set up Claude Code for your organization","documented":false},{"source":"claude-code","path":"claude-apps-gateway","title":"Claude apps gateway for Amazon Bedrock, Claude Platform on AWS, Google Cloud, and Microsoft Foundry","documented":false},{"source":"claude-code","path":"desktop","title":"Desktop application","documented":false},{"source":"claude-code","path":"goal","title":"Keep Claude working toward a goal","documented":false},{"source":"claude-code","path":"hooks","title":"Hooks reference","documented":false},{"source":"claude-code","path":"hooks-guide","title":"Automate actions with hooks","documented":false},{"source":"claude-code","path":"managed-settings","title":"Deploy managed settings","documented":false},{"source":"claude-code","path":"monitoring-usage","title":"Monitoring","documented":false}],"docs_total":14,"gates":[],"related":[],"url":"https:\/\/changelogs.core-directive.com\/reference\/setting\/allowmanagedhooksonly","family_url":"https:\/\/changelogs.core-directive.com\/reference\/setting.json"}