Eliminierung technischer Schulden mit PHPStan, Rector PHP und PHPUnit. Über 20 Jahre Praxiserfahrung in skalierbaren Backends.
- Aktualisiert:
- Autor:
- Roland Golla
Schema Based AI Coding: Definition
Inhalt
Schema Based AI Coding mit NCA: Schnelle Hilfe vom Experten
Schema Based AI Coding im eigenen Projekt verankern
Finde das passende Angebot für dein Projekt
Anfrage-Konfiguration
Starten Sie Ihre Anfrage
Gesetzliche Konformität & Inklusion. Optimierung von Performance und Conversion durch radikal nutzerzentriertes, universelles Design.
Skalierbare KI-Systeme mit echtem Code Ownership. CI/CD, Backup-Strategien und Infrastruktur, die mit deinem Team wächst.
Anfrage-Konfiguration
Worauf liegt dein Fokus?
Wähle die Expertise, die dein Projekt jetzt am dringendsten benötigt.
Warum Prompts und Specs allein nicht reichen
Ebene 1: Das Schema als Vertrag für die Modellausgabe
{
"name": "create_ticket",
"input_schema": {
"type": "object",
"properties": {
"title": { "type": "string", "maxLength": 120 },
"severity": { "enum": ["low", "medium", "high"] },
"component": { "type": "string" }
},
"required": ["title", "severity"],
"additionalProperties": false
}
}
Ebene 2: Das Schema als Leitplanke im Code
import { z } from 'zod';
export const InvoiceSchema = z.object({
number: z.string().regex(/^RE-\d{6}$/),
netAmount: z.number().positive(),
taxRate: z.union([z.literal(7), z.literal(19)]),
issuedAt: z.coerce.date(),
});
export type Invoice = z.infer<typeof InvoiceSchema>;
Ebene 3: Das Schema als letzte Verteidigungslinie in den Daten
Schema Based AI Coding in PHP und Symfony
final class Invoice
{
public function __construct(
#[Assert\Regex('/^RE-\d{6}$/')]
public readonly string $number,
#[Assert\Positive]
public readonly int $netAmountCents,
#[Assert\Choice([7, 19])]
public readonly int $taxRate,
) {
}
}
Schema Based AI Coding in Astro und TypeScript
import { defineCollection, z } from 'astro:content';
const glossar = defineCollection({
schema: z.object({
title: z.string().max(70),
updated: z.coerce.date(),
tags: z.array(z.string()).min(1),
}),
});
export const collections = { glossar };
Die vier Reifegrade von Schema Based AI Coding
Reifegrade im Überblick
| Stufe | Werkzeuge | Was den Fehler stoppt |
|---|---|---|
| Prompt | Chat, freie Prompts, Notizen im Ticket | Nichts. Der Fehler fällt im Review oder in Production auf |
| Validierung | Einzelne Checks im Controller, manuelle Prüfungen | Der Laufzeitfehler beim Nutzer, nicht der Build |
| Schema First | Zod, JSON Schema, OpenAPI, Symfony Constraints, PHPStan | Compiler und statische Analyse in der CI, vor dem Merge |
| Generiert | Typen, Clients, Migrationen und Fake Daten aus einem Schema | Der Build der abhängigen Artefakte, sofort beim Schemawechsel |
Spec Driven Development und Schema Based AI Coding im Vergleich
Zwei Ebenen derselben Idee
| Kriterium | Spec Driven Development | Schema Based AI Coding |
|---|---|---|
| Artefakt | Markdown, Prosa, Akzeptanzkriterien | Zod, JSON Schema, OpenAPI, Constraints |
| Leser | Mensch und Modell | Compiler, Validator, CI |
| Reichweite | Architektur, Ziel, Scope | Datenform, Typen, Schnittstellen |
| Bei Abweichung | Nichts passiert automatisch | Build oder Test schlägt fehl |
| Typische Schwäche | Spec veraltet unbemerkt | Deckt Absicht und Architektur nicht ab |
Grenzen: Wo Schemas nicht helfen
The goal is to eliminate duplicative type declarations.
Aus der NCA Praxis: Der Vertrag steht vor dem Code
NCA Vibe Coding Consulting
Roland Golla ist Entwickler aus Leidenschaft – seit über 20 Jahren. Er hat hunderte Projekte begleitet, von Legacy-Refactoring bis KI-Integration. Bei Vibe Coding verbindet er das Beste aus beiden Welten: Die Geschwindigkeit von KI-generiertem Code mit der Qualität professioneller Softwareentwicklung. Kein Bullshit, keine Agentur-Floskeln – direkte Hilfe von jemandem, der selbst täglich im Code steckt.
Häufige Fragen zu Schema Based AI Coding
Was ist Schema Based AI Coding 2026?
Schema Based AI Coding heißt, dass ein maschinenlesbares Schema den Vertrag definiert, gegen den ein KI Agent Code schreibt. Zod, JSON Schema, OpenAPI, Symfony Constraints oder Datenbank Constraints legen die erlaubte Form fest. Weicht der generierte Code ab, schlägt der Build oder die Pipeline fehl. Der Fehler wird also von einer Maschine gefunden, nicht erst im Review.
Wie unterscheidet sich Schema Based AI Coding 2026 von Spec Driven Development?
Spec Driven Development beschreibt Anforderungen in Prosa, meist in versionierten Markdown Dateien. Das ist wertvoll für Absicht und Architektur, aber eine Spec kann veralten, ohne dass etwas rot wird. Ein Schema ist ausführbar. Es prüft bei jedem Lauf. Die beiden Ansätze konkurrieren nicht, sie ergänzen sich: Die Spec beschreibt das Ziel, das Schema erzwingt die Einhaltung.
Welche Schemas braucht ein Team 2026 mindestens?
Drei reichen für den Anfang. Erstens ein Schema an jeder Systemgrenze, an der fremde Daten hereinkommen. Zweitens typisierte Datenmodelle, aus denen Typen abgeleitet statt doppelt gepflegt werden. Drittens ein Datenbank Schema mit echten Constraints statt durchgängig nullable Spalten. Wer diese drei Ebenen hat, fängt den größten Teil der typischen KI Fehler automatisch ab.
Funktioniert Schema Based AI Coding 2026 auch in PHP und Symfony?
Ja, und PHP ist dafür sogar gut ausgestattet. Symfony Validator Constraints sichern die Grenze, Doctrine bildet die Persistenz ab, PHPStan und Psalm prüfen statisch, Rector zieht Änderungen automatisiert durch die Codebasis. Für Schnittstellen empfiehlt sich der API First Weg über OpenAPI, damit Client und Server an dieselbe Definition gebunden sind.
Ersetzen Schemas 2026 die Tests?
Nein. Ein Schema prüft die Form, nicht die Bedeutung. Ein Betrag kann typkorrekt und trotzdem falsch berechnet sein. Schemas sind das erste und billigste Quality Gate, danach folgen weiterhin statische Analyse, Unit Tests, funktionale Tests und End to End Tests mit Cypress. Wer Schemas als Testersatz verkauft, tauscht nur eine Illusion von Sicherheit gegen eine andere.
Wie führe ich Schema Based AI Coding in ein bestehendes Projekt ein?
Nicht flächendeckend, sondern an der schmerzhaftesten Grenze zuerst. Meist ist das die Stelle, an der externe Daten hereinkommen oder an der ein Agent regelmäßig Unsinn baut. Dort ein Schema definieren, den Check in die CI hängen, dann die nächste Grenze. Parallel dazu wachsen die Regeln in rules.md oder AGENTS.md mit, damit der Agent den Vertrag kennt.
Was kostet die Einführung bei Never Code Alone?
Wir arbeiten mit einer transparenten Minuten Abrechnung, ohne Pakete und ohne Festpreis. Am Anfang steht ein kostenloses Kennenlernen, in dem wir den Zustand der Codebasis anschauen und den Aufwand gemeinsam schätzen. Erfahrungsgemäß liegt die Einführung bei 15 bis 30 Tagen bis zum ersten verlässlichen Ergebnis, danach ein paar Tage im Monat für die laufende Pflege.
Welche Rolle spielen Structured Outputs und JSON Schema?
Sie sichern die Ausgabe des Modells selbst. Mit einem JSON Schema darf das Modell beim Generieren nur noch Token wählen, die zur Struktur passen. Aus einem hoffentlich gültigen JSON wird ein garantiert gültiges JSON. Dasselbe Prinzip trägt jeden Tool Call und jeden MCP Server, weil dort jeder Parameter typisiert ist, bevor der erste Token fließt.
Machen möglichst große Schemas die Ergebnisse besser?
Nein, meist das Gegenteil. Tief verschachtelte Strukturen mit vielen optionalen Feldern verwirren Modelle und kosten unnötig Kontext. Kleine Schemas mit sprechenden Feldnamen und engen Wertebereichen liefern deutlich stabilere Ergebnisse. Enums schlagen freie Strings, Pflichtfelder schlagen optionale Felder, und additionalProperties auf false verhindert, dass erfundene Felder still mitreisen.
Was hat Schema Based AI Coding mit der DSGVO zu tun?
Mehr als es zunächst wirkt. Aus einem sauberen Datenbank Schema lassen sich realistische Fake Daten erzeugen. Damit arbeiten große Coding Modelle gegen eine lokale Entwicklungsumgebung statt gegen echte Kundendaten. Genau das ist unser Leitmotiv: Coding aus der Cloud, Datenverarbeitung im eigenen Netzwerk. Für gehostete Inferenz in Europa nutzen wir TensorX, für Infrastruktur arbeiten wir mit Conversis zusammen.
Brauche ich dafür zwingend TypeScript?
Nein. TypeScript macht den Weg bequem, weil sich Typen direkt aus dem Schema ableiten lassen. Das Prinzip funktioniert aber in jeder Sprache mit ordentlicher statischer Analyse. In PHP übernehmen PHPStan und Psalm diese Rolle, in Python Ruff und mypy. Entscheidend ist nicht die Sprache, sondern ob die Prüfung in der Pipeline verpflichtend läuft.
Wie verhindere ich, dass der Agent einfach das Schema ändert?
Über zwei Mechanismen. Erstens Regeln: In rules.md oder AGENTS.md steht explizit, dass Schemas nur mit Migration und Begründung geändert werden. Zweitens Prozess: Schemadateien gehören in ein Review, das ein Mensch abnimmt. Ein Agent, der eine Regel umschreiben darf, um sie zu erfüllen, hat keine Leitplanke mehr, sondern eine Ausrede.
Wie wir durch optimierte MCP Response Formate 90% Token eingespart haben. Praktische Anleitung für jeden der MCP Server oder API Tools für KI Agenten baut.