# Active Hooks Hooks are configured in `.claude/settings.json` and fire automatically: | Hook | Event | Trigger | Action | | ---- | ----- | ------- | ------ | | `validate-commit.sh` | PreToolUse (Bash) | `git commit` commands | Validates design doc sections, JSON data files, hardcoded values, TODO format | | `validate-push.sh` | PreToolUse (Bash) | `git push` commands | Warns on pushes to protected branches (develop/main) | | `validate-assets.sh` | PostToolUse (Write/Edit) | Asset file changes | Checks naming conventions and JSON validity for files in `assets/` | | `session-start.sh` | SessionStart | Session begins | Loads current sprint context, active milestone, recent git activity | | `detect-gaps.sh` | SessionStart | Session begins | Detects fresh projects (suggests /start) and missing documentation when code/prototypes exist, suggests /reverse-document or /project-stage-detect | | `pre-compact.sh` | PreCompact | Context compression | Logs session progress notes before context window compression | | `session-stop.sh` | Stop | Session ends | Summarizes accomplishments and updates session log | | `log-agent.sh` | SubagentStart | Agent spawned | Audit trail of all subagent invocations with timestamps | Hook reference documentation: `.claude/docs/hooks-reference/` Hook input schema documentation: `.claude/docs/hooks-reference/hook-input-schemas.md`