Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One family

Hook events, all 33.

The points in a session a configured hook can be run at.

Hook events33seen across 149 builds
In v2.1.3080the newest inventory on disk
Gone0in an earlier build, not in the newest
Described33have a line in Anthropic's documentation
No docs line0no line in the documentation we hold

Every hook event, and where it lived

33 hook events One tick per build on this box, oldest on the left. A gap is a build the hook event was not in.

○ not in v2.1.308, ◇ we found no documentation describing it.

Hook eventWhat it doesSpan v2.1.138 → v2.1.308 Status
ConfigChange When a configuration file changes during a sessionnever mined ·never mined CwdChanged When the working directory changes, for example when Claude executes a cd command. Useful for reactive environment management with tools like direnvnever mined ·never mined DirectoryAdded When a working directory is added mid-session via /add-dir or the SDK register_repo_root control requestnever mined ·never mined Elicitation When an MCP server requests user input during a tool callnever mined ·never mined ElicitationResult After a user responds to an MCP elicitation, before the response is sent back to the servernever mined ·never mined FileChanged When a watched file changes on disk. The matcher field specifies which filenames to watchnever mined ·never mined InstructionsLoaded When a CLAUDE.md or .claude/rules/*.md file is loaded into context. Fires at session start and when files are lazily loaded during a sessionnever mined ·never mined MessageDisplay While assistant message text is displayednever mined ·never mined Notification When Claude Code sends a notificationnever mined ·never mined PermissionDenied When auto mode denies a tool call, including denials without a classifier verdict. Use JSON hookSpecificOutput.retry: true to tell the model it may retry the denied tool call. Claude Code ignores retry when the classifier produced no verdictnever mined ·never mined PermissionRequest When a tool call needs a permission decisionnever mined ·never mined PostCompact After context compaction completesnever mined ·never mined PostModelSwitch After the session's model changes, including changes Claude Code makes on its own, such as restoring the model when you resume a sessionnever mined ·never mined PostToolBatch After a full batch of parallel tool calls resolves, before the next model callnever mined ·never mined PostToolUse After a tool call succeedsnever mined ·never mined PostToolUseFailure After a tool call failsnever mined ·never mined PreCompact Before context compactionnever mined ·never mined PreModelSwitch Before Claude Code applies a model switch that you or a client requested. Can block the switchnever mined ·never mined PreToolUse Before a tool call executes. Can block itnever mined ·never mined SessionEnd When a session terminatesnever mined ·never mined SessionStart When a session begins or resumesnever mined ·never mined Setup When you start Claude Code with --init-only, or with --init or --maintenance in -p mode. For one-time preparation in CI or scriptsnever mined ·never mined Stop When Claude finishes respondingnever mined ·never mined StopFailure When the turn ends due to an API errornever mined ·never mined SubagentStart When a subagent is spawnednever mined ·never mined SubagentStop When a subagent finishesnever mined ·never mined TaskCompleted When a task is being marked as completednever mined ·never mined TaskCreated When a task is being created via TaskCreatenever mined ·never mined TeammateIdle When an agent team teammate is about to go idlenever mined ·never mined UserPromptExpansion When a user-typed command expands into a prompt, before it reaches Claude. Can block the expansionnever mined ·never mined UserPromptSubmit When a prompt is submitted, before Claude processes it. Also fires on turns Claude Code starts on its ownnever mined ·never mined WorktreeCreate When a worktree is being created via --worktree, isolation: "worktree", or for a background session. Replaces default git behaviornever mined ·never mined WorktreeRemove When a worktree that a WorktreeCreate hook created is being removednever mined ·never mined
Feedback