NCA Social Media
Erstellt:
Aktualisiert:
Autor:
Roland Golla
Vier grüne Tore mit gelbem Schriftzug QUALITY GATES, Kiste passiert die Stufen Türsteher stoppt Kiste mit Fragezeichen vor gelbem Schild UNKNOWN Grüne Prüfschablone mit gelbem Schriftzug SATISFIES, Würfel passt unverändert hindurch

KI Code mit Leitplanken: AI Coding Guidelines für TypeScript Projekte

KI generierter Code im Frontend: was er ohne Regeln kostet

Der Agent liefert eine Komponente, der Bundler baut sie, der Deploy läuft durch. Auffällig wird die Sache erst, wenn im Formular ein Feld leer bleibt, für das es keine Fehlermeldung gibt. KI generierter Code fällt im Frontend nicht um, er zeigt einfach nichts an.

AI Coding Guidelines sind die Antwort darauf. Rules Dateien, Spezifikationen, Tests und Quality Gates legen in eurem bestehenden Astro, React oder Vue Projekt fest, wie ein KI Agent arbeiten darf und was erfüllt sein muss, bevor sein Ergebnis live geht. Ob ihr dabei mit Cursor, GitHub Copilot, Claude Code, Codex oder OpenCode arbeitet, spielt für die Regeln keine Rolle.

Der Preis für das Gegenteil steht in keiner Modellrechnung. Er steht in den Stunden, die später jemand mit dem Nachbauen von Zusammenhängen verbringt, und in der dritten und vierten Variante von etwas, das im Projekt längst existiert. Jede davon wird ab dann mitgepflegt.

Der Grund ist banal. Dem Agenten fehlt alles, was sich ein Mensch im Team über Reviews, Nachfragen und Gespräche nebenbei zusammensammelt. Was nicht im Repository steht, existiert für ihn nicht. Also erfindet er es, plausibel und falsch. In einem neuen Projekt fällt das kaum auf, in einer gewachsenen Codebasis sofort.

CYPRESS.IO Ambassador und IT Consultant für QA Engenieering und Qualität in PHP Projekten.

Frontend 2025: Optimieren Sie Ihre Webseite mit Astro JS und nutzen Sie die Vorteile der Barrierefreiheit

Optimieren Sie Ihre Webseite mit Astro JS und nutzen Sie die Vorteile einer schnellen, sicheren und barrierefreien Webseite. Erfüllen Sie die gesetzlichen Anforderungen und verbessern Sie die Benutzererfahrung Ihrer Webseite. Mit Astro JS können Sie die Ladezeit reduzieren, die Sicherheit maximieren und die SEO-Optimierung verbessern. Kontaktieren Sie uns, um mehr zu erfahren und um Ihre Webseite auf ein neues Level zu heben.

Astro JS Frontend E-Mail Kontakt

Coding Guidelines für KI Agenten in bestehenden Projekten einführen

Türsteher stoppt Kiste mit Fragezeichen vor gelbem Schild UNKNOWN

TypeScript strict Mode einführen: der Compiler als Quality Gate

Ein KI Agent hat kein Gefühl dafür, ob etwas stimmt. Er hat ein Gefühl dafür, ob etwas plausibel aussieht. Das reicht für einen Entwurf und nicht für einen Merge.

Im Frontend gibt es genau eine Instanz, die unbestechlich antwortet und die der Agent selbst lesen kann: den TypeScript Compiler. In vielen gewachsenen Projekten ist er halb abgeschaltet. Der strict Mode steht auf false, Parameter ohne Typ gelten stillschweigend als beliebig, und an den heiklen Stellen steht ein as, das jede Prüfung wegräumt. Der Agent bekommt dann nichts zurück und produziert weiter.

Den strict Mode in einem bestehenden Projekt einzuführen ist deshalb der erste Schritt, und zwar in Stufen, damit die Zahl der Fundstellen bearbeitbar bleibt. Danach leiten wir die Regeln daraus ab. Fremde Daten kommen als unknown herein und werden geprüft, Konfigurationsobjekte hält satisfies gegen ihren Zieltyp, jeder switch über einen Union Type endet im Exhaustive Check, und ein as braucht eine Begründung im Kommentar.

Das sind vier Zeilen in der AGENTS.md. Sie sehen unspektakulär aus und nehmen einer ganzen Fehlerklasse den Boden, weil der Agent seine Annahmen offenlegen muss, statt sie wegzucasten.

Dazu kommt die Trennung von Typprüfung und Build. Bundler wie Vite entfernen Typinformationen und bauen weiter, egal wie kaputt die Typen sind. Erst als eigener Schritt wird der Type Check zum Quality Gate und macht die Pipeline rot, statt den Fehler still ins Bundle zu schieben.

KI Kosten im Team steuern: Token Budgets, LiteLLM und MCP Server

Sobald mehr als eine Person mit Agenten arbeitet, wird aus der Spielerei ein Posten in der Buchhaltung. Ohne zentrale Stelle weiß niemand, welches Modell wie oft läuft und was am Monatsende zusammenkommt.

Wir stellen LiteLLM als Proxy vor die Modelle. Jeder Aufruf geht darüber, egal ob er bei einem lokalen Modell über Ollama landet oder bei einer Cloud API. Verbrauch und Kosten stehen damit pro Nutzer und pro Projekt auf einem Dashboard, statt verstreut in den Abrechnungen einzelner Anbieter.

Darauf setzen harte Budget Limits. Ist der Topf leer, leitet der Proxy nicht mehr weiter. Das ist im Moment unbequem und verhindert genau den Fall, in dem ein Agent über Nacht im Kreis läuft und die Summe erst auf der Rechnung auffällt.

Über dieselbe Stelle verteilen wir die MCP Server. Wer welchen Server erreichen darf, wird zentral vergeben statt in jeder lokalen Konfiguration einzeln gepflegt. Neue Kollegen bekommen den passenden Satz an Werkzeugen, ohne dass Zugangsdaten per Chat wandern.

Beim Datenschutz gilt bei uns eine klare Trennung: Coding aus der Cloud, Datenverarbeitung aus dem eigenen Netzwerk. Große Coding Modelle laufen über EU souveräne Anbieter, der Agent arbeitet gegen eine lokale Entwicklungsumgebung mit Testdaten und nie gegen echte Bestände. Wer ganz ohne externe Anbieter auskommen will, findet den Weg unter Self Hosted KI im Unternehmen mit Mandantentrennung und Audit Logging.

Was ein KI Agent im bestehenden Projekt für euer Team ändert

Der größte Effekt zeigt sich nicht beim Schreiben, sondern im Review. Wenn Struktur, Typen und Testpflicht vorgegeben sind, muss im Pull Request niemand mehr aushandeln, wie etwas gemacht werden soll. Diskutiert wird über das Was und nicht mehr über das Wie.

Das Code Review von KI Code ist ohnehin die Stelle, an der die meiste Zeit verbrennt. Jemand liest einen Diff, den in dieser Form niemand geschrieben hat, und sucht nach Annahmen, die nirgends stehen. Regeln und Gates nehmen einen Teil dieser Arbeit vorweg, damit im Review nur noch der Rest übrig bleibt.

Neue Kollegen sind schneller drin, weil das, was sonst über Nachfragen und Flurgespräche weitergereicht wird, als Datei im Repository steht. Dieselbe Datei liest der Agent. Was ihr für Menschen aufschreibt, wirkt gleichzeitig als Leitplanke für die Maschine, und das ist der eigentliche Trick an der Sache.

Wir arbeiten dabei nicht neben euch, sondern mit euch. Die Guidelines ziehen wir an einem echten Ticket aus eurem Backlog durch, in Pair Programming Sessions und gemeinsamen Reviews. Bei Never Code Alone beraten Entwickler, die selbst im Code stehen. Roland Golla ist der Gründer, Cypress Ambassador und hat Tests zum TYPO3 Core beigetragen. Automatisiertes Testen läuft bei uns seit 2013.

Soll das Wissen dauerhaft im Team bleiben, passt das KI Training für Entwicklerteams. Die Methodik dahinter steht bei Exact Coding und in den Vibe Coding Best Practices, der Aufbau der Regeldateien bei Rules Dateien für KI Coding Agents.

Quality Gates in der Pipeline: Releases und Shipzeit mit KI Code

Der Deploy ist selten das Problem. Das Problem ist der Zustand, den er verteilt. KI generierter Code fällt im Frontend nicht um, er zeigt eine leere Stelle, und die entdeckt irgendwann jemand in der Oberfläche statt vorher im Log.

Wir ziehen den Zeitpunkt, an dem ein Fehler auffällt, deshalb nach vorne. Type Check, Linter mit Type Awareness, Vitest und Cypress laufen als eigene Quality Gates in der Pipeline, egal ob ihr GitLab CI, GitHub Actions oder etwas anderes fahrt. Was dort rot wird, geht nicht in den Hauptbranch. Aus einem Rollback am Freitagabend wird damit ein roter Job am Dienstagvormittag.

Für die Shipzeit heißt das in der ersten Woche: es kostet Tempo. Danach nicht mehr. Zurück kommen kürzere Reviews, weniger Rückfragen und Pull Requests, die durchlaufen statt zweimal zurückzukommen. Bis zum ersten belastbaren Stand rechnen wir mit 15 bis 30 Tagen. Regeln stehen, die ersten Gates laufen, der Agent arbeitet im Alltag mit.

Der Nebeneffekt ist Planbarkeit. Wenn jede Änderung dieselben Stufen durchläuft, hängt ein Release nicht mehr davon ab, wer es geschrieben hat und wie viel Zeit für das Review übrig war.

Wie das in der Pipeline aussieht, steht bei den Vibe Coding CI CD Pipelines und bei AI Code in Produktion. Die Stufen im Detail beschreiben die Quality Gates für KI Code. Gewachsenen Code räumt AI Slop Refactoring auf, und wenn der Bestand vorher geprüft werden soll, helfen der Codebase Audit für KI generierten Code und der Vibe Coding Security Audit.

Was AI Coding Guidelines kosten und was ihr dafür bekommt

Am Anfang steht ein kostenloses Kennenlernen. Danach schätzen wir den Aufwand für euer Projekt ein und rechnen minutengenau ab. Pakete, Mindestlaufzeiten und Festpreise gibt es bei uns nicht, weil der Aufwand am Zustand eurer Codebasis hängt und nicht an einer Preisliste.

Nach der Einführung bleibt eine Begleitung von wenigen Tagen im Monat sinnvoll. Regeln, die nicht mit dem Projekt mitwachsen, werden nach ein paar Monaten ignoriert. Das ist kein Werkzeugproblem, sondern der übliche Verfall von Dokumentation, den man von Anfang an einplanen sollte.

Die zweite Kostenseite sind die Modelle selbst. Über den Proxy stehen Verbrauch und Kosten pro Nutzer und pro Projekt auf einem Dashboard, harte Budget Limits stoppen die Weiterleitung, wenn der Topf leer ist. Ein Agent, der über Nacht im Kreis läuft, fällt damit sofort auf und nicht erst auf der Monatsrechnung.

Was ihr behaltet, gehört euch. Jede Regel liegt als offene Datei in eurem Repository, die Werkzeuge dahinter sind Open Source, und ihr macht ohne uns weiter. Was wir bei euch einbauen, betreiben wir selbst, von der eigenen Website bis zur Open Source Arbeit. Fällt beim Aufsetzen etwas Grundsätzliches auf, sagen wir es auch dann, wenn es gerade nicht passt.

Den Rahmen setzt das Frontend Development, den Einstieg über das Frontend hinaus das Vibe Coding Consulting. Das PHP Gegenstück zu dieser Seite sind die NCA PHP AI Coding Guidelines. Die einzelnen Bausteine der Regeln stehen im NCA TypeScript Glossar: unknown statt any, satisfies und der never Type. Für die Systemgrenze kommt Zod dazu, für Unit Tests Vitest, toten Code räumen Knip und Fallow weg. Die Grundlagen zur Sprache stehen im TypeScript Glossareintrag, den Weg in den strict Mode mit Astro und das Aufräumen überladener Oberflächen mit JavaScript ablösen haben wir separat beschrieben.

Häufige Fragen zu AI Coding Guidelines für TypeScript

Was in Erstgesprächen und beim Aufsetzen immer wieder auf den Tisch kommt.

Was sind AI Coding Guidelines für TypeScript Projekte?

Ein Regelwerk aus Rules Dateien, Spezifikationen, Tests und Quality Gates für bestehende Astro, React und Vue Projekte. Es legt fest, wie ein KI Agent in eurem Code arbeiten darf und welche Bedingungen erfüllt sein müssen, bevor sein Ergebnis in den Hauptbranch geht. Am Ende liegt alles als offene Datei bei euch im Repository.

Für welche TypeScript Projekte lohnen sich AI Coding Guidelines?

Für gewachsene Frontends mit mehreren Entwicklern, in denen Agenten schon mitarbeiten oder bald sollen. Je länger ein Projekt läuft und je mehr Muster nebeneinander existieren, desto größer der Effekt. Bei einem frischen Prototyp mit einer Person reichen strict Mode und ein Type Check in der Pipeline.

Wie lange dauert die Einführung von AI Coding Guidelines?

15 bis 30 Tage bis zum ersten belastbaren Stand: Regeln stehen, die ersten Gates laufen, der Agent arbeitet im Alltag mit. Das untere Ende gilt für Projekte mit Versionskontrolle, Tests und laufender Pipeline. Danach folgt eine Begleitung von wenigen Tagen im Monat.

Was kostet die Einführung?

Erst ein kostenloses Kennenlernen, danach eine Aufwandsschätzung für euer Projekt und minutengenaue Abrechnung. Feste Pakete und Mindestlaufzeiten gibt es nicht, weil der Aufwand am Zustand eurer Codebasis hängt und nicht an einer Preisliste.

Geht das auch ohne TypeScript im Projekt?

Nur eingeschränkt. Fast alle Regeln setzen darauf, dass der Compiler etwas prüfen kann, und genau diese Instanz fehlt in reinen JavaScript Projekten. Wir starten dann mit TypeScript in den kritischen Bereichen oder mit Typprüfung über JSDoc.

Funktionieren AI Coding Guidelines mit jedem KI Agenten?

Ja. Die Regeln liegen als AGENTS.md im Repository und funktionieren mit jedem Agenten, der Regeldateien liest. Wir arbeiten selbst mit OpenCode und Open Weight Modellen, richten die Regeln aber werkzeugunabhängig ein. Ein Wechsel soll euch nicht das Regelwerk kosten.

Was passiert mit den bestehenden any Stellen?

Die verschwinden nicht in einem großen Pull Request. Zuerst machen wir sichtbar, wie viele es sind, dann kommen die Ränder dran: API Zugriffe, Formulare, catch Blöcke. Der Rest folgt nach Nutzen sortiert, also zuerst die Dateien, die häufig angefasst werden.

Bremsen die Regeln unsere Entwicklung aus?

In der ersten Woche kostet es Tempo, danach nicht mehr. Der Gewinn liegt im Review: Wenn Struktur, Typen und Tests vorgegeben sind, muss im Pull Request niemand mehr aushandeln, wie etwas gemacht werden soll. Das spart mehr Zeit, als das Aufsetzen gekostet hat.

Was unterscheidet eine Spezifikation von einem Prompt?

Der Prompt ist nach der Sitzung nicht mehr auffindbar. Die Spezifikation liegt versioniert im Repository und nennt Ziel und Akzeptanzkriterien. Im Review vergleicht ihr Ergebnis und Dokument, statt aus dem Code zu rekonstruieren, was gemeint gewesen sein könnte.

Reicht nicht einfach eine gute AGENTS.md?

Das ist der häufigste Irrtum. Eine Regeldatei beschreibt Absichten und prüft nichts. Erst Type Check, Linter und Tests machen daraus etwas, an dem sich der Agent messen lassen muss. Regeln ohne Gates sind eine Bitte, Regeln mit Gates sind eine Bedingung.

Arbeitet ihr mit unserem Team oder liefert ihr nur ab?

Wir ziehen die Guidelines an einem echten Ticket aus eurem Backlog durch, in Pair Programming Sessions und gemeinsamen Reviews. Ziel ist, dass ihr ohne uns weitermacht. Alles liegt offen im Repository, die Werkzeuge dahinter sind Open Source.

Passt das in ein Monorepo?

Ja, und dort zahlt es sich besonders aus. Eine schlanke Basisdatei auf Wurzelebene, dazu pro Paket die Regeln, die nur dort gelten. Der Type Check läuft je Paket, damit ein Fehler zeigt, wo er entstanden ist, statt eine Sammelmeldung über das ganze Repository zu erzeugen.

Gibt es AI Coding Guidelines auch für PHP Projekte?

Ja, als eigene Variante mit PHPStan, Rector und PHPUnit an Stelle von Compiler, Linter und Vitest. Die Methodik ist dieselbe: Regeln aus dem Projekt ableiten, Spezifikationen statt Prompts, Tests und Quality Gates als Bedingung. Teams mit beiden Stacks bekommen beide Varianten nach demselben Muster.

KI Coding Tools, Datenschutz und DSGVO im Entwicklerteam

Die konkreten Fragen zu Konfiguration, Pipeline und dem Umgang mit euren Daten.

Welche Quality Gates baut ihr in die Pipeline?

Vier Stufen nacheinander: Type Check als eigener Schritt neben dem Build, Linter mit Type Awareness, Unit Tests mit Vitest und End to End Tests mit Cypress. Jede Stufe kann rot werden, und was rot ist, wird nicht gemergt, egal ob ein Mensch oder ein Agent es geschrieben hat.

Warum ist der Type Check ein eigener Schritt?

Weil Bundler Typinformationen entfernen und weiterbauen, ohne zu prüfen. Läuft die Typprüfung nur nebenbei im Build, fällt ein Fehler nie auf. Als eigener Schritt macht sie die Pipeline rot, und der Fehler landet dort statt in der Oberfläche.

Was ändert ihr in der tsconfig?

Der strict Mode geht an, dazu gezielt noImplicitAny und die Behandlung von Fehlern im catch Block als unknown. In gewachsenen Projekten stufenweise, damit die Zahl der Fundstellen bearbeitbar bleibt und die Pipeline zwischendurch grün wird.

Warum Cypress und nicht Playwright?

Cypress läuft bei uns seit Jahren in Kundenprojekten und in der eigenen Entwicklung, und Roland Golla ist Cypress Ambassador. Wir empfehlen, was wir täglich selbst fahren, und nicht ein Werkzeug, dessen Eigenheiten wir nur aus der Dokumentation kennen.

Wie verhindert ihr, dass der Agent Tests einfach anpasst?

Über Regel und Review. In der AGENTS.md steht, dass bestehende Tests nicht verändert werden, um sie grün zu bekommen. Fällt ein Test um, ist das ein Befund und keine Aufgabe für den Agenten. Im Diff sieht man das sofort, wenn man weiß, wonach man schaut.

Was gehört in die AGENTS.md und was nicht?

In die Basisdatei kommt, was in jeder Aufgabe gilt: Struktur, Typregeln, Testpflicht, Verbote. Alles Spezielle liegt in Dateien, die nur bei passenden Aufgaben geladen werden. Jede Zeile kostet Platz im Kontextfenster, und eine überladene Regeldatei wird schlechter befolgt als eine kurze.

Wie geht ihr mit unseren Daten um?

Coding aus der Cloud, Datenverarbeitung aus dem eigenen Netzwerk. Der Agent arbeitet gegen eine lokale Entwicklungsumgebung mit Testdaten und nie gegen echte Bestände. Große Coding Modelle laufen über EU souveräne Anbieter mit Zero Data Retention. Wer ganz ohne externe Anbieter arbeiten will, bekommt ein self hosted Setup.

Laufen die Modelle auf unserer eigenen Hardware?

Die großen nicht, dafür wäre eine Anschaffung nötig, die sich für kein Entwicklungsteam rechnet. Sie laufen über souveräne Anbieter in Europa. Kleine Modelle für Autovervollständigung und einfache Aufgaben betreibt ihr problemlos lokal über Ollama.

Wie behaltet ihr die Kosten im Griff?

Über einen Proxy vor den Modellen. Jeder Aufruf läuft darüber, Verbrauch und Kosten sind pro Nutzer und pro Projekt sichtbar, und harte Budget Limits stoppen die Weiterleitung, wenn der Topf leer ist. Damit fällt ein durchlaufender Agent Loop sofort auf statt erst auf der Monatsrechnung.

Braucht jeder Entwickler eigene MCP Server?

Nein, das wird zentral vergeben, über dieselbe Stelle, die auch die Modelle bereitstellt. Neue Kollegen bekommen den passenden Satz an Werkzeugen, ohne dass jemand Zugangsdaten per Chat weiterreicht oder jede lokale Konfiguration einzeln gepflegt wird.

Wie findet ihr toten Code in einem gewachsenen Frontend?

Mit Werkzeugen, die das Projekt als System betrachten statt einzelne Dateien. Knip findet ungenutzte Dateien, Abhängigkeiten und Exporte, Fallow analysiert den kompletten Modulgraph und zeigt zirkuläre Abhängigkeiten und Architekturverletzungen. Beides ergänzt Compiler und Linter, ersetzt sie aber nicht.

Was passiert mit Daten aus APIs und Formularen?

Die werden an der Systemgrenze validiert und nicht im Code darunter angenommen. Ein Schema beschreibt die erwartete Struktur einmal, prüft zur Laufzeit und liefert den passenden Typ gleich mit. Dahinter arbeitet die Anwendung mit echten Typen statt mit ungeprüften Annahmen.

Bleiben die Guidelines aktuell, wenn sich das Projekt ändert?

Nur wenn sie gepflegt werden, deshalb gehört eine laufende Begleitung von einigen Tagen im Monat dazu. Regeln, die nicht mitwachsen, werden nach ein paar Monaten ignoriert. Das ist kein Werkzeugproblem, sondern der übliche Verfall von Dokumentation, den man einplanen muss.