# Hook: Sessie retrospectief (Stop)

Aan het einde van elke Claude Code-sessie vraagt u automatisch Claude om samen te vatten wat werd geleerd en het in CLAUDE.md-updates, nieuwe regels, skillideën en ADR's in te delen.

## Wat het doet

- Wordt geactiveerd bij het `Stop`-event
- Schrijft een retrospectiefpromptbestand naar `.claude/retro-pending.md`
- In uw volgende sessie kunt u `/retro` uitvoeren om de leerpunten te verwerken
- Vangt op: nieuw ontdekte patronen, aangetroffen bugs, gemaakte besluiten, verbeteringen die nodig zijn

## settings.json-invoer

```json
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "bash ~/.claude/hooks/session-retro.sh"
          }
        ]
      }
    ]
  }
}
```

## Hookscript: session-retro.sh

```bash
#!/usr/bin/env bash
# Stop hook: write session retrospective prompt for next session
set -euo pipefail

INPUT=$(cat)
CWD=$(echo "$INPUT" | jq -r '.cwd // "."')
STOP_REASON=$(echo "$INPUT" | jq -r '.stop_reason // "normal"')
TIMESTAMP=$(date '+%Y-%m-%d %H:%M')
TOTAL_COST=$(echo "$INPUT" | jq -r '.total_cost_usd // 0')

# Only write retro for meaningful sessions (not immediate exits)
if [[ "$STOP_REASON" == "interrupt" ]]; then
  exit 0
fi

RETRO_FILE="$CWD/.claude/retro-pending.md"
mkdir -p "$(dirname "$RETRO_FILE")"

cat > "$RETRO_FILE" << EOF
# Session Retrospective — ${TIMESTAMP}
Cost: \$${TOTAL_COST} | Reason: ${STOP_REASON}

## Retrospective prompt (run at start of next session)

Ask Claude:
"Review the recent session history. Identify and categorise any learnings:

1. **CLAUDE.md updates** — new project conventions, commands, or context that should be persistent
2. **New rules** — coding standards or patterns worth adding to rules/
3. **Skill ideas** — repetitive workflows that deserve a /skill
4. **ADRs** — architecture decisions made that should be documented
5. **Bugs discovered** — issues found that aren't yet fixed

Format each item as a specific, actionable addition. Skip categories with nothing to add."

---
*Generated by session-retro hook. Delete this file after processing.*
EOF

echo "📝 Retrospective queued: $RETRO_FILE" >&2
exit 0
```

## Installatie

```bash
mkdir -p ~/.claude/hooks
cp session-retro.sh ~/.claude/hooks/session-retro.sh
chmod +x ~/.claude/hooks/session-retro.sh

# Voeg .claude/retro-pending.md toe aan gitignore
echo ".claude/retro-pending.md" >> .gitignore
```

## De retrospectief verwerken

Aan het begin van uw volgende sessie:
```bash
# Controleer of een retro in behandeling is
cat .claude/retro-pending.md

# Plak dan in Claude Code de prompt en verwerk de leerpunten
# Na verwerking verwijdert u het bestand:
rm .claude/retro-pending.md
```
