Prompt hook configuration
Set type to "prompt" and provide a prompt string instead of a command. Use the $ARGUMENTS placeholder to inject the hook's JSON input data into your prompt text.
This Stop hook asks the LLM to evaluate whether all tasks are complete before allowing Claude to finish:
json
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "prompt",
"prompt": "Evaluate if Claude should stop: $ARGUMENTS. Check if all tasks are complete."
}
]
}
]
}
}| Field | Required | Description |
|---|---|---|
type | yes | Must be "prompt" |
prompt | yes | The prompt text to send to the LLM. Use $ARGUMENTS as a placeholder for the hook input JSON. If $ARGUMENTS is not present, input JSON is appended to the prompt |
model | no | Model to use for evaluation. Defaults to a fast model |
timeout | no | Timeout in seconds. Default: 30 |
continueOnBlock | no | On the events it applies to, true feeds an ok: false reason back to Claude and continues instead of ending the turn. Default: false. See Response schema for per-event behavior |