[DOCS] Missing definition and input schema for `SubagentStart` hook event

Resolved 💬 4 comments Opened Jan 19, 2026 by coygeek Closed Feb 27, 2026

Documentation Type

Missing documentation (feature not documented)

Documentation Location

https://code.claude.com/docs/en/hooks

Section/Topic

The Hook Events and Hook Input sections in the Hooks reference documentation.

Current Documentation

Currently, under Hook Events, the documentation lists:

  • PreToolUse
  • PermissionRequest
  • PostToolUse
  • Notification
  • UserPromptSubmit
  • Stop
  • SubagentStop
  • PreCompact

...

And under Hook Input, there is a definition for SubagentStop Input:

{
  "session_id": "abc123",
  "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",
  "permission_mode": "default",
  "hook_event_name": "Stop",
  "stop_hook_active": true
}

What's Wrong or Missing?

The documentation is inconsistent and incomplete regarding the SubagentStart event.

  1. While SubagentStart is mentioned in the initial "Available events" list and appears in a code example under "Project-level hooks for subagent events," it is completely missing a dedicated description in the Hook Events section where all other hooks are defined.
  2. There is no entry for SubagentStart Input in the "Hook Input" section, making it impossible for developers to know exactly what JSON payload is passed to the hook script (e.g., does it receive the agent name, the prompt, or the tools available?).

Suggested Improvement

Please add the following two sections to docs/en/hooks.md:

1. Under "Hook Events" (before SubagentStop):

SubagentStart

Runs when a Claude Code subagent (Task tool call) is initialized and begins execution.

2. Under "Hook Input":

SubagentStart Input

{
  "session_id": "abc123",
  "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",
  "permission_mode": "default",
  "hook_event_name": "SubagentStart",
  "agent_name": "code-reviewer" 
}

(Note: Please verify the actual JSON payload structure, specifically if agent_name or matcher fields are included).

Impact

High - Prevents users from using a feature

Additional Context

  • This creates an asymmetry in the documentation where SubagentStop is fully documented, but its start counterpart is orphaned.
  • This issue was identified while reviewing the documentation updates from v2.0.43 where SubagentStart was introduced.

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗