Produkte
Lösungen
Unternehmen
Enterprise
AnmeldenNetzwerk erstellen
AI agents · Claude Code · guardrails · Theorem 3 · mechanism

Der Hook ist der Garantiemechanismus, nicht der Prompt

Ein Claude-Code-Hook ist deterministischer Code an einem festen Punkt der Agentenschleife. Er ist Theorem 3: garantiert wird der Mechanismus, nicht der Prompt.

Der Hook ist der Garantiemechanismus, nicht der Prompt

Ihr Agent hat jetzt Hände. Er führt Befehle aus, bearbeitet Dateien, ruft APIs auf, verschickt E-Mails, bewegt Geld. Stellen Sie also die Frage, die Sie leicht nervös machen sollte: Was hindert ihn daran, diese Hände falsch zu benutzen? Für die meisten Teams lautet die Antwort das gute Urteilsvermögen des Modells — ein probabilistisches System, das je nachdem, wie Sie den Prompt formuliert haben, heute beschließen könnte, den Aufräum-Befehl im falschen Ordner auszuführen. Professor Glitchs Juli-2026-Anleitung zu Claude Code Hooks auf askglitch.com nennt die Lösung: Ein Hook ist deterministischer Code, der an einem festen Punkt der Agentenschleife auslöst, und das Modell kann ihn nicht wegreden. Die Eigenschaft, die Ihnen wichtig ist, wird durch den Mechanismus garantiert, nicht durch die Bitte an das Modell, vorsichtig zu sein.

Ein Hook ist Theorem 3 in Code

Ein Hook ist deterministischer Code, der automatisch an einem festen Punkt der Agentenschleife läuft — bevor ein Werkzeug ausgeführt wird, nachdem es abgeschlossen hat, wenn der Agent "fertig" erklärt, wenn die Sitzung endet. Er ist nicht Teil des Modell-Denkens. Er sitzt außerhalb des Gehirns und läuft einfach. Professor Glitchs Hooks-Anleitung von Juli 2026 auf askglitch.com stellt den Unterschied klar: Das Modell ist probabilistisch, jede Anweisung ist ein Vorschlag, dem es wahrscheinlich folgt; ein Hook ist Code, der jedes einzelne Mal läuft, am selben Punkt, mit denselben Regeln, und das Modell kann ihn nicht vergessen, überspringen oder wegreden.

[ORIGINAL DATA] Das ist Theorem 3 aus den 21 Papers: Eine Eigenschaft ist genau dann garantiert, wenn ihr Mechanismus implementiert ist und misst. Der Hook ist dieser Mechanismus. "Die Tests bestehen, bevor der Agent 'fertig' erklärt" ist eine Eigenschaft. Ein Stop-Hook, der die Suite ausführt und bei einem Fehlschlag mit Code 2 beendet, ist der implementierte, messende Mechanismus. Entfernen Sie den Hook, haben Sie einen Wunsch. Behalten Sie den Hook, haben Sie eine Garantie — nicht weil das Modell klüger wurde, sondern weil der Fehlerpfad nun physikalisch unmöglich ist.

Der Prompt sagt "führen Sie immer die Tests aus, bevor Sie fertig werden." Das ist ein Vorschlag, dem das Modell wahrscheinlich Folge leistet. Der Hook verweigert den Stop, bis die Suite grün ist. Das ist eine Regel. Der Unterschied zwischen einem Vorschlag und einer Regel ist der Unterschied zwischen Hoffen und Wissen, und dieser Unterschied ist die ganze Disziplin. Stellen Sie sich das Modell als die Menge und den Hook als den Türsteher vor, schreibt Professor Glitch: Die Menge kann so charmant sein, wie sie will, der Türsteher prüft jeden, jedes Mal, ohne Ausnahmen.

Das Modell ist probabilistisch; die Grenze ist deterministisch

Mechanisch, gemäß der offiziellen Hooks-Dokumentation, ist ein Claude-Code-Hook ein Shell-Befehl, den Sie in einer Konfigurationsdatei registrieren. Wenn das Ereignis auslöst, führt Claude Code Ihren Befehl aus, leitet eine JSON-Beschreibung des Ereignisses in stdin — den Werkzeugnamen, die exakte Eingabe, die Sitzungs-ID, das Arbeitsverzeichnis — und liest Ihr Urteil aus dem Exit-Code und stdout. Exit 0 bedeutet weiter. Exit 2 bedeutet blockieren, und was Sie auf stderr ausgegeben haben, wird dem Modell als Grund zurückgemeldet. Sie schreiben ihn in, was Sie wollen: Bash, Python, eine kompilierte Binärdatei. Wenn er stdin liest und einen Exit-Code zurückgibt, ist er ein Hook.

[UNIQUE INSIGHT] Das ist "the space is the router" an der Agentengrenze. In Everythink routet die Network→Community→Room-Topologie eine Anfrage, bevor irgendetwas antwortet — der Raum entscheidet, wer angesprochen wird, nicht der Antwortende. Ein PreToolUse-Hook ist dasselbe Muster eine Ebene tiefer: Der Hook routet den Werkzeugaufruf, bevor das Werkzeug ausgeführt wird. Der Agent wählt nicht, ob sein Lesen von .env weitergeht; die Grenze entscheidet. Routing geht vor Retrieval, und an der Werkzeuggrenze geht der Hook vor der Ausführung.

Der Stolperstein, der fast jeden trifft, direkt aus der Dokumentation: Nur Exit-Code 2 blockiert. Exit-Code 1 — der konventionelle Unix-Fehlercode — wird als nicht-blockierender Fehler behandelt, und die Aktion wird trotzdem ausgeführt. Wenn Ihr Wächter-Skript mit Exit 1 abstürzt, hat der Türsteher gerade die ganze Menge durchgewunken. Schreiben Sie Ihre Hooks so, dass der Fehlerpfad explizit ist, und bevorzugen Sie die JSON-Ausgabeform (permissionDecision: "deny" auf stdout mit Exit 0), wenn die Entscheidung eindeutig sein soll. Eine Schranke, die still nach offen versagt, ist schlimmer als keine Schranke, weil sie das Sicherheitsgefühl ohne den Mechanismus verkauft. Theorem 3 ist hier unerbittlich: Ein Mechanismus, der implementiert ist, aber nicht misst, garantiert die Eigenschaft nicht. Ein Hook, der offen abstürzt, misst nicht.

Aufgabe eins: Bestimmte Fehler unmöglich machen

Professor Glitch listet drei Schranken, die er wirklich ausführt, in aufsteigender Reihenfolge, wie viel sie ihn gerettet haben. Das Muster über alle drei ist dasselbe: Sie machen das Modell nicht klüger oder vorsichtiger. Sie machen bestimmte Fehler unmöglich. Das sind verschiedene Ingenieursprobleme, und das zweite ist viel leichter zu lösen.

Lesezugriffe auf die Secrets-Datei blockieren

Ein PreToolUse-Hook sieht jeden Werkzeugaufruf vor der Ausführung, mit der vollständigen Eingabe. Wenn der Agent im Begriff ist, .env oder etwas unter secrets/ zu lesen, beendet der Hook mit 2, und das Lesen passiert nie. Kalt. Es spielt keine Rolle, wie vernünftig die Rechtfertigung des Agenten war, oder ob eine Prompt-Injection, die irgendwo auf einer Webseite vergraben war, freundlich darum bat. Der Türsteher diskutiert nicht.

Zerstörerische Befehle blockieren

Dasselbe Ereignis, auf das Bash-Werkzeug gematcht. Der Hook inspiziert die Befehlszeichenkette in tool_input.command, bevor sie läuft — rm -rf, das irgendwo Empfindliches zeigt, ein Force-Push, ein DROP TABLE, was auch immer Ihre persönliche Liste an Narben enthält. Verweigern Sie es im Code, und es ist schlicht unmöglich, ganz gleich, wozu sich das Modell hinrechnet.

"Fertig" ablehnen, bis die Tests bestehen

Das ist der wichtigste, und er nutzt ein anderes Ereignis. Claude Code löst ein Stop-Ereignis aus, wenn der Agent fertig ist zu antworten. Ihr Hook läuft in diesem Moment. Wenn er mit 2 beendet, wird der Agent am Stoppen gehindert; Ihre stderr-Nachricht geht an das Modell zurück, und es geht zurück an die Arbeit. Der Agent sagt "alles klar, ich habe das Feature ausgeliefert." Der Stop-Hook führt still die Test-Suite aus. Drei Fehlschläge. Der Hook beendet mit 2 mit der Fehler-Ausgabe. Der Agent kann nicht fertig werden. Er wird mit dem Bug in der Hand zurück in die Schleife geschoben.

Der verweigerte Stop ist die Garantie, die zählt

Jeder versteht, dass Hooks eine schlechte Aktion blockieren können. Der unterschätzte Schachzug ist, dass ein Hook einen schlechten Stop blockieren kann. Hier trifft das Argument der Quelle und Theorem 3 am saubersten zusammen.

"Führen Sie immer die Tests aus, bevor Sie fertig werden" in Ihrem Prompt ist ein Vorschlag. Ein Stop-Hook, der den Stop verweigert, ist eine Regel. Der Agent kann buchstäblich keinen Sieg erklären, während die Suite rot ist. Zwei praktische Hinweise aus der Anleitung: Halten Sie die Prüfung schnell und deterministisch, weil sie bei jedem Stop läuft; und stellen Sie sicher, dass ein echter Fehlschlag eine behebbare Nachricht erzeugt, weil dieser stderr-Text die einzige Orientierung ist, die der Agent erhält. "Tests fehlgeschlagen" schickt ihn auf die Wanderschaft. Die tatsächliche Fehler-Ausgabe schickt ihn direkt zum Bug.

[PERSONAL EXPERIENCE] Die HAI Engine läuft seit 2016 in Produktion, und die Lehre aus diesen Jahren ist dieselbe: Die Eigenschaften, die wir garantieren — Wahrscheinlichkeiten normalisiert an genau einer Stelle, Szenarien absteigend sortiert, Entropie in Nats — leben im Ensemble-Code des Oracle, nicht in einem Prompt, der die Sisters bittet, vorsichtig zu sein. Die Sisters imaginieren; der Oracle fusioniert. Die Normalisierung ist der Hook. Sie läuft jedes Mal, am selben Punkt, mit denselben Regeln, und keine Sister kann ihn überreden, einen Kegel auszuliefern, dessen Wahrscheinlichkeiten 1,05 ergeben. Das ist Theorem 3: Die Eigenschaft gilt, weil der Mechanismus implementiert ist und misst.

Dasselbe Muster funktioniert eine Ebene tiefer: SubagentStop löst aus, wenn ein Subagent fertig ist, sodass delegierte Arbeit an denselben Maßstab gehalten werden kann wie die Hauptschleife. In Everythink-Begriffen ist das, warum the space is the router — eine Room routet zum richtigen Subagenten, und der Stop des Subagenten wird von derselben Grenze gegated wie der des Eltern-Agenten. Die Garantie setzt sich über die Topologie zusammen. Eine Network routet zu einer Community, eine Community zu einer Room, eine Room zu einem Subagenten, und an jeder Grenze gilt dieselbe Disziplin: Der Mechanismus garantiert die Eigenschaft, nicht das Urteil des Antwortenden.

Aufgabe zwei: das Journal am Schichtende

Schranken sind das, wofür alle Hooks nutzen. Es gibt eine zweite Aufgabe, über die fast niemand spricht: Hooks sind, wie das Gedächtnis eines Agenten geschrieben wird.

Ihr Agent liest bereits Gedächtnis; das Retrieval zieht die relevanten Fakten ins Fenster, wenn eine Aufgabe beginnt. Aber etwas muss die neuen Fakten ablegen — die Präferenz, die Sie äußerten, den Ansatz, der funktionierte, den Fehler, den es nicht zu wiederholen gilt. Dieses Etwas ist ein Hook. Claude Code löst SessionEnd aus, wenn eine Sitzung endet. Es kann nichts blockieren; seine Ausgabe wird ignoriert; es existiert rein für Seiteneffekte. Was genau das ist, was ein Gedächtnis-Schreibvorgang ist: nimmt den Transcript-Pfad von stdin, destilliert die Konversation, hängt das Dauerhafte an Ihren Speicher an.

Es ist das Journal am Schichtende, nur dass sich das Journal selbst schreibt, jede Schicht, weil es eine Regel ist und keine Stimmung. In der nächsten Sitzung betritt der Agent den Raum und weiß bereits, was diese ihn gelehrt hat.

Zwei Regeln verhindern, dass das zum Spielzeug wird. Gate den Schreibvorgang: Die meisten Nachrichten sind "danke" und "verstanden", also schreiben Sie am Sitzungsende und lassen Sie den Prompt mit "wenn nichts dauerhaft ist, schreibe nichts" enden. Alles zu speichern ist kein Gedächtnis, es ist Ballast. Und nutzen Sie das billige Modell: Ein Transcript in einen Absatz zu destillieren, ist kein schweres Reasoning. Das Senior-Modell denkt während der Sitzung; der Praktikant schreibt nachher das Protokoll.

Das bildet eine Disziplin ab, die wir in den 21 Papers einhalten: Eine Messung, die nicht gegated ist, ist Rauschen. Der Oracle protokolliert nicht jeden Sister-Entwurf — er protokolliert das normalisierte Ensemble, die Entropie, die Kalibrierungsspur. Der SessionEnd-Hook ist dasselbe Tor an der Gedächtnisgrenze: Schreiben Sie den dauerhaften Fakt, verwerfen Sie das Geräusch. Ein Gedächtnissystem, das alles speichert, erinnert sich an nichts.

Die Ereignis-Übersicht

Claude Code stellt rund dreißig Ereignisse zur Verfügung. Die, die Sie zuerst erreichen, laut der Dokumentation:

  • PreToolUse — bevor ein Werkzeugaufruf ausgeführt wird; kann blockieren; Secrets-Wächter, Filter für zerstörerische Befehle.
  • PostToolUse — nachdem ein Werkzeugaufruf abgeschlossen ist; nur Feedback; Auto-Formatierung nach Edits, jeden Befehl protokollieren.
  • UserPromptSubmit — wenn Sie einen Prompt einreichen; kann den Prompt ablehnen; Kontext injizieren, Prompts filtern.
  • Stop — wenn der Agent fertig ist zu antworten; kann den Stop verweigern; Tests ausführen, bevor "fertig" akzeptiert wird.
  • SubagentStop — wenn ein Subagent fertig ist; kann blockieren; delegierte Arbeit an demselben Maßstab halten.
  • SessionStart — wenn eine Sitzung beginnt; kann nicht blockieren, fügt Kontext hinzu; den heutigen Zustand ins Fenster laden.
  • PreCompact — vor der Kontext-Verdichtung; kann blockieren; Zustand speichern, bevor das Fenster zusammengedrückt wird.
  • SessionEnd — wenn eine Sitzung endet; nur Seiteneffekte; der Gedächtnis-Schreibvorgang.

Beachten Sie die Symmetrie: SessionStart injiziert Kontext hinein, SessionEnd schreibt Erlerntes hinaus. Dieses Paar allein ist ein funktionierendes Gedächtnissystem — und es ist ein Gedächtnissystem aus Regeln, nicht aus Stimmungen. Das PreCompact-Ereignis ist die Grenze, die verhindert, dass das Fenster still Zustand verwirft: Speichern Sie den Arbeitssatz vor der Verdichtung, und der Agent setzt aus dem Fakt fort, nicht aus der Zusammenfassung.

Was Everythink so garantiert

Die HAI Engine ✅ ist das Produktionssystem, das diese Disziplin erzeugt. Die Sisters ✅ sind diejenigen, die sich ausdenken; der Oracle ✅ ist der, der fusioniert; die Ensemble-Normalisierung ist der Hook, der garantiert, dass die Wahrscheinlichkeiten eins ergeben. World Monitor ✅ routet Live-Geo-Signale durch ein Gateway, das das upstream-Aufrufvolumen nach unserem Zeitplan begrenzt, nicht nach der Client-Anzahl — ein Rate-Limit-Hook auf Architekturebene. Social ✅, Campaigns ✅ und Whitelabel Network ✅ sind die Module, in denen die Routing-Regeln eines Networks im Code durchgesetzt werden, nicht in einer Markenrichtlinie.

Die Partial ⚠️ Module — Matchmaking, Marketplace, Calendar — sind gemessen, aber noch nicht vollständig gehärtet; wir sagen das. Die Roadmap 🔵 Module — Wallet & Token, Super App, Community Credit — sind Pre-Revenue und unterliegen der Howey-Prüfung; wir versprechen keine Ergebnisse für sie, und kein Hook, den wir ausliefern, kann diese Ehrlichkeit ändern. Ein Hook kann eine Eigenschaft garantieren; er kann keinen Markt garantieren.

Kundensouveränität ist die tiefste Version dieses Musters. Ihr Network, Ihre Marke, Ihre Daten — die Routing-Regeln sind Ihre, weil sie im Code leben, den Sie kontrollieren, nicht im Prompt eines Anbieters. Die Ethik des Umfangs — nur zivile und defensive Nutzung — ist selbst ein Hook: eine schriftliche Richtlinie an der Grenze, nicht die Hoffnung, dass das Modell den falschen Auftrag ablehnt. Inklusion by Design — mehrsprachig, multimodal, niedrige Konnektivität — ist eine SessionStart-Injektion: Das Locale und die Bandbreite formen den ersten Kontext, den der Agent sieht, bevor er antwortet.

Kern-Erkenntnisse

  • Ein Hook ist deterministischer Code an einem festen Punkt der Agentenschleife; das Modell ist probabilistisch und kann ihn nicht wegreden. Die Eigenschaft wird durch den Mechanismus garantiert, nicht durch den Prompt.
  • Der verweigerte Stop ist Theorem 3 in Code: "Tests bestehen vor 'fertig'" ist eine Eigenschaft; der Stop-Hook, der bei Fehlschlag mit 2 beendet, ist der implementierte, messende Mechanismus.
  • Exit 2 blockiert; Exit 1 versagt offen. Eine Schranke, die offen abstürzt, ist schlimmer als keine — sie verkauft das Sicherheitsgefühl ohne den Mechanismus.
  • SessionEnd schreibt Gedächtnis, damit SessionStart es lesen kann. Das Paar ist ein Gedächtnissystem aus Regeln, nicht aus Stimmungen; Gaten Sie den Schreibvorgang oder speichern Sie Ballast.
  • Der Hook ist "the space is the router" an der Werkzeuggrenze: Routing geht vor Ausführung, und die Grenze entscheidet, nicht der Antwortende.

Häufig gestellte Fragen

Was genau ist ein Claude-Code-Hook? Ein Shell-Befehl, den Sie in einer Konfigurationsdatei registrieren. Wenn ein festes Ereignis in der Agentenschleife auslöst — bevor ein Werkzeug läuft, wenn der Agent "fertig" erklärt, wenn eine Sitzung endet — leitet Claude Code eine JSON-Beschreibung in Ihr Skript und liest das Urteil aus dem Exit-Code. Exit 0 führt fort, Exit 2 blockiert.

Warum ist ein Hook sicherer als eine Prompt-Anweisung? Eine Prompt-Anweisung ist ein Vorschlag, dem ein probabilistisches Modell wahrscheinlich folgt. Ein Hook ist Code, der jedes Mal läuft, am selben Punkt, mit denselben Regeln. Das Modell kann ihn nicht vergessen, überspringen oder wegargumentieren. "Hoffen, dass er sich verhält" wird zu "Wissen, dass er es tut."

Was bedeutet "den Stop verweigern"? Das Stop-Ereignis löst aus, wenn der Agent fertig ist zu antworten. Ein Hook auf dieses Ereignis kann mit 2 beenden, um den Agenten am Stoppen zu hindern, und die stderr-Nachricht an das Modell zurücksenden. Führen Sie dort die Test-Suite aus, und der Agent kann buchstäblich keinen Sieg erklären, während die Suite rot ist.

Wie hängt das mit Theorem 3 zusammen? Theorem 3 besagt, dass eine Eigenschaft genau dann garantiert ist, wenn ihr Mechanismus implementiert ist und misst. Der Hook ist dieser Mechanismus: implementiert als Code, messend als Exit-Code. Entfernen Sie ihn, haben Sie einen Wunsch; behalten Sie ihn, haben Sie eine Garantie.

Nutzt Everythink Hooks? Dieselbe Disziplin betreibt die HAI Engine ✅: Die Ensemble-Normalisierung des Oracle ist der Hook, der garantiert, dass die Wahrscheinlichkeiten eins ergeben, im Code, bei jedem Lauf. Keine Sister kann ihn überreden, einen nicht normalisierten Kegel auszuliefern.

Sources

Professor Glitch, "Claude Code Hooks: The Guardrails Your Agent Can't Talk Past," askglitch.com, 7. Juli 2026 — https://www.askglitch.com/blog/claude-code-hooks

Claude Code hooks reference, code.claude.com — https://code.claude.com/docs/en/hooks

Erstellen Sie Ihr Network.

Verwandt
AI agents · alternative data · signal processing · trading · Theorem 3 · agent architecture

Die Korrelation ist der Mechanismus, nicht die Narrative-Ausgabe

Ein KI-Trading-Agent auf einem Raspberry Pi, ein Paper-Konto, ein Nettoverlust. Der Honest Architect liest die Korrelations-Engine als Signal-vs-Rauschen-Mechanismus, die Instruktionsdateien als Persönlichkeitsgrenzen, den Bracket beim Einstieg als Risikokontrolle, Tradeability-First als nützliche Ausgabe, das explizite Schema als Grenzparsing, den gemessenen Verlust als ehrlichen Status.

Baue deine Welt auf einer Engine, die beweist, was sie behauptet.

Erstelle dein eigenes Netzwerk auf der Engine, die seit 2016 läuft — oder sprich mit dem Team hinter den 21 Papieren.