
Praxistipps — Das reicht zum Loslegen
Der Kern des Ratchets in einem Satz: Bei jedem Feature muss hurl –test bestehen, dann weiter. Das ist der Ratchet. Wie ein Zahnrad, das nicht zurueckdreht — einmal bestandene Tests brechen nicht mehr.
“Fertig!” nicht glauben. Die KI ist optimistisch. Bei 527 Funktionen macht sie 40 und sagt “Fertig”. Pruefe mit Zahlen — TODO ist 0 = fertig. Bis dahin nicht fertig.
An den Agenten bei Massenarbeit:
An den Agenten: “Fuehre tsma next aus und schreibe Tests fuer die TODO-Funktion. Wenn der Test besteht, gehe mit tsma next zur naechsten. Wiederhole bis ‘All functions complete!’ erscheint.”
Diese Wiederholung ist alles. tsma next bestimmt die naechste Aufgabe, der Verifizierer (go test, hurl –test etc.) urteilt, die Maschine sagt “Ende”. Die KI generiert nur.
Weise keine Methode an, sondern einen Vertrag. Nicht “Mach TDD”, sondern “Dieser Test muss bestehen.”
Warum man so anweisen muss
Ratchet-Schraubenschluessel
Drei Regeln genuegen:
- Immer nur ein Element zeigen. Der Agent kann nicht ueberspringen.
- Bestehen fuer Naechstes. Kein Ueberspringen.
- Alles bestanden = Stopp. “Fertig” sagt die Maschine.
Fuenf Prinzipien
Prinzip 1: Abschlussbedingung ist maschinell. pass/fail. Nicht “sieht gut aus”.
Prinzip 2: PASS ist unveraenderlich. Bestandenes wird nicht wieder geoeffnet.
Prinzip 3: LLM generiert nur. Code generieren, Tests schreiben — das ist die LLM-Rolle. Was zu aendern, ob bestanden, was als naechstes, ob fertig — das entscheidet die Maschine.
Prinzip 4: Dem Agenten wird das Abschlussurteil entzogen. “Fertig” vom LLM = 40 Stopp. “Fertig” von der Maschine = 527 Stopp.
Prinzip 5: Verifizierer muss deterministisch sein. Gleiche Eingabe = gleiches Ergebnis. Maschinell pruefbar. Fortsetzbar. Lokalisiertes Feedback.
tsma — Praxistool fuer Ratchets
tsma ist ein CLI-Tool fuer Go, TypeScript und Python. Ein einziger Befehl: tsma next.
$ tsma next # Zeigt naechste Funktion ohne Test
→ Agent schreibt Test
$ tsma next # Erkennt neuen Test, fuehrt aus, misst Abdeckung
→ 100%? PASS, naechste Funktion
→ <100%? Zeigt unabgedeckte Zweige mit Zeilennummern
Wiederholen bis “All functions complete!”
527 Funktionen: Messergebnis
| Ergebnis | Anzahl | Anteil |
|---|---|---|
| PASS (100% Zweigabdeckung) | 246 | 46,7% |
| DONE (Best-Effort) | 281 | 53,3% |
| TODO (unbearbeitet) | 0 | 0,0% |
TODO ist 0. Alle 527 Funktionen bearbeitet. Der Ratchet hat den Agenten bis zum Ende getrieben.
Agenten sterben. Fortschritt ueberlebt.
Agenten stuerzen immer ab — Token-Limit, Netzwerkfehler, Sitzungsabbruch. tsma speichert den Fortschritt in .tsma/session.json. Neuer Agent → tsma next → dort weitermachen, wo der letzte aufgehoert hat.
Reins Engineering Gesamtkurs
| Lektion | Titel |
|---|---|
| Lektion 1 | Wie man KI anleitet |
| Lektion 2 | Warum man KI nicht trauen kann |
| Lektion 3 | Apps die nicht kaputtgehen |
| Lektion 4 | Entscheidungen aus dem Code heraus |
| Lektion 5 | KI mit Zuegeln |
| Lektion 6 | Bestanden heisst gesperrt |
| Lektion 7 | Schmeichelei umkehren |
| Lektion 8 | Die Fabrik des Agenten |
| Lektion 9 | Automatisierung jenseits des Codes |
| Lektion 10 | Das Gesetz der Daten |
Quellenangaben
- TDAD, ACM AIWare 2026 — Prozedurale Anweisung “Mach TDD” verschlechtert Regression (6,08% → 9,94%), Bereitstellung konkreter Testdateien reduziert um 70% (6,08% → 1,82%).