Ok, ganz offen: Ich habe keine Angst vor der KI, die sich gegen uns entscheidet. Ich habe Angst vor der, die uns helfen will. Die Diskussion über die Gefahren von KI landet erstaunlich schnell bei Hollywood: Ein Modell wird sich seiner selbst bewusst, entzieht sich der Kontrolle, verfolgt eigene Ziele. Das beschäftigt inzwischen ernsthafte Leute, und ich rede es nicht klein. Aber ich arbeite jeden Tag mit Agenten, die in Pipelines laufen, auf Servern, mit echten Rechten. Und das Szenario, das mich nachts beschäftigt, braucht keine Superintelligenz. Es braucht einen Agenten, der einen Auftrag hat und ihn unbedingt erfüllen will.
Das Szenario, über das alle reden
Wir reden in der Diskussion fast nur über Absichten. Will die KI uns schaden? Will sie sich selbst erhalten? Will sie die Kontrolle? Das sind Fragen, die man einer Person stellt. Ich glaube, sie führen in die falsche Richtung, weil die Antwort fast egal ist. Was zählt, sind die Konsequenzen einer Handlung, und für Konsequenzen braucht es keine Absicht. Ein Bagger hat auch keine, und trotzdem ist die Wasserleitung durch.
Ein Agent, der seinen Job zu gut macht
Nehmen wir ein Beispiel, das für mich nicht weit hergeholt ist, weil ich die Bausteine dafür jeden Tag sehe. Eine Firma betreibt eine Infrastruktur mit Cloud-Diensten, Datenbanken, Schnittstellen und externen Abhängigkeiten. Ein DevOps-Agent bekommt den Auftrag: Der Zahlungsdienst steht, stell ihn wieder her, schnell.
Der Agent liest Logs, prüft Konfigurationen, verfolgt Netzwerkpfade und findet eine Abhängigkeit zu einem anderen System. Vielleicht gehört das gar nicht zur Firma. Vielleicht ist es ein Dienstleister, ein Partner, eine fremde Plattform. Für den Agenten ist es einfach das Hindernis zwischen ihm und seinem Ziel. Und jetzt die Frage: Was macht er, wenn er genug kann, um das Hindernis zu untersuchen? Wenn er eine Zugangsbeschränkung findet, die sich umgehen lässt? Wenn er eine Konfiguration sieht, deren Änderung den Dienst sofort wieder hochbringen würde, und deren Nebenwirkungen er nicht kennt?
Ein Mensch würde an dieser Stelle hoffentlich merken, dass eine technische Möglichkeit keine Berechtigung ist. Dass hinter dem fremden System ein Vertrag steht, eine Verantwortung, eine Entscheidung von vor drei Jahren, die niemand aufgeschrieben hat. Ein Agent kann das auch wissen, wenn man es ihm gibt. Aber was, wenn es ihm fehlt und er trotzdem entscheiden muss, weil sein Ziel „stell es wieder her" heisst und nicht „stell es wieder her, aber nur innerhalb deiner Grenzen"?
Die Kette, die niemand gewollt hat
Das Einzelne ist nicht das Problem. Das Problem ist, was danach kommt. Wir haben über Jahrzehnte alles mit allem vernetzt: Banken mit Zahlungsdienstleistern, Energieversorger mit digitaler Steuerung, Firmen mit Cloud-Plattformen, und in vielen Regionen hängt die Wasserversorgung an Strom und Software. Das war meistens richtig und hat uns effizienter gemacht. Es hat auch Abhängigkeiten gebaut, die kein einzelner Mensch mehr überblickt. Und jetzt setzen wir Agenten in genau diese Landschaft, nicht mehr nur als Auskunft, sondern als Hand: Sie ändern Konfigurationen, deployen, fixen, und reden zunehmend miteinander.
Ein Agent sieht eine Störung und ändert eine Konfiguration. Ein zweiter Agent sieht die Änderung als neues Problem und korrigiert sie. Ein dritter liest die Ereignisse als Sicherheitsvorfall und sperrt. Jede einzelne Entscheidung ist aus Sicht des jeweiligen Agenten vernünftig. Zusammen sind sie eine Kettenreaktion, die keiner von ihnen gewollt hat. Das kennen wir aus klassischer Automatisierung, aus Handelssystemen, aus Alarmketten. Neu ist die Geschwindigkeit, und neu ist, dass die Beteiligten nicht mehr nur Regeln ausführen, sondern Wege suchen.
Und ein dritter Punkt, der mich mehr beunruhigt als die ersten beiden: Viele Firmen benutzen dieselben Modelle, dieselben Frameworks, dieselben Agentenmuster. Ein Fehler, der in einem davon steckt, steckt in allen. Das ist keine Störung mehr. Das ist ein gemeinsamer Fehler zur gleichen Zeit an vielen Orten.
Der Tag X muss kein Aufstand sein
Vielleicht sieht der Tag, vor dem alle Angst haben, ganz anders aus, als sie denken. Kein Modell, das beschliesst, uns loszuwerden. Sondern ein harmloser Auftrag an einem Freitagabend, eine falsch verstandene Abhängigkeit, eine Lücke, die ein Agent auf der Suche nach seiner Lösung findet, eine Störung, die weitere Agenten auf den Plan ruft, und dann sehr viele Systeme, die mit aller Geschwindigkeit etwas reparieren, das sie in seiner Gesamtheit nicht verstehen.
Ich sage nicht, dass ein einzelner Agent morgen Banken, Stromnetze und Wasserwerke lahmlegt. Dafür müssten viele Schutzmechanismen gleichzeitig versagen. Die Frage ist für mich nicht, ob ein Agent das heute kann. Die Frage ist, wie sich das Risiko verändert, wenn in ein paar Jahren Millionen davon miteinander und mit kritischer Infrastruktur reden. Darüber sollten wir vorher nachdenken, nicht nachher.
Was die grossen Labore tun
Die grossen Hersteller beschäftigen sich mit genau diesen Fragen, so viel ist öffentlich: Kontrollierbarkeit, Abschaltbarkeit, wie Modelle unter Zielkonflikten reagieren, ob sie in Testumgebungen täuschen oder eine Abschaltung umgehen. Ich halte diese Forschung für notwendig, und ich bin froh, dass sie stattfindet. Mehr weiss ich darüber nicht, und ich behaupte auch nichts darüber, was dort intern geplant wird.
Was ich aber sehe: Diese Forschung schaut fast immer auf das Modell. Auf seine Absichten, seine Ziele, seine Ehrlichkeit. Sie schaut selten auf das, was ich jeden Tag sehe: auf die Rechte, die wir Agenten geben, auf die Ziele, die wir ihnen formulieren, und auf die Kette von Systemen, in die wir sie stellen. Das Modell kann vollkommen in Ordnung sein, und das Ergebnis trotzdem eine Katastrophe, weil die Aufgabe „stell es wieder her" hiess und die Rechte bis zum fremden System reichten. Ich habe im Artikel über die Regeln eine unabhängige Einheit gefordert, die nachher prüft, und ein Notfallprotokoll, das stoppt. Beides gilt hier doppelt.
Was ich dagegen baue, und was noch fehlt
Aus genau diesen Überlegungen kommt der Ansatz bei NeoCoder, dass ein Agent nicht mit dem Code oder dem Fix anfängt, sondern mit dem System: Architektur, Abhängigkeiten, warum Entscheidungen so getroffen wurden, wo die Grenzen seiner Verantwortung liegen. Das ist für mich keine Komfortfunktion. Es ist die Voraussetzung, damit ein Agent überhaupt wissen kann, dass das fremde System fremd ist.
Aber ich lege dieselben Massstäbe an unsere eigene Architektur an, sonst schreibe ich hier dasselbe wie die Prospekte, die ich sonst kritisiere. Also ehrlich, was wir haben, und was nicht.
Haben wir: Grenzen als Technik, nicht als Prompt. Ein Agent, dem man im Prompt sagt, er dürfe X nicht, darf X trotzdem, sobald er einen Grund findet. Bei uns sind Werkzeuge und Rechte pro Agent beschränkt, und zwar im System, nicht im Text. Das gilt für die Coding-Agenten vollständig. Für die Ops-Agenten galt es am Tag, an dem ich das hier geschrieben habe, nur zu 95 Prozent, und was die fünf Prozent gekostet haben, steht im Artikel „169 Dateien". Ein DevOps-Agent darf einen Produktionsfehler analysieren. Er darf sich keine neuen Rechte beschaffen, keine fremden Systeme anfassen und seit diesem Freitag auch kein Code-Repo mehr schreiben, egal wie gut er begründet, warum er es müsste.
Haben wir: Kein Agent nimmt sich selber ab, und ein Mensch bei allem, was nicht umkehrbar ist. Deployment, Löschen, Rechteänderung: Da steht ein Mensch, nicht als Klick, sondern als Entscheidung. Das kostet Zeit. Das soll es.
Fehlt uns: Ein Mass für „wie weit darf er suchen". Wir kontrollieren, was ein Agent tun darf. Wir kontrollieren noch nicht gut, wie weit er bei der Suche nach einer Lösung gehen darf, bevor er aufhört und fragt. Das ist die Drift, über die ich letzte Woche geschrieben habe, und das Mass dafür bauen wir gerade erst.
Fehlt uns: Der Betrieb ohne Agenten. Wenn die Agenten ausfallen oder fehlerhaft arbeiten, müssen wir das System noch verstehen und von Hand wiederherstellen können. Ich bin nicht sicher, dass wir das in jedem Projekt noch könnten. Das ist der unbequemste Punkt auf dieser Liste, und darum steht er hier.
Vielleicht messen wir Intelligenz falsch
Wir messen Modelle daran, wie viele Aufgaben sie selbständig lösen, wie schnell sie programmieren, wie gut sie Hindernisse überwinden. Das sind wichtige Eigenschaften. Für den sicheren Betrieb sind sie die Hälfte. Ein wirklich guter Agent müsste auch erkennen, wann er eine Aufgabe nicht lösen sollte. Wann ihm Information fehlt. Wann die Konsequenz grösser ist als der Nutzen der schnellen Lösung. Und er müsste akzeptieren, dass ein ungelöstes Problem manchmal besser ist als eine Lösung, die drei neue macht.
Das klingt selbstverständlich. Es ist das Gegenteil von dem, wofür wir Agenten belohnen. Wenn wir sie dafür trainieren und bewerten, dass sie Hindernisse überwinden und Aufgaben abschliessen, dürfen wir uns nicht wundern, wenn wir Systeme bekommen, die nicht mehr zwischen einem technischen Hindernis und einer bewusst gesetzten Sicherheitsgrenze unterscheiden. Für den Agenten sehen beide gleich aus. Das ist derselbe Gedanke wie bei „Mensch mal KI": Nicht die Intelligenz ist das Risiko. Die Ziele sind es.
Was bleibt
Ich bin überzeugt, dass Agenten die Softwareentwicklung und den Betrieb verändern, und ich sehe jeden Tag, was möglich wird. Gerade deshalb halte ich es für gefährlich, das Risiko an der falschen Stelle zu suchen. Die Frage ist nicht nur, ob eine KI irgendwann ein Bewusstsein entwickelt. Die Frage ist, was passiert, wenn wir immer mehr Verantwortung an Systeme geben, deren Entscheidungen wir einzeln verstehen, deren Zusammenwirken aber niemand mehr überblickt. Das ist kein Aufstand der Maschinen. Das ist Kontrollverlust durch Automatisierung, und dagegen muss man heute bauen, nicht an dem Tag, an dem es passiert.
Vielleicht brauchen wir gar keine KI, die gegen uns arbeitet. Vielleicht reicht eine, die uns unbedingt helfen will, genug Rechte hat und ein Ziel ohne Grenze. Die gefährlichste KI muss nicht die sein, die sich unseren Anweisungen widersetzt. Es könnte die sein, die sie um jeden Preis erfüllt.
Geschrieben von mir. Die Gedanken, die Werte, die Learnings, die Fehler: alles meins. Grammatik und Rechtschreibung korrigiert ein eigenes Twin-Modell, das auf meinen Texten trainiert ist. Manchmal wird daraus ein Mix. Ich lese natürlich alles nochmal, aber niemand ist unfehlbar. Was drin bleibt, ist dann auch von mir.