[DOCS] Hooks reference still says `Stop`/`SubagentStop` cannot return `hookSpecificOutput.additionalContext`
Documentation Type
Incorrect/outdated documentation
Documentation Location
https://code.claude.com/docs/en/hooks
Section/Topic
Add context for Claude, SubagentStop, and Stop decision control
Current Documentation
The hooks reference currently says:
Where the reminder appears depends on the event: [SessionStart](#sessionstart), [Setup](#setup), and [SubagentStart](#subagentstart): at the start of the conversation, before the first prompt [UserPromptSubmit](#userpromptsubmit) and [UserPromptExpansion](#userpromptexpansion): alongside the submitted prompt * [PreToolUse](#pretooluse), [PostToolUse](#posttooluse), [PostToolUseFailure](#posttoolusefailure), and [PostToolBatch](#posttoolbatch): next to the tool result
And later in the SubagentStop section:
SubagentStop hooks use the same decision control format as [Stop hooks](#stop-decision-control). They do not supportadditionalContext. Returningdecision: "block"with areasonkeeps the subagent running and deliversreasonto the subagent as its next instruction. To inject context into the parent session after a subagent returns, use a [PostToolUse](#posttooluse) hook on theAgenttool instead.
The Stop decision control table then lists only:
|decision|"block"prevents Claude from stopping. Omit to allow Claude to stop | |reason| Required whendecisionis"block". Tells Claude why it should continue |
What's Wrong or Missing?
The hooks page is outdated for the behavior shipped in v2.1.163.
The changelog for v2.1.163 says:
Hooks: Stop and SubagentStop hooks can now return hookSpecificOutput.additionalContext to give Claude feedback and keep the turn going without being labeled a hook error
That leaves two documentation problems on the live hooks page:
A. SubagentStop is documented with the opposite behavior
The page explicitly says SubagentStop does not support additionalContext and tells readers to use an Agent PostToolUse hook instead. After v2.1.163, that statement is no longer correct.
B. Stop/SubagentStop are missing from the additionalContext guidance
The generic Add context for Claude section explains where additionalContext appears for several events, but it omits Stop and SubagentStop. The event-specific Stop decision control section also documents only decision and reason, so readers are not shown how to return feedback context while continuing the turn.
This combination makes the reference internally misleading: one section omits the feature, and another section still says part of it is unsupported.
Suggested Improvement
Update https://code.claude.com/docs/en/hooks to reflect the v2.1.163 behavior.
Minimum fix:
- In
Add context for Claude, addStopandSubagentStopto the list of events that accepthookSpecificOutput.additionalContext, and explain where that feedback is delivered. - In
SubagentStop, remove the sentence that says the event does not supportadditionalContext. - In
Stop decision control, document thatdecision/reasoncan be combined withhookSpecificOutput.additionalContextso a hook can keep the turn going and give Claude feedback without surfacing as a hook error.
Helpful addition:
Add one JSON example for Stop or SubagentStop, for example:
{
"decision": "block",
"reason": "Run one more verification pass.",
"hookSpecificOutput": {
"hookEventName": "Stop",
"additionalContext": "The lint command already passed; focus on the failing integration test."
}
}
Impact
Medium - Makes feature difficult to understand
Additional Context
Affected Pages:
| Page | Context |
|------|---------|
| https://code.claude.com/docs/en/hooks | Add context for Claude omits Stop/SubagentStop; SubagentStop still says additionalContext is unsupported; Stop decision control does not explain the new v2.1.163 behavior |
Total scope: 1 page affected
Version context: behavior changed in v2.1.163.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗