Hi,
We’re building a solution that uses hook-provided additional_contextfield to guide the agent’s next actions.
This behavior works in both Claude and Cursor, but Cursor doesn’t currently document support for additional_context in preToolUse. We’d like to confirm whether this behavior is officially supported before relying on it.
We noticed a mismatch between the documentation and the actual behavior.
Documentation
According to the documentation, preToolUse supports the following output fields:
-
permission -
user_message -
agent_message -
updated_input
additional_context is documented only for postToolUse and sessionStart, not for preToolUse.
What we observed
Our preToolUse hook returns:
{
"permission": "deny",
"additional_context": "<instructions + random nonce>"
}
The tool call is denied, and the model clearly receives the additional_context.
To verify this, we generate a new random nonce on every hook invocation and store it only in an external log outside the workspace. The agent later repeats that nonce and follows the supplied instructions, confirming that the information could only have been received through additional_context.
Question
Is additional_context officially supported for preToolUse, with the documentation simply being out of date, or is the current behavior incidental and not something we should rely on?
