Where it lives
In `<vault>/.kition/hooks.json`. A typical config is ~50 lines and travels with the vault — survives machine swaps and team handoffs.
Example: audit every web_fetch
{
"PreToolUse": {
"web_fetch": ".kition/scripts/log-fetch.sh"
}
}When to use each
- PreToolUse: intercept / rewrite / deny a call
- PostToolUse: cache, transform, report
- SessionStart: bootstrap (pull latest schemas)
- Stop: clean up, persist results
- UserPromptSubmit: translate user input into your DSL
- Notification: push alerts to Slack