3 Doku-Verfütterer 4 Der Lotse ~9 Min

Hooks für den KI-Agenten: Schutz vor gefährlichen Befehlen und Leaks

Setz dem Agenten rote Flaggen - dann reißt er dir um drei Uhr nachts nicht dein Projekt ab

Hooks und hookify-Regeln einfach erklärt: wie du dem Agenten einen automatischen Wachmann verpasst, der rm -rf, das Leaken von Secrets und gefährliche Befehle abfängt, bevor sie laufen.

ECC-Skills in dieser Lektion: hookify-rules

Was ist ein Hook, einfach erklärt

Stell dir vor, du gibst einem Kind die Schlüssel zur Küche. Im Großen und Ganzen macht es seine Sache gut: kocht, spült ab, stapelt die Teller ordentlich. Aber einmal in hundert Durchgängen steckt es in der Hektik die Gabel in die Steckdose oder wirft deinen Pass weg - lag ja eh auf dem Tisch und war im Weg.

Ein KI-Agent funktioniert genau so. In 99 % der Fälle läuft alles glatt. Und im restlichen 1 % führt er seelenruhig einen Befehl aus, der deinen Ordner löscht, dein Passwort in ein öffentliches Repository schiebt oder deine Produktionsdatenbank plattmacht. Und das macht er munter, mit selbstbewusstem Gesicht und dem Satz „Fertig!“.

Damit dieses 1 % nicht passiert, setzt man einen Hook - so etwas wie einen Wachmann am Eingang. Vor jeder gefährlichen Aktion stellt er sich hin und sagt: „So, Stopp. Zeig mir mal, was du vorhast“.

Ein Roboter-Agent greift nach dem roten Löschknopf, doch vor ihm wächst ein Wachmann-Drehkreuz aus dem Boden
Der Agent greift nach dem gefährlichen Befehl - der Hook stellt sich zwischen ihn und den Knopf.

Wozu ein Vibecoder Schutz vor gefährlichen Agenten-Aktionen braucht

Du bist Vibecoder. Du wälzt jede Menge Routine auf den Agenten ab - und das ist auch richtig so. Aber Vertrauen ohne Absicherung kostet dich irgendwann Nerven und Daten. Hooks brauchst du, damit du:

  • ruhig schläfst - der Agent kann das, was du verboten hast, physisch nicht ausführen;
  • nicht dasselbe Verbot in jedem neuen Chat hundertmal wiederholst;
  • Fehler im Voraus abfängst, statt um drei Uhr nachts mit einer Tasse kaltem Kaffee die Folgen aufzuräumen;
  • nicht versehentlich Passwörter und Schlüssel in den offenen Zugriff schiebst - der Klassiker, an dem sich schon alle die Finger verbrannt haben.

Zwischen „der Agent hat mir drei Tage Arbeit gelöscht“ und „der Agent hat es versucht, aber der Hook hat ihn gestoppt“ liegt eine kleine Textdatei mit einer Regel. Die lernen wir jetzt zu schreiben.

Wie hookify-Regeln funktionieren

Hooks von Hand als Code zu schreiben, ist eine Qual. Deshalb gibt es das Tool hookify : du legst einfach eine ganz normale Text-Regeldatei an, das war’s. Kein Code.

Jede Regel beantwortet drei Fragen.

WANN schauen - das Ereignis (event)

Der Wachmann sitzt nicht überall gleichzeitig. Du sagst ihm, in welchem Moment er aufwachen soll:

  • bash - wenn der Agent einen Befehl im Terminal ausführen will (hier fängt man rm -rf, sudo und sonstige schwere Geschütze);
  • file - wenn der Agent eine Datei schreibt oder bearbeitet (hier fängt man Passwörter im Code und Debug-Müll);
  • prompt - wenn du selbst dem Agenten etwas geschrieben hast;
  • stop - der Moment, in dem der Agent seine Antwort beendet hat (praktisch für Erinnerungen);
  • all - bei jedem beliebigen Ereignis.

WAS fangen - das Muster (pattern)

Das ist das „Wortporträt“ der gefährlichen Aktion. Technisch gesehen ein Pattern . Sagen wir, das Muster rm\s+-rf fängt den schaurigen Löschbefehl, selbst wenn der Agent ein zusätzliches Leerzeichen reinklatscht.

WAS tun - die Aktion (action)

Hat der Wachmann einen Übeltäter erwischt, hat er zwei Reaktionsmöglichkeiten:

  • warn - warnen und durchlassen. „Hey, willst du das wirklich machen? Na gut, geh durch“. Der Standardmodus.
  • block - knallhart blockieren. „Stopp. Ich lass dich nicht durch. Punkt“. Die Aktion wird gar nicht erst ausgeführt.
Wann warn reicht (warnen)
  • Die Aktion ist meist ungefährlich, aber manchmal will man kurz nachdenken.
  • Erinnerungen wie „vergiss nicht, die Datei in die .gitignore aufzunehmen“.
  • Stil-Kleinigkeiten: „hast ein console.log im Code gelassen - räum das später auf“.
Wann block nötig ist (verbieten)
  • Befehle, die man nicht rückgängig machen kann: Löschen, Festplatte formatieren.
  • Das Schreiben von Secrets (Passwörter, API-Keys) dorthin, wo sie jemand sehen kann.
  • Jegliche Aktionen am Produktivserver oder an der Datenbank - hier nur knallharter Stopp.

Wie eine hookify-Regel aussieht

Die Regel selbst ist eine kurze Textdatei. Oben zwischen zwei Linien --- stehen die Einstellungen, darunter die Nachricht, die der Agent sieht, wenn die Regel auslöst. Mehr ist es nicht.

Beschreiben wir mit Worten die Regel „blockiere gefährliches Löschen von Dateien“:

  • Name der Regel: block-rm-rf (den Namen fängt man besser mit einem Verb an: warn-, block-, require-);
  • aktiviert: ja;
  • Ereignis: bash (wir beobachten Befehle im Terminal);
  • Aktion: block (wir blockieren);
  • Muster: fängt den Löschbefehl rm mit den Flags -rf;
  • Nachricht: „Stopp. Das ist ein Löschvorgang ohne Möglichkeit zum Rückgängigmachen. Bestätige manuell, bevor du weitermachst“.

Die Regeldateien liegen im Ordner .claude innerhalb des Projekts. Und genau hier kommt der wichtigste Gedanke der Lektion.

Links fliegt ein zerbrechlicher Zettel „nicht löschen“ mit dem Wind davon, rechts ist ein Regel-Schild mit Schrauben an der Wand befestigt
Worte im Chat verweht der Wind. Eine Regel in einer Datei ist bombenfest verankert.

Beispiel: wie ein Hook das Leaken von Secrets abfängt

Du bastelst an deinem ersten Startup. Du bindest ein Zahlungssystem ein, der Agent legt eine Datei .env an und packt den geheimen Schlüssel von Stripe hinein. Fünf Minuten später bittest du „schieb alles auf GitHub“, der Agent macht munter ein git push - und dein Geld-Schlüssel ist jetzt für das ganze Internet sichtbar. Noch ein paar Stunden - und jemand zieht damit seelenruhig dein Limit leer. Glückwunsch, du hast jemandem das Wochenende bezahlt.

Kommt dir das bekannt vor? Und jetzt schau, wie diese Katastrophe mit einer einzigen Regel abgewendet wird.

Du setzt vorher einen Hook: „sobald der Agent etwas Ähnliches wie einen API-Key in die Datei .env schreibt - erinnere mich daran, die .gitignore zu prüfen“. Hier ist der Prompt, der den Agenten bittet, diesen Schutz für dich zu bauen.

Prompt - kopier ihn und probier ihn aus

Erstelle mir eine hookify-Regel zum Schutz vor dem Leaken von Secrets.

Bedingungen der Regel:

  1. Ereignis - Schreiben in eine Datei (event file).
  2. Löst aus, wenn der Dateipfad auf .env endet UND wenn im neuen Text API_KEY, SECRET oder TOKEN vorkommt.
  3. Aktion - warnen (warn), nicht blockieren.
  4. Nachricht an den Agenten: „Du schreibst ein Secret in .env. Prüfe, dass diese Datei in der .gitignore steht und nicht in ein öffentliches Repository gelangt“.

Leg die Regel in den Ordner .claude des Projekts und erklär mir mit einfachen Worten, was sie genau macht.

Eine gute Regel gegen eine schlechte

Hooks sind eine mächtige Sache, aber man kann es leicht übertreiben. Hängst du an jeden Pups ein block, wird der Agent zum Gelähmten, der keinen Schritt mehr machen kann. So findest du die Balance.

Gute Regel
  • Fängt das wirklich Gefährliche: Löschen, Secrets, Produktivserver.
  • Das Muster ist präzise: fängt „console.log(“, nicht jedes Wort mit „log“.
  • Die Nachricht sagt dem Agenten, was er als Nächstes tun soll, nicht nur „geht nicht“.
  • Gefährliches und Unumkehrbares geht auf block, Kleinkram auf warn.
Schlechte Regel
  • Zu breites Muster: das Wort „log“ fängt „login“ und „dialog“.
  • Alles auf block - der Agent kann nicht arbeiten, du regst dich auf.
  • Verbot ohne Erklärung - der Agent versteht nicht, wie er regulär durchkommt.
  • Die Regel lebt nur im Chat, nicht in einer Datei - nach dem Neustart ist sie weg.
Meme: Der Wachmann-Hook blockiert absolut alles, sogar das harmlose Speichern einer Datei
Wenn du auf jeden Pups ein block gesetzt hast und jetzt selbst nicht mehr arbeiten kannst.

Häufige Anfängerfehler mit Hooks

  • Glauben, dass Worte im Chat reichen. „Ich hab doch gesagt, nicht löschen“ - und der Agent hat es nach der nächsten Kompaktierung vergessen. Das Verbot muss in einer Datei leben.
  • Auf alles ein block hängen. Der Agent erstickt, und du schaltest die Hooks im Frust selbst ab. Blockiere nur das Unumkehrbare.
  • Zu breites Muster. Du hast das Wort rm verboten - und der Agent kann das Wort „information“ nicht mehr schreiben. Mach das Muster präzise.
  • Verbot ohne Tipp „und was jetzt“. Der Agent rennt gegen eine Wand und dreht sich im Kreis. Schreib in die Nachricht, wie man es richtig macht.
  • Die .gitignore für Secrets ignorieren. Der Hook hat gewarnt, und du hast drübergescrollt. Lies, was der Wachmann sagt.
  • Nicht prüfen, ob die Regel überhaupt auslöst. Bitte den Agenten, einen ungefährlichen Testbefehl auszuführen, und vergewissere dich, dass der Hook ihn gefangen hat.

TL;DR - если коротко

  • Hook - ein Wachmann, der jede Aktion des Agenten prüft, bevor sie ausgeführt wird.
  • hookify-Regel - eine Textdatei nach dem Prinzip „machst du das, dann warne oder verbiete ich“.
  • Zwei Modi: warn (gewarnt und durchgelassen) und block (Stopp, weiter geht nichts).
  • Fängt per Muster: gefährliche Befehle, geheime Schlüssel, Debug-Müll.
  • Lebt in einer Datei, nicht im Chat - läuft immer, sogar nach einem Neustart.
  • Sag mit Worten, wovor du Angst hast - der Agent baut das Muster selbst, Regex lernen musst du nicht.

Wiki durchsuchen

Esc zum Schließen drücken

Geben Sie einen Suchbegriff ein, um alle Lektionen und Kurse zu durchsuchen.