SubagentStart and SubagentStop Hooks - Claude Code
Fire when subagents spawn and finish.
SubagentStart and SubagentStop hooks fire around subagent lifecycles - at spawn and at completion.
What it does
SubagentStart runs when the main agent delegates to a subagent. It receives the subagent definition and the initial task. SubagentStop runs when the subagent finishes. Together they let you track parallel work, enforce concurrency limits, log per-agent metrics, or annotate the returned result before it reaches the main session.
When to use it
- Counting active subagents to cap parallelism.
- Tagging logs with the subagent name for observability.
- Adding project-specific context to every subagent prompt via Start.
- Normalizing or sanitizing subagent return values via Stop.
Gotchas
- Many subagents running in parallel means these hooks fire a lot. Keep them lightweight.
- Start hooks that modify the task too aggressively can confuse the subagent.
- Stop hooks that rewrite results hide what the subagent actually said. Log originals.
Official docs: https://code.claude.com/docs/en/hooks.md#subagentstart
Technical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.
Get the weekly deep dive
Tutorials on Claude Code, AI agents, and dev tools - delivered free every week.
Was this helpful?




