Start / Seminare / Claude Code in der Praxis
Modul
Automatisierung: Loops, Routinen & Hooks
3 Kapitel in diesem Modul-Video · Laufzeit
Transkript
Der gesprochene Text dieses Moduls zum Mitlesen, Überfliegen und Durchsuchen. Ein Klick auf einen Zeitstempel springt an die Stelle im Video.
Automatisierung – Loops, Routinen & Hooks
0:00 Bis hierhin war immer jemand dabei: Sie geben eine Aufgabe, der Agent arbeitet, Sie schauen sich das Ergebnis an. In diesem Kapitel lockern wir diese Kopplung. Es geht darum, wie Claude Code auch dann weiterarbeitet, wenn Sie gerade etwas anderes tun — und, mindestens ebenso wichtig, wie Sie dabei die Kontrolle behalten.
0:18 Drei Hebel schauen wir uns an: Zeit, also wiederkehrende Läufe; Ereignisse, also Regeln, die automatisch greifen; und Ziele, bei denen der Agent so lange weitermacht, bis ein bestimmter Zustand erreicht ist. Der Titel der Schlussfolie nimmt schon vorweg, worauf es dabei ankommt: Augenmaß.
Automatisierung – Loops, Routinen & Hooks
0:35 Der rote Faden dieses Kapitels ist eine Steigerung in drei Stufen. Zuerst die zeitgesteuerte Automatisierung — etwas läuft in Intervallen, lokal in Ihrer Sitzung oder unbeaufsichtigt in der Cloud. Dann die eventbasierte: Skripte, die bei bestimmten Ereignissen zwingend greifen und Regeln nicht nur empfehlen, sondern durchsetzen.
0:54 Und zuletzt die zielgesteuerte, bei der nicht mehr die Uhr oder ein Ereignis den Takt vorgibt, sondern ein messbarer Zustand.
Zeitgesteuerte Aufgaben
1:02 Beginnen wir mit der einfachsten Form: etwas soll regelmäßig passieren. Die interessante Frage dabei ist weniger das Wie als das Wo — läuft die Sache bei Ihnen auf dem Rechner oder irgendwo, wo kein Terminal offen sein muss? Hier stehen zwei Dinge nebeneinander, die man leicht verwechselt, deshalb die klare Trennung. Ein Loop ist wie ein Wecker, der in Ihrem Zimmer steht: Er läuft in der aktuellen Sitzung, in Intervallen, und wenn Sie das Terminal schließen, ist er weg.
1:29 Eine Routine dagegen ist ein Auftrag an einen Dienst — sie läuft als geplante Sitzung in der Cloud, unbeaufsichtigt, auch wenn Ihr Rechner ausgeschaltet ist. Das Beispiel aus der Praxis: stündlich die offenen Pull Requests durchsehen und zusammenfassen. Ob das lokal oder in der Cloud passiert, hängt schlicht davon ab, ob jemand zuschauen soll.
1:49 Der Nutzen liegt bei den Prüfungen, die man eigentlich regelmäßig machen sollte und deshalb regelmäßig vergisst. Die Punkte zwei und drei beschreiben die Arbeitsteilung, die ich eben angedeutet habe: Loops passen zur aktuellen Sitzung, wenn Sie ohnehin dabei sind und mitlesen; Routinen laufen, wenn niemand zusieht. Der vierte Punkt ist der, der über Zeitsteuerung hinausgeht und leicht überlesen wird: Auslöser kann auch ein GitHub-Ereignis oder ein API-Aufruf sein.
2:15 Damit wird aus der Zeitautomatisierung ein Baustein Ihrer Infrastruktur — nicht mehr nur ein Timer, sondern etwas, das sich in bestehende Abläufe einhängt. Was hier steht, ist bemerkenswert wenig Technik: ein Befehl, ein Intervall und ein Auftrag in normaler Sprache. Genau das ist der Punkt — Sie schreiben kein Skript, Sie formulieren eine wiederkehrende Bitte.
2:37 Achten Sie auf die dritte Zeile, denn sie beschreibt eine Eigenschaft, keine Bedienungsanleitung: Der Loop läuft in dieser Sitzung. Schließen Sie das Terminal, ist er beendet. Und die Escape-Taste ist bewusst erwähnt — bei allem, was von selbst läuft, sollte man wissen, wie man es anhält, bevor man es startet. Für alles, was Ihren Feierabend überdauern soll, verweist die Fußzeile auf die Cloud-Routine.
3:01 Richten Sie einen Loop ein — und beenden Sie ihn wieder. Beides gehört zum Lernziel, und der zweite Teil ist der, den man beim Ausprobieren gern vergisst. Wählen Sie eine Prüfung, die für Sie tatsächlich Sinn ergibt, und ein Intervall, das dazu passt; ein Loop, der im Minutentakt dasselbe meldet, ist schnell nur noch Rauschen.
3:20 Der Hinweis zieht die Grenze für die Praxis: Sobald etwas dauerhaft und unbeaufsichtigt laufen soll, nehmen Sie die Cloud-Routine. Ein lokaler Loop, der von einem geschlossenen Laptop abhängt, ist keine Automatisierung, auf die man sich verlassen kann.
Eventbasierte Hooks
3:35 Zeit ist ein grober Taktgeber. Oft will man nicht, dass etwas alle zwei Stunden passiert, sondern genau dann, wenn ein bestimmtes Ereignis eintritt — und zuverlässig, nicht nach Ermessen. Ein Hook ist ein Skript, das Claude Code bei bestimmten Ereignissen ausführt. Die beiden wichtigsten liegen um jeden Werkzeugaufruf herum: einer davor, einer danach.
3:56 Vergleichen Sie es mit der Sicherheitskontrolle am Flughafen — sie findet vor dem Einsteigen statt, sie fragt nicht nach Ihrer Meinung, und sie läuft bei jedem gleich ab. Genau darin liegt der Unterschied zu allem, was wir bisher besprochen haben. Eine Regel in der `CLAUDE.md` ist eine Anweisung, die der Agent befolgen soll.
4:15 Ein Hook ist Code, der ausgeführt wird. Konfiguriert wird das Ganze in der `settings.json` unter dem Schlüssel `hooks`. Der erste und der letzte Punkt sagen im Grunde dasselbe, und es ist der Kern dieses Kapitels: Regeln werden erzwungen, nicht empfohlen — deterministisch, per Skript, nicht nach Ermessen des Modells. Für alles, was wirklich nie passieren darf, ist das der einzig verlässliche Weg.
4:38 Die beiden mittleren Punkte zeigen die zwei Charaktere: Der Hook davor ist ein Türsteher, er verhindert etwas. Der Hook danach ist ein Aufräumdienst, er stößt zum Beispiel automatisch das Linting an, sobald Dateien geändert wurden. Verhindern und Nacharbeiten — mit diesen beiden Mustern deckt man erstaunlich viel ab. Erzählen wir, was dieses Skript tut, statt es zu lesen: Es bekommt den Befehl, den Claude gleich ausführen möchte, schaut nach einem gefährlichen Muster — hier dem rekursiven Löschen — und bricht ab, wenn es fündig wird.
5:10 Der ganze Mechanismus hängt an einer unscheinbaren Stelle, und die steht in der Fußzeile: Exit-Code 2. Dieser Rückgabewert ist das Signal, das den Aufruf tatsächlich stoppt. Beachten Sie auch, was hier nicht passiert: Es wird nicht gewarnt, nicht nachgefragt, nicht abgewogen. Es wird blockiert. Diese Kompromisslosigkeit ist der Grund, warum man Hooks für genau die Fälle nimmt, bei denen man keine Diskussion möchte.
5:35 Bauen Sie jetzt Ihren eigenen Türsteher. Wichtig ist beim Testen die zweite Hälfte des Erfolgskriteriums: Das Zielkommando wird blockiert — und harmlose Aufrufe laufen weiter. Ein Hook, der zu grob greift, ist schlimmer als keiner, weil er Sie im Alltag ausbremst und Sie ihn nach zwei Tagen wieder abschalten. Probieren Sie also bewusst beide Fälle durch.
5:54 Und wenn das sitzt, ergänzen Sie das Gegenstück nach dem Werkzeugaufruf, etwa ein automatisches Linting nach Änderungen. Dann haben Sie beide Muster einmal selbst gebaut und sehen den Unterschied zwischen Verhindern und Nacharbeiten.
Goals (Ziele)
6:08 Bleibt die dritte Stufe, und sie ist die interessanteste. Bisher gab die Uhr oder ein Ereignis den Takt vor. Jetzt gibt ihn das Ergebnis vor — der Agent hört auf, wenn es fertig ist, nicht wenn die Zeit um ist. Der letzte Satz auf dieser Folie ist die ganze Idee in acht Wörtern: Loops warten auf Zeit, Goals warten auf einen Zustand.
6:28 Sie setzen eine messbare Bedingung, und Claude Code arbeitet Turn für Turn weiter, prüft nach jedem Schritt, ob die Bedingung erfüllt ist, und stoppt erst dann. Das ist ein anderer Umgang mit Unsicherheit: Sie müssen nicht vorher wissen, wie viele Schritte nötig sind. Wer sich an das Testkapitel erinnert, erkennt das Muster wieder — „alle Tests grün" ist eine Bedingung, die eine Maschine prüfen kann.
6:51 Und genau solche Bedingungen sind hier gemeint. Der dritte Punkt beschreibt, was man dabei tatsächlich gewinnt: kein manuelles Nachfassen Turn für Turn. Wer schon einmal zehnmal hintereinander „weiter" oder „jetzt noch den nächsten Fehler" getippt hat, weiß, wie viel unproduktive Zeit da draufgeht. Der zweite Punkt ist die Bedingung dafür, dass es funktioniert: Fortschritt wird an einem messbaren Zustand geprüft, nicht an einer Selbsteinschätzung.
7:17 Und der vierte ist mir wichtig, weil er das Vertrauen ermöglicht — Sie können jederzeit den Status abfragen und abbrechen. Eigenständig heißt nicht unkontrolliert, und dieser Unterschied entscheidet darüber, ob man so etwas im Alltag wirklich einsetzt. Vier Schritte, und die eigentliche Arbeit steckt im ersten. Eine Zielbedingung messbar zu formulieren, ist dieselbe Denkarbeit wie eine prüfbare Regel in der Spezifikation oder ein guter Test — nur dass hier unmittelbar sichtbar wird, ob sie taugt.
7:46 Ist die Bedingung schwammig, weiß der Agent nicht, wann er fertig ist, und läuft entweder zu früh aus oder gar nicht mehr. Die Schritte zwei bis vier laufen dann weitgehend von allein: setzen, iterieren, stoppen. Die Fußzeile ist Ihr Cockpit — mit demselben Befehl fragen Sie den Status ab, und mit einem Zusatz beenden Sie den Lauf. Merken Sie sich das, bevor Sie starten.
8:08 In dieser Übung kommt alles zusammen. Formulieren Sie eine Aufgabe als objektiv prüfbare Bedingung — das Beispiel „alle Tests grün, Lint sauber" ist ein guter Maßstab, weil es keinen Interpretationsspielraum lässt. Der Hinweis ist die Prüffrage, die Sie sich stellen sollten: Könnte ein Skript entscheiden, ob die Bedingung erfüllt ist? Wenn nicht, schärfen Sie nach.
8:29 Beobachten Sie dann, wie der Agent iteriert, und lassen Sie ihn tatsächlich bis zum Stopp laufen. Genau dieser Moment — er hört von selbst auf, weil das Ziel erreicht ist — ist das Erlebnis, um das es in dieser Übung geht. Fassen wir die drei Hebel zusammen und vor allem, wann man welchen nimmt. Zeitsteuerung ist richtig für Wiederkehrendes — lokal, solange Sie dabei sind, in der Cloud, wenn es unbeaufsichtigt laufen soll.
8:55 Hooks sind richtig für alles, was zwingend gelten muss: Der eine blockt vorher, der andere räumt hinterher auf. Und Ziele sind richtig, wenn das Ergebnis feststeht, aber der Weg dorthin nicht. Was alle drei verbindet, ist eine Bedingung: Sie müssen wissen, wie Sie das Ding wieder anhalten. Im nächsten Kapitel wird es konkreter und anschaulicher — Datenanalyse und Dashboards.
Automatisieren mit Augenmaß
9:18 Zeit, Event, Ziel — drei Hebel, die sich gut kombinieren lassen. Das Wort „Augenmaß" in der Überschrift ist bewusst gewählt, denn Automatisierung hat eine Eigenschaft, die man leicht unterschätzt: Sie funktioniert auch dann weiter, wenn die Annahme dahinter nicht mehr stimmt. Deshalb mein Rat für den Einstieg: Automatisieren Sie zuerst das, was Sie ohnehin schon manuell und zuverlässig machen.
9:42 Und richten Sie jede Automatisierung so ein, dass Sie sie in fünf Sekunden wieder abschalten können. Dann ist sie ein Gewinn und kein neues Problem. Fragen und Material unter www.HCO.de.
Lieber mit Trainer? Dieses Modul ist Teil unserer Team-Schulungen — mit Übungen, Ihrem eigenen Code und Fragen, die ein Video nicht beantwortet. Mehr erfahren →