← Zurück zur Übersicht

KI-Agenten schreiben schneller, als einer lesen kann. Wer hält da eigentlich den Code zusammen?

Am Wochenende ist ein Vortrag von Dan Adler online gegangen, dem Chef von Sourcegraph, Titel sinngemäß: KI-Agenten machen große Codebasen kaputt (YouTube, Zusammenfassung bei AI Brief). Seine Beobachtung ist, dass die Agenten eine Welle an Code produzieren und alte, große Codebasen dadurch anfangen zu verwittern. Doppelter Code, Standards, die langsam auseinanderlaufen, wacklige Abhängigkeiten und neue Lücken.

Vorab, damit das fair bleibt. Sourcegraph verkauft genau dafür ein Werkzeug, das Änderungen über tausende Repos auf einmal macht und pro gemergter Änderung abrechnet (Sourcegraph Blog). Der Vortrag ist also auch Vertrieb. Klar. Trotzdem hab ich beim Zugucken ein paar Mal genickt. Kennen wir im Kleinen halt genauso.

Die Zahlen dazu kommen von Anthropic selbst

Wie groß die Welle ist, hat Anthropic Mitte September ziemlich offen aufgeschrieben. Dort schreibt Claude laut eigener Aussage rund 80 Prozent des Codes, die Entwickler liefern achtmal so viel Code pro Quartal wie in den Jahren 2021 bis 2025, die Zahl der Tests ist um das Zehnfache gewachsen und die CI-Jobs in sechs Monaten um das 25-Fache (Claude Blog). Die haben ihre Testinfrastruktur umgebaut, damit das überhaupt noch durchläuft.

Das ist natürlich ein Konzern mit sehr vielen Entwicklern. Aber die Richtung kennt jeder, der mit Claude Code oder Cursor arbeitet. Es entsteht in einer Stunde mehr Code, als man früher an einem Tag geschrieben hat, und irgendwer muss den ja auch noch lesen. Adler sagt dazu sinngemäß, der Engpass ist inzwischen, was das Modell vom Rest des Codes überhaupt sieht. Was der Agent nicht findet, baut er halt neu.

Wie das bei uns aussieht

Genau das ist der Punkt. Typisches Beispiel, so oder so ähnlich hat das wohl jeder schon gehabt: Der Agent soll eine Datumsformatierung einbauen, guckt in die Datei, in der er gerade arbeitet, findet nichts und schreibt sich eine eigene Funktion. Dass zwei Ordner weiter schon ein Helper genau dafür liegt, hat er nicht gesehen, weil er nicht gesucht hat. Funktioniert, Tests grün, alles gut. Aber jetzt gibt es die Logik zweimal, und beim nächsten Mal dreimal mit leicht anderen Werten. Falsch ist das ja nicht mal. Merkt halt keiner, bis irgendwas an einer Stelle geändert wird und an den anderen beiden nicht.

Bei unserem Schnitt-Tool hatten wir mal einen Fehler, der Wörter abgeschnitten hat, und am Ende der Korrektur waren 460 Zeilen weniger Code da und das Ergebnis besser. KI baut gerne iterativ, damit es für sie lesbar bleibt. Wer Korrekturen so durchzieht, muss zwischendrin entweder selbst lesen oder einen zweiten Agenten parat haben, der fragt, ob das Ganze nicht zu groß geworden ist.

Deshalb liegt bei uns in jedem Repo eine Datei mit Regeln, die der Agent vor jeder Änderung liest. Da steht ziemlich weit oben, dass erst geguckt wird, ob es den Service, die Komponente oder den Helper schon gibt, und dass niemals parallel ein zweiter gebaut wird. Ab dem zweiten Vorkommen wird überlegt, ab dem dritten ausgelagert. Abstände und Farben kommen aus festen Werten und nicht aus dem Bauch. Klingt spießig, ist es auch. Aber ohne das läuft der Stil nach ein paar Wochen in jede Richtung. Jede Sitzung fängt ja bei null an und keiner hat den ganzen Code im Kopf. Der Agent schon gar nicht.

Was man bei sich prüfen kann

Wenn ihr Software habt, die gerade mit KI weiterentwickelt wird, egal ob intern oder von einem Dienstleister, sind es im Grundsatz vier Fragen:

  1. Gibt es aufgeschriebene Regeln im Projekt, die der Agent vor dem Schreiben liest? Also als Datei im Repo. Im Kopf vom Entwickler zählt nicht.
  2. Steht da drin, dass erst gesucht und dann gebaut wird? Das ist die eine Regel, die am meisten Wildwuchs verhindert.
  3. Liest jemand gegen diese Regeln, bevor etwas live geht? Grüne Tests sagen nur, dass es läuft, nicht, ob es dasselbe jetzt zweimal gibt.
  4. Werden die Abhängigkeiten regelmäßig geprüft? Wir lassen das inzwischen täglich laufen, weil so ein Agent auch mal ein neues Paket reinzieht, wo eine Zeile gereicht hätte.

Der erste Punkt ist in einer Stunde erledigt und bringt am meisten. Der dritte ist der teure. Da steckt ein Mensch Zeit rein. Und das ist ehrlich gesagt der Teil, den man bei aller Geschwindigkeit nicht wegsparen sollte.

Unser Regelwerk ist inzwischen so weit, dass wir es in neue Projekte einfach mitnehmen. Wer mal sehen will, wie das bei uns aussieht, oder seine eigene Codebasis mit so einer Brille durchgehen lassen will, meldet sich gern. Mich würde aber auch interessieren, ob ihr das schon merkt. Wird euer Code mit KI eigentlich aufgeräumter oder eher voller?

Falls du mit mir arbeiten willst

Lass uns reden – ich sage dir ehrlich, ob ich helfen kann.

Kontakt aufnehmen