In den letzten Jahren hat die künstliche Intelligenz (KI) in der Technologiebranche einen bemerkenswerten Wandel eingeleitet. Besonders im Bereich der Softwareentwicklung eröffnen sich völlig neue Möglichkeiten, komplexe Projekte schneller und effizienter umzusetzen. Ein interessantes Fallbeispiel bietet der erste Versuch, eine Statuspage mit Hilfe von KI-Agenten zu entwickeln. Dabei werden nicht nur technische Herausforderungen deutlich, sondern auch die Dynamik einer Zusammenarbeit zwischen Mensch und Maschine. Die folgenden Ausführungen geben einen tiefgehenden Einblick in das Projekt, beginnend bei den Beweggründen bis hin zu den wichtigsten Erkenntnissen.
Der Ausgangspunkt eines solchen Projekts kann oft in der Suche nach einer kosteneffektiven und schlanken Lösung liegen. Im Fall der Statuspage war die Motivation, eine Alternative zu teuren SaaS-Angeboten wie Atlassians Statuspage zu schaffen. Bekannte Anbieter verfügen häufig über eine Vielzahl von Funktionen, die den eigenen Bedürfnissen nicht immer entsprechen. Automatische Monitoring-Integrationen, komplexe Workflows und diverse Unternehmensfeatures bleiben in vielen Fällen ungenutzt und erhöhen unnötig die Kosten. Stattdessen wurde der Wunsch formuliert, eine einfache Statusseite zu haben, die manuell gepflegt werden kann und eine unkomplizierte Kommunikation mit den Nutzern während Ausfällen ermöglicht.
Die Herausforderung bestand jedoch darin, ein Tool zu schaffen, bei dem der Fokus auf Klarheit, einfacher Bedienung und überschaubarem Funktionsumfang liegt. Gleichzeitig wollte man die Chance nutzen, etwas Experimentelles auszuprobieren: den Einsatz des KI-Modells GPT-4.1 im Agentenmodus, integriert in die Entwicklungsumgebung Visual Studio Code. Es war ein Experiment, bei dem noch unklar war, wie gut die KI den gesamten Entwicklungsprozess unterstützen kann. Für die Programmierung wurde PHP als bevorzugte Sprache gewählt, konkret das Symfony-Framework.
Diese Entscheidung basierte auf persönlicher Expertise, denn die Überprüfung und das Nachvollziehen von AI-generiertem Code sind einfacher, wenn man sich mit der Technologie gut auskennt. Der initiale Prompt zur KI beinhaltete eine ausführliche Beschreibung der notwendigen Entitäten wie Produkt, Vorfall, Vorfallnachricht und Benutzer. Die Vision war eine einfache Webseite mit ähnlichem Design wie die bekannte Statuspage von Atlassian. Zusätzlich wurde eine API gewünscht, die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) auf den Entitäten ermöglicht. Die KI hatte dabei auch die Freiheit, vom subjektiven Entwurf abzuweichen, wenn sie bessere Ansätze vorschlagen würde.
Die erste Reaktion der KI war überraschend umfangreich. Innerhalb kürzester Zeit generierte GPT-4.1 einen großen Codeblock, verteilt auf mehrere Dateien. Dazu gehörten Datenmodelle, Controller, Templates und sogar CSS-Stile. Die Umsetzung war technisch einwandfrei und funktionierte auf Anhieb.
Allerdings blieb die Kreativität der KI in Grenzen – die vorgeschlagenen Entitäten und Architekturen entsprachen weitgehend der ursprünglichen Vorstellung und einfallsreiche Abwandlungen blieben aus. Die anschließende Phase der Quellcode-Überprüfung war eine Herausforderung. Es stellte sich heraus, dass das Fluten mit fertigen Codezeilen den mentalen Aufwand deutlich erhöhte. Anders als bei selbst entwickeltem Code fehlt oft das Verständnis für die Entstehungsgeschichte und gedankliche Vorüberlegungen. Stattdessen musste der erstellte Code wie ein extern übergebener Projektstand betrachtet und sorgfältig analysiert werden.
Dadurch entstand ein Gefühl, als ob man den vollständigen Quelltext von einem Fremden per E-Mail erhalten hätte und diesen nun beurteilen sollte. Das Testen der API mit Beispieldaten zeigte interessante Defizite. Trotz fehlerfreier Entitäten und sauberer Beziehungen war die KI erstaunlich ungeschickt beim Umgang mit den Daten selbst. Die generierten cURL-Befehle zur Dateneingabe waren oft inkorrekt, vermischten Fremdschlüssel und verfehlten den logischen Ablauf. So sollten zunächst Produkte erstellt werden, darauf Vorfälle folgen und dann Vorfallnachrichten den jeweiligen Vorfällen zugeordnet werden.
Die KI schien diesen Prozess konzeptionell nicht vollständig zu erfassen. Nach einigen vergeblichen Versuchen wurde auf eine manuelle Eingabe der Testdaten gewechselt, die überraschend schnell umzusetzen war, sobald die API-Struktur klar war. Mit realen Nutzdaten wurde die Benutzeroberfläche erstmals sichtbar. Obwohl ein ansprechendes Grundlayout bereits bestand, waren weitere Anpassungen nötig. Die KI konnte dann aber spielend Zusatzwünsche erfüllen.
Beispielsweise ließ sich einfach erreichen, dass farbige Statusfelder gleichmäßig über Produktzeilen verteilt werden und das gesamte Layout responsive auf mobilen Geräten dargestellt wird. Die dazu generierten CSS-Module waren sauber strukturiert und funktionierten fehlerfrei. Aufbauend auf diesem Erfolg ließ sich die KI weitere komplexe Funktionen implementieren. Es wurde der Wunsch geäußert, dass Nutzer Vorfälle per Klick auf rote oder bernsteinfarbene Statusfelder einsehen können, und zwar ohne Neuladen der Seite. Diese Ajax-basierte dynamische Nachladung von Daten wurde von der KI problemlos umgesetzt.
JavaScript-Code zur Abfrage der API, zum Verarbeiten der Antworten und zum Einfügen in den DOM wurde automatisch erstellt. Eine kleine Nacharbeit war nötig, um die Kontainerfarbe an die Statusfarbe anzupassen, doch diese Feinjustierung gelang reibungslos. Allerdings zeigte sich die KI bei kleineren Interaktionen weniger sicher. Das Schließen eines offenen Vorfall-Containers durch Klicken auf ein grünes Statusfeld stellte die KI vor große Probleme. Mehrere Versuche führten zu fehlerhaftem oder widersprüchlichem Code mit Konflikten in Event-Handlern.
Erst mit einer manuellen Kürzung des Skripts konnte dieser einfache Use Case realisiert werden. Diese Diskrepanz zwischen komplexen dynamischen Funktionen und einfachen UI-Logiken war eine unerwartete Erkenntnis. Nach der erfolgreichen Fertigstellung des Frontends war eine Refaktorisierung des Backend-Codes eingeleitet. Die ursprünglich von der KI eingesetzte ApiPlatform war für den schlichten Anwendungsfall als zu umfangreich erkannt worden. Ein sauberer, auf eigene Controller fokussierter Ansatz wurde als Ziel formuliert.
Die KI versuchte zwar, ApiPlatform zu entfernen, kommentierte die entsprechenden Stellen aber nur aus, ohne den Code sauber zu bereinigen. Die manuelle Nacharbeit war notwendig, aber überschaubar. Mit präzisen Anweisungen konnte die KI die gewünschten API-Endpunkte eigenständig entwickeln. Funktionen wie Produktanlage, Produktauflistung, Vorfallverwaltung und Vorfallnachrichten wurden in einem ApiController mit sinnvollen Bezeichnern und effizienten Doctrine-Abfragen implementiert. Die API-Endpunkte funktionierten beim ersten Test problemlos.
Der letzte Schritt des Projekts war der Aufbau eines administrativen Backends. Dabei sollte ein Interface erstellt werden, das direkt mit den neuen APIs interagiert. Navigation mit Schaltflächen, die passende Symbole oder Emojis tragen, wurde gewünscht, um eine intuitive Bedienung sicherzustellen. Die KI erfüllte auch diese Aufgabe überzeugend. Sie gestaltete ein schlankes Admin-Interface mit HTTP-Basisauthentifizierung, übersichtlichem Menü und optisch passgenauen Formularen, die den Stil der öffentlichen Statusseite aufnahmen.
Das gesamte Projekt nahm etwa vier Stunden in Anspruch, verteilt über mehrere Phasen mit Pausen und paralleler Beschäftigung. Die Arbeit erinnerte an eine Zusammenarbeit mit einem talentierten, aber nicht immer verlässlichen Partner. Komplexe, klar definierte Entwicklungsaufgaben wurden meist erfolgreich bewältigt, während einfache logische Abläufe der KI Schwierigkeiten bereiteten. Die Spannung zwischen großem technischem Potential und gelegentlichen Inkonsistenzen dominierte die Erfahrung. Die Konstanz und Weiterentwicklung des Codes durch iterative Anfragen zeigten eine gute Stringenz in der KI-gestützten Entwicklung.
Dabei wurden frühere Architekturentscheidungen meist respektiert und die Erweiterungen sauber eingepasst. Dennoch bleibt die Betreuung und Überprüfung durch den Menschen unverzichtbar, um Qualitätsmängel zu erkennen und einzugreifen. Mit einer stabilen Basis ist nun geplant, das Projekt quelloffen zu machen und möglicherweise als gehosteten Dienst anzubieten. Weitere Verbesserungen wie der Wechsel der Datenbanktechnologie, der Ausbau der Authentifizierung und die Implementierung von Benachrichtigungen etwa via Slack sind auf der Roadmap. Insgesamt stellt das Experiment mit einem KI-Agenten eine vielversprechende Ergänzung zur konventionellen Softwareentwicklung dar.
Für zukünftige Projekte bietet sich dieser Ansatz als spannende Methode an, wobei es gilt, die Stärken und Grenzen der KI gut zu kennen. Zeitersparnis durch Automatisierung steht der mentalen Belastung durch intensive Codebewertungen gegenüber. Erfolgreiche Zusammenarbeit bedeutet nicht Kontrolle abzugeben, sondern eine partnerschaftliche Arbeitsweise zu entwickeln, bei der das Verständnis für den Output und gezielte Interventionen im Mittelpunkt stehen. Die Erfahrung zeigt, dass KI-Agenten als hilfreiche Mitwirkende fungieren können, wenn ihre Besonderheiten richtig eingeschätzt werden.