hook_scopes
Where hooks can be configured and the precedence model when multiple scopes define hooks for the same event. Common scopes: global/user, project, workspace, managed/enterprise.
Type: object Content type: hooks
Provider Support
Section titled “Provider Support”| Provider | Supported | Mechanism |
|---|---|---|
| claude-code | ✓ | Six scopes: user (~/.claude/settings.json), project (.claude/settings.json), local (.claude/settings.local.json), managed policy, plugin (hooks/hooks.json), component frontmatter |
| cline | ✓ | global_and_project_hooks: Cline supports global (user-wide) and project-level hook configuration |
| codex | ✓ | hook_scope: Codex hooks can be scoped to global/user or project configuration |
| cursor | ✓ | Project-scope hooks live under .cursor/hooks/ and are wired through .cursor/settings.json; user-global hooks live under ~/.cursor/ using the same shape. |
| windsurf | ✓ | three_config_scopes: global (user-wide), workspace, and managed/enterprise hook configuration scopes |
| amp | ✗ | Project only: hooks live in a single 'amp.hooks' array inside '.amp/settings.json' (or user-scope settings); no multi-scope layering documented |
| copilot-cli | ✗ | Copilot CLI hooks are configured at a single scope level; no multi-scope configuration documented |
| crush | ✗ | not documented |
| factory-droid | ✗ | Factory Droid hooks are project-scoped; no multi-scope configuration documented |
| gemini-cli | ✗ | Gemini CLI hooks are project-scoped; no multi-scope configuration documented |
| kiro | ✗ | Kiro hooks are project-scoped; no multi-scope configuration documented |
| opencode | ✗ | not documented |
| pi | ✗ | Pi hooks are project-scoped; no multi-scope configuration documented |
| roo-code | ✗ | not documented |
| zed | ✗ | not documented |