Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,26 @@
"statusMessage": {
"type": "string",
"description": "Custom spinner message displayed while the hook runs"
},
"if": {
"$ref": "#/$defs/permissionRule",
"description": "Only run this hook when the tool call matches this permission rule pattern. Only evaluated for tool events (PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest, PermissionDenied); silently ignored on all other events. See https://code.claude.com/docs/en/hooks"
},
"asyncRewake": {
"type": "boolean",
"description": "Run this hook in the background and wake Claude when the process exits with code 2 (implies async: true)"
},
"once": {
"type": "boolean",
"description": "If true, runs once per session then removed"
},
"shell": {
"type": "string",
"enum": [
"bash",
"powershell"
],
"description": "Shell interpreter to use (default: bash)"
}
}
},
Expand Down Expand Up @@ -95,6 +115,14 @@
"statusMessage": {
"type": "string",
"description": "Custom spinner message displayed while the hook runs"
},
"if": {
"$ref": "#/$defs/permissionRule",
"description": "Only run this hook when the tool call matches this permission rule pattern. Only evaluated for tool events (PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest, PermissionDenied); silently ignored on all other events. See https://code.claude.com/docs/en/hooks"
},
"once": {
"type": "boolean",
"description": "If true, runs once per session then removed"
}
}
},
Expand Down Expand Up @@ -129,6 +157,14 @@
"statusMessage": {
"type": "string",
"description": "Custom spinner message displayed while the hook runs"
},
"if": {
"$ref": "#/$defs/permissionRule",
"description": "Only run this hook when the tool call matches this permission rule pattern. Only evaluated for tool events (PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest, PermissionDenied); silently ignored on all other events. See https://code.claude.com/docs/en/hooks"
},
"once": {
"type": "boolean",
"description": "If true, runs once per session then removed"
}
}
},
Expand Down Expand Up @@ -174,6 +210,14 @@
"statusMessage": {
"type": "string",
"description": "Custom spinner message displayed while the hook runs"
},
"if": {
"$ref": "#/$defs/permissionRule",
"description": "Only run this hook when the tool call matches this permission rule pattern. Only evaluated for tool events (PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest, PermissionDenied); silently ignored on all other events. See https://code.claude.com/docs/en/hooks"
},
"once": {
"type": "boolean",
"description": "If true, runs once per session then removed"
}
}
}
Expand Down Expand Up @@ -677,6 +721,13 @@
"$ref": "#/$defs/hookMatcher"
}
},
"PermissionDenied": {
"type": "array",
"description": "Hooks that run when auto mode denies a tool call. See https://code.claude.com/docs/en/hooks",
"items": {
"$ref": "#/$defs/hookMatcher"
}
},
"Notification": {
"type": "array",
"description": "Hooks that trigger on notifications",
Expand All @@ -698,6 +749,13 @@
"$ref": "#/$defs/hookMatcher"
}
},
"StopFailure": {
"type": "array",
"description": "Hooks that run when a turn ends due to an API error. See https://code.claude.com/docs/en/hooks",
"items": {
"$ref": "#/$defs/hookMatcher"
}
},
"SubagentStart": {
"type": "array",
"description": "Hooks that run when a subagent is spawned",
Expand Down Expand Up @@ -747,6 +805,13 @@
"$ref": "#/$defs/hookMatcher"
}
},
"TaskCreated": {
"type": "array",
"description": "Hooks that run when a task is created via TaskCreate. See https://code.claude.com/docs/en/hooks",
"items": {
"$ref": "#/$defs/hookMatcher"
}
},
"TaskCompleted": {
"type": "array",
"description": "Hooks that run when a task is being marked as completed. Exit code 2 prevents completion and sends feedback. Does not support matchers. See https://code.claude.com/docs/en/hooks#taskcompleted",
Expand Down Expand Up @@ -775,6 +840,20 @@
"$ref": "#/$defs/hookMatcher"
}
},
"FileChanged": {
"type": "array",
"description": "Hooks that run when a watched file changes on disk. See https://code.claude.com/docs/en/hooks",
"items": {
"$ref": "#/$defs/hookMatcher"
}
},
"CwdChanged": {
"type": "array",
"description": "Hooks that run when the working directory changes. See https://code.claude.com/docs/en/hooks",
"items": {
"$ref": "#/$defs/hookMatcher"
}
},
"WorktreeCreate": {
"type": "array",
"description": "Hooks that run when a worktree is created via --worktree or isolation: \"worktree\" in subagents. Command handlers only, no matchers. Hook must print absolute path to created worktree on stdout; non-zero exit fails creation. See https://code.claude.com/docs/en/hooks#worktreecreate",
Expand Down
Loading