Hooks er en af de mest kraftfulde og mindst kendte funktioner i Claude Code. De lader dig automatisk udløse egne scripts og kommandoer, når Claude Code udfører bestemte handlinger — og giver dig fuld kontrol over dit udviklingsmiljø.
Hvad er hooks?
En hook er et shell-script eller en kommando, der kører automatisk når en bestemt hændelse finder sted i Claude Code. Forestil dig det som begivenheds-lyttere for dit udviklingsworkflow: Claude redigerer en fil → din linter kører automatisk. Claude stopper → du får en notifikation.
Hooks giver dig mulighed for at automatisere kvalitetstjek, notifikationer og workflow-skridt uden at du behøver huske at gøre dem manuelt.
De fire hook-typer
Claude Code understøtter fire typer hooks:
- PreToolUse: kører inden Claude udfører en handling (f.eks. inden den skriver til en fil)
- PostToolUse: kører efter Claude har udført en handling
- Notification: kører når Claude sender en notifikation til brugeren
- Stop: kører når Claude afslutter sin opgave og stopper
Konfiguration i settings.json
Hooks konfigureres i din .claude/settings.json-fil (projektspecifik) eller i ~/.claude/settings.json (global). Strukturen ser sådan ud:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "npm run lint --silent"
}
]
}
],
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "osascript -e 'display notification "Claude er færdig" with title "Claude Code"'"
}
]
}
]
}
}
Konkrete eksempler
Kør tests efter fil-redigering
Sørg for at dit test-suite kører automatisk, når Claude ændrer filer:
{
"PostToolUse": [
{
"matcher": "Write|Edit|MultiEdit",
"hooks": [{ "type": "command", "command": "npm test -- --passWithNoTests" }]
}
]
}
Send notifikation når Claude stopper
Nyttigt når du sætter Claude til at arbejde og skifter til en anden opgave:
{
"Stop": [
{
"hooks": [{ "type": "command", "command": "say 'Claude er færdig med opgaven'" }]
}
]
}
Log alle tool-kald
Giv dig selv et audit trail af hvad Claude har gjort:
{
"PostToolUse": [
{
"matcher": ".*",
"hooks": [{
"type": "command",
"command": "echo "$(date): $CLAUDE_TOOL_NAME" >> ~/claude-log.txt"
}]
}
]
}
Sikkerhedshensyn
Hooks kører med dine brugerrettigheder — de kan altså gøre alt, hvad du kan gøre på din maskine. Hold dig til disse principper:
- Brug read-only operationer i hooks, medmindre du er sikker på effekten
- Test altid nye hooks i et sikkert testprojekt, inden du bruger dem i produktion
- Undgå at bruge
rm, databasekald eller andre destruktive kommandoer i hooks - Hold hook-kommandoer korte og fokuserede — fejl i hooks kan afbryde Claude Code
Hooks er et avanceret værktøj, der betaler sig hurtigt i gentagne workflows. Start med ét enkelt hook (f.eks. en Stop-notifikation) og byg din hook-samling gradvist op.

Skriv et svar
Du skal være logget ind for at skrive en kommentar.