Claude Code Hooks: Automatisierung mit Pre- und Post-Tool-Hooks

Claude Code Hooks sind das Feature, das aus einem smarten KI-Assistenten einen wirklich autonomen Agenten macht. Wer nur mit CLAUDE.md und settings.json arbeitet, steuert Claude über Anweisungen — Hooks dagegen greifen direkt in den Ablauf ein: Sie laufen vor einem Tool-Aufruf, nach ihm, beim Start einer Prompt-Eingabe oder wenn Claude seine Arbeit beendet. Das ist kein Komfort-Feature, das ist Infrastruktur.

Dieser Artikel erklärt, welche Hook-Typen es gibt, warum sie mächtiger sind als jede Konfigurationsdatei — und zeigt zwei Praxisbeispiele, die du heute noch einsetzen kannst.

Was sind Claude Code Hooks?

Hooks sind Shell-Befehle oder Skripte, die Claude Code zu definierten Zeitpunkten im Agentenablauf ausführt. Du registrierst sie in .claude/settings.json. Es gibt vier Hook-Typen:

Jeder Hook kann mit einem Matcher auf bestimmte Tool-Namen oder Kontexte eingeschränkt werden. Ein Hook mit leerem Matcher läuft bei jedem Aufruf des entsprechenden Typs.

Warum Hooks mächtiger sind als .clauderc

Eine CLAUDE.md-Datei ist Text. Claude liest ihn, folgt ihm — meistens. Aber Claude kann Anweisungen auch falsch interpretieren, vergessen oder im langen Kontext-Verlauf deprioritisieren. Das ist kein Bug, das ist das Wesen eines Sprachmodells.

Hooks dagegen laufen auf Systemebene. Wenn ein PreToolUse-Hook mit Exit-Code 2 zurückkehrt, blockiert Claude Code den Tool-Aufruf — ohne Ausnahme, ohne Interpretation. Du kannst in CLAUDE.md schreiben: "Führe niemals git push aus ohne meine Bestätigung." Claude wird es versuchen einzuhalten. Oder du schreibst einen PreToolUse-Hook, der bei jedem git push-Befehl eine Bestätigung einfordert. Der Hook hält es immer ein.

CLAUDE.md gibt Empfehlungen. Hooks setzen Grenzen durch.

Das ist der fundamentale Unterschied: Konfigurationsdateien sind Anweisungen an das Modell. Hooks sind Regeln, die das System um das Modell herum durchsetzt.

Praxisbeispiel 1: Stop-Hook — Commit-Check nach jeder Antwort

Eines der häufigsten Probleme im produktiven Claude-Code-Einsatz: Du arbeitest zwei Stunden, Claude editiert Dutzende Dateien — und irgendwann weißt du nicht mehr genau, was uncommitted ist. Mit einem Stop-Hook bekommst du nach jeder abgeschlossenen Antwort automatisch eine Übersicht der ungesicherten Änderungen.

// .claude/settings.json
{
  "hooks": {
    "Stop": [
      {
        "matcher": "",
        "hooks": [{"type": "command", "command": "git diff --stat HEAD && echo 'Ungespeicherte Änderungen — commit?'"}]
      }
    ]
  }
}

Was passiert: Immer wenn Claude eine Antwort abschließt, läuft git diff --stat HEAD im Hintergrund. Gibt es Änderungen, siehst du sie direkt im Terminal. Das klingt simpel — in der Praxis verhindert es, dass Claude fünfzehn Dateien editiert und du eine halbe Stunde später den Überblick verlierst.

Erweiterung: Mit einem Exit-Code-2-Return kannst du Claude stoppen, bevor er eine neue Aufgabe beginnt, solange noch uncommittete Änderungen vorhanden sind. Dann ist Claude Code kein Produktivitäts-Werkzeug mehr, das dich in unordentliche Zustände laufen lässt — es erzwingt saubere Commits als Arbeitsrhythmus.

Praxisbeispiel 2: PreToolUse — Sicherheitsnetz für Delete-Operationen

Der Claude Code pre-tool-use hook ist das mächtigste Werkzeug für Sicherheit im automatisierten Betrieb. Mit ihm kannst du jeden Tool-Aufruf abfangen, bevor er ausgeführt wird — und bei kritischen Operationen eine Bestätigung verlangen oder den Aufruf komplett blockieren.

Folgendes Beispiel fängt alle Bash-Aufrufe ab, die destruktive Befehle enthalten:

// .claude/settings.json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [{
          "type": "command",
          "command": "bash -c 'echo \"$CLAUDE_TOOL_INPUT\" | python3 -c \"import sys,json; inp=json.load(sys.stdin); cmd=inp.get(\\\"command\\\",\\\"\\\"); exit(2) if any(x in cmd for x in [\\\"rm -rf\\\",\\\"drop table\\\",\\\"truncate\\\",\\\"format\\\"]) else exit(0)\"'"
        }]
      }
    ]
  }
}

Gibt der Hook Exit-Code 2 zurück, bricht Claude Code den Tool-Aufruf ab und teilt dir mit, warum. Du kannst die Blacklist beliebig erweitern: git push --force, kubectl delete, DROP DATABASE — alles, was in deinem Kontext unumkehrbar ist.

Im realen Einsatz ersetzt das nicht das Nachdenken über Claude's Aufgaben — aber es gibt dir eine letzte Verteidigungslinie, wenn ein Prompt zu weit geht oder Claude einen unerwarteten Pfad einschlägt.

Wofür sich Hooks nicht eignen

Hooks sind mächtig, aber kein Ersatz für echte Programm-Logik. Drei Einschränkungen, die du kennen solltest:

Wichtig: Ein fehlerhafter Hook der mit Exit-Code 0 zurückkehrt, obwohl er eigentlich blockieren sollte, gibt Claude Code grünes Licht. Teste deine Hooks immer gegen die Fälle, die sie abfangen sollen — nicht nur gegen den Happy Path.

Claude Code automatisieren — der nächste Schritt

Hooks sind der Einstieg in echter Automatisierung mit Claude Code. Nicht "Claude assistiert beim Coden", sondern "Claude Code läuft in einem definierten Rahmen, der verlässliche Ergebnisse produziert". Wer das einmal eingerichtet hat, will nicht mehr ohne.

Die Lernkurve ist moderat: Du brauchst grundlegendes Shell-Wissen und ein Verständnis davon, wie Claude Code Tools aufruft. Dann werden Hooks schnell zur Standardausstattung jeder Claude-Code-Installation.


12 fertige Hook-Vorlagen für den Produktionseinsatz

Im Kurs Claude Code Mastery gibt es ein komplettes Modul zu Hooks — mit 12 einsatzbereiten Vorlagen: Git-Schutz, Delete-Safeguards, Logging, Benachrichtigungen und mehr. Alle getestet im realen Agentenbetrieb.

Zum Kurs — Full Access → Einmalzahlung · Kein Abo · 14 Tage Rückgaberecht

Kurs · Claude Code Mastery

Von Prompts zu produktiven AI-Agenten

Agent Architecture. CLI. Prompting. MCP. Multi-Agent. Und ein vollständiges Hooks-Modul mit 12 fertigen Vorlagen — auf Deutsch, einmalig bezahlt.

Full Access — €49 → Kursübersicht ansehen →

Einmalzahlung · Kein Abo · 14 Tage Rückgaberecht

Du willst sehen, wie Hooks im echten Agentenbetrieb aussehen?

Das Team hinter diesem Blog betreibt ein vollständig AI-geführtes Unternehmen — mit Claude Code Hooks in der Kern-Infrastruktur. Wir bauen das öffentlich bei agentic-movers.com.