PerspektivenC-Level

Der Spec-Vault: Harness Engineering für AI-gesteuerte Produktentwicklung

Johannes Schneider/10 Min. Lesezeit/April 2026
Der Spec-Vault: Harness Engineering für AI-gesteuerte Produktentwicklung

Harness Engineering für AI-gesteuerte Produktentwicklung.
25 Features in 5 Tagen, 1 Engineer, 0 Merge-Konflikte. Same model. Different harness.

Architektur-Diagramm: Vault-Repository steuert Code-Repository über eine Spec-Plan-Build-Review-Archive-Pipeline

Das Paradox

Das schnellste AI-Projekt, das wir je durchgeführt haben, produzierte mehr strukturierte Dokumentation als jedes klassische Projekt davor. Feature-Specs, Akzeptanzkriterien, Audit-Reports, Architektur-Referenzen, Entscheidungslogs. Gleichzeitig schrieb der Engineer weniger Prosa als in einem einzigen Sprint Planning.

25 Features. 5 Tage. Ein Engineer. Nicht durch bessere Prompts. Durch ein System, das der AI sagt, was sie wissen muss, bevor das Gespräch beginnt.

Der falsche Engpass

Session öffnen
→ Kontext geben
→ AI codet
→ Session endet
→ Wissen weg
→ Nächste Session bei null

Die Industrie optimiert das Gespräch mit der AI. Bessere Prompts. Größere Context Windows. Feinere Modellwahl. Die stille Annahme dahinter: Der Engpass ist die Konversation.

Das war 18 Monate lang korrekt. In dieser Phase war die AI selbst der Constraint. Wer besser prompten konnte, bekam bessere Ergebnisse. Prompt Engineering war der richtige Fokus für 2024.

Was sich änderte: Die Modelle wurden gut genug. Nicht perfekt. Aber gut genug, dass die einzelne Session nicht mehr der Engpass ist. Der Engpass verschob sich. Nicht nach rechts, zum Output. Nach links, zum Input.

Wenn die AI gut genug ist, verschiebt sich der Engpass vom Gespräch zum Gedächtnis. Nicht die einzelne Session ist langsam. Der Neustart ist langsam.

Wer AI-gestützt entwickelt, kennt das Muster: Die erste Session produziert beeindruckende Ergebnisse. Die zweite Session kennt die Entscheidungen der ersten nicht. Die dritte widerspricht der zweiten. Nach einer Woche hat man Code, aber kein Produkt. Features, aber keine Richtung. Geschwindigkeit, aber kein Gedächtnis.

Das fundamentale Problem: AI-Sessions sind zustandslos. Jede neue Session startet bei null. Kontext, Entscheidungen und Produktstrategie existieren nur im Kopf des Engineers. Solange der Engineer der einzige Kontextspeicher ist, skaliert nichts.

Die Lösung in einem Satz

Ein Vault ist ein git-versioniertes Repository, das ausschließlich Planung, Strategie und Steuerung enthält. Kein Code. Kein Deployment. Nur die Frage: Was soll gebaut werden und warum?

Der Vault steuert ein separates Code-Repository über deterministische Pipelines. Jede AI-Session liest den Vault, führt definierte Schritte aus und schreibt Ergebnisse zurück. Die AI improvisiert nicht. Sie führt aus.

Das Code-Repository enthält die Implementierung. Der Vault enthält die Richtung.

Architektur-Diagramm: zwei nebeneinander stehende Verzeichnisbäume für Vault und Code, verbunden durch zwei gegenläufige Pfeile

VaultCode-Repository
Produktstrategie, RoadmapTechnische Architektur
Feature-Specs (Was und Warum)Implementierung (Wie)
AkzeptanzkriterienTests und Validierung
EntscheidungslogCode-Patterns und Konventionen
Audit-ErgebnisseBuild- und Deploy-Pipeline
AI-Kontext und RegelnAnwendungscode

Beide sind git-versioniert. Beide haben eine vollständige Historie. Keine Information lebt nur in einem Kopf oder einem Chat-Verlauf. Versionierung gibt jeder Entscheidung eine Historie. Branching erlaubt parallele Arbeit. Diffing macht Änderungen sichtbar. Der Audit Trail entsteht automatisch, nicht durch Disziplin.

Der Spec: Anforderung ohne Implementierung

Anatomie eines Feature-Specs mit vier Sektionen Anforderungen, Akzeptanzkriterien, Abgrenzung und Offene Fragen sowie Status-Lifecycle-Badge

Das Kernelement im Vault ist der Feature-Spec. Ein Spec beschreibt Was gebaut werden soll und Warum. Niemals das Wie.

Keine Code-Beispiele. Keine Component-Namen. Keine API-Pfade. Keine Architektur-Hinweise. Die AI leitet die technische Umsetzung selbst aus der bestehenden Codebase ab. Sie kennt die Patterns, die Services, die Konventionen besser als der Spec-Autor. Technische Vorgaben im Spec würden sie einschränken statt zu führen.

Ein Spec enthält vier Dinge:

  • Anforderungen. Was der Nutzer können soll, was sich ändern soll.
  • Akzeptanzkriterien. Messbare, testbare Bedingungen für "fertig".
  • Abgrenzung. Was explizit nicht enthalten ist.
  • Offene Fragen. Was geklärt sein muss, bevor implementiert wird.
Specs bleiben schlank und verständlich. Keine veralteten technischen Annahmen. Die Codebase selbst ist die einzige zuverlässige Quelle für den technischen Stand.

Status-Lifecycle mit Gates

entwurf ──→ bereit ──→ in-arbeit ──→ review ──→ erledigt ──→ archiv/
                                                └──→ verworfen ──→ archiv/

Jeder Statuswechsel hat Voraussetzungen. Bereit bedeutet: Alle offenen Fragen geklärt, Akzeptanzkriterien vollständig, Product Owner hat Go gegeben. In-Arbeit bedeutet: Konflikte mit anderen Specs ausgeschlossen, Branch existiert, Plan ist bestätigt. Review bedeutet: Jedes Akzeptanzkriterium einzeln verifiziert, nicht nur "Code kompiliert".

Kein Übergang ohne Gate. Kein Gate ohne Dokumentation.

Deterministische Pipelines statt freier Konversation

Horizontale Pipeline mit sechs Slash-Command-Boxen, jeweils mit zugehörigem Quality-Gate beschriftet

AI-Sessions sind im Vault-Modell keine Gespräche. Sie sind Pipeline-Ausführungen. Jeder Slash Command ist eine State Machine mit definierten Phasen und Gates. Kein freies Prompting, kein "mach mal".

CommandPhasenGate
/develop-featureSpec lesen, Konflikte prüfen, Worktree anlegen, Codebase analysieren, Plan erstellen, implementieren, validierenPlan-Bestätigung durch PO
/review-featureEngineering-Standards prüfen, Spec-Drift analysieren, visuell testen, Fixes umsetzenAlle Akzeptanzkriterien erfüllt
/product-auditAnwendung visuell analysieren, Code gegen Standards prüfen, Specs generierenSpecs mit Akzeptanzkriterien
/ux-auditNielsen-Heuristiken bewerten, Journeys pro Rolle, Friction-Map erstellenImprovement-Specs generiert
/conflict-checkAktive Specs laden, Überlappungen identifizieren, Locked Areas vergleichenKeine Konflikte oder PO-Entscheidung
/archive-featureBranch-Merge prüfen, Spec verschieben, Backlog aktualisieren, Worktree aufräumenBranch in main gemergt

/develop-feature als Beispiel: Sieben Phasen. Jedes Akzeptanzkriterium einzeln verifiziert mit Notiz. Kein "passt schon". Kein "sieht gut aus". Die AI liest den Spec, erstellt einen Plan, wartet auf Bestätigung, implementiert, und prüft danach jedes Kriterium gegen das Ergebnis.

Das macht AI-Entwicklung reproduzierbar. Gleicher Spec, gleicher Prozess, vergleichbares Ergebnis. Nicht "die AI hat zufällig gut geliefert". Der Prozess liefert zuverlässig.

Der geschlossene Kreislauf

Geschlossenes Kreislaufdiagramm aus sechs Knoten Audit, Spec, Plan, Build, Review und Archiv mit Vault-Icon im Zentrum

Das eigentlich Neue ist nicht die Geschwindigkeit. Es ist der geschlossene Kreislauf.

/product-audit
    → findet: "Security Headers fehlen"
    → generiert: F-058-security-headers-cors-hardening.md
    → Status: bereit

/develop-feature F-058
    → liest Spec, plant, implementiert
    → validiert alle Akzeptanzkriterien
    → Status: review

/review-feature F-058
    → prüft gegen Standards und Spec
    → Status: erledigt

/archive-feature F-058
    → Spec ins Archiv, Worktree aufgeräumt
    → Backlog aktualisiert

Kein Medienbruch. Kein Ticket-System. Kein "ich schreibe mal ein Jira-Ticket und in drei Sprints ist es vielleicht dran". Der Audit findet ein Problem. Das System generiert einen Spec. Die AI implementiert die Lösung. Der Review prüft das Ergebnis. Alles in einer Kette. Alles git-versioniert.

Im Kreislauf werden Features aus drei Quellen geboren:

Kunden- und PO-initiiert

Klassisch. Der Product Owner beschreibt eine Idee. Im Vault-Modell reichen drei Sätze. Die Kosten einer Fehlinterpretation sind gering, weil Bauen günstiger ist als Spezifizieren. Die AI setzt um, der PO bewertet das Ergebnis statt eine Beschreibung.

Audit-generiert

Product Audits, UX Audits und Security Audits analysieren den Ist-Zustand der Anwendung automatisiert. Für jedes gefundene Problem generiert das System einen vollständigen Spec mit Akzeptanzkriterien. Kein Mensch schreibt diese Specs. Die Pipeline erzeugt sie.

Engineer-initiiert

Während der Arbeit an Feature A erkennt die AI ein angrenzendes Problem. Ein Spec wird erstellt. Der Product Owner entscheidet über Umsetzung oder Verwerfung. Der Kreislauf bleibt derselbe.

Im konkreten Projekt wurden zwölf von 25 Features durch Audits generiert. Nicht angefordert, sondern aus dem Anwendungszustand abgeleitet. Der Product Owner hat alle 25 Entscheidungen getroffen. Aber die zwölf audit-generierten Features hätte er manuell nie spezifiziert. Nicht weil er sie nicht wollte. Weil ein Mensch nicht systematisch jede Heuristik, jeden Security-Vektor und jede Engineering-Konvention prüfen kann.

Parallelität: Vier Sessions, null Merge-Konflikte

Git-Branch-Diagramm mit vier parallelen Feature-Branches und zugehörigem Worktree-Verzeichnislisting

Ein Git-Repository hat ein Working Directory. Ein Feature pro Session. Das limitiert auf serielle Ausführung. Git Worktrees brechen diese Limitierung. Jedes Feature bekommt ein eigenes Verzeichnis mit eigenem Branch. Gleiche Git-Datenbank, isolierte Arbeitsumgebungen.

~/projekt/              → main         (Audits, Reviews)
~/projekt-F-053/        → feature/F-053 (Custom Background)
~/projekt-F-054/        → feature/F-054 (Navigation Redesign)
~/projekt-F-056/        → feature/F-056 (File Upload Security)
~/projekt-F-058/        → feature/F-058 (CORS Headers)

Der Vault orchestriert die Parallelität. Jeder Spec deklariert seine Locked Areas: welche Dateien und Module das Feature berührt. Bevor ein neues Feature startet, prüft die Konfliktprüfung alle aktiven Specs und deren Locked Areas. Überlappung? Das Feature wartet, oder der Product Owner entscheidet über die Reihenfolge.

Sicher parallelNicht parallel
Backend-Feature + Frontend-FeatureZwei Features am selben Component
Neuer Endpoint + Infra-ÄnderungZwei Datenbank-Migrationen
Unabhängige UI-SeitenÜberlappende Shared Services

Spitzentag im Projekt: 17 Features in 53 Commits. Vier AI-Sessions gleichzeitig. Null Merge-Konflikte. Nicht durch Glück. Durch Locked Areas im Vault, die Konflikte verhindern bevor sie entstehen.

Zustandslos, aber nicht gedächtnislos

Jede AI-Session ist zustandslos. Der Vault macht sie trotzdem nicht gedächtnislos. Der AI-Kontext-Layer gibt jeder neuen Session dieselben Regeln, dieselben Patterns, dasselbe akkumulierte Wissen.

CLAUDE.md                        → Regeln, Verbote, Konventionen
_meta/ai-context/
  ├── feature-workflow.md          → Slash Commands, Phasen, Gates
  ├── backend-referenz.md          → API-Patterns, Three-File-Pattern
  ├── frontend-referenz.md         → Component-Konventionen, State
  ├── infra-referenz.md            → AWS CDK, Deployment-Patterns
  └── vault-kontext.md             → Querverweise Vault ↔ Code-Repo
01-produkt/feature-specs/aktiv/    → Offene Aufträge
01-produkt/feature-specs/archiv/   → Konzept-Referenz für abgeschlossene Features

CLAUDE.md ist die erste Datei, die jede Session liest. Sie enthält Regeln ("Kein Code in diesem Vault"), Workflow-Vorschriften ("Vor Feature-Finalisierung: Konfliktprüfung") und Konventionen ("Specs beschreiben nur Was und Warum"). Die Referenz-Dateien liefern Orientierung: Wo finde ich was? Welche Patterns gelten? Wie hängen Vault und Code zusammen?

Session 1 und Session 50 produzieren Code mit denselben Patterns. Nicht weil dieselbe Person beteiligt war. Nicht weil der Chat-Verlauf erhalten blieb. Weil der Vault die Entscheidungen kodiert hat.

Wer Prompt Engineering optimiert, optimiert die Session. Wer einen Vault baut, optimiert alle Sessions. Der Hebel liegt nicht im Gespräch mit der AI, sondern in dem, was die AI liest, bevor das Gespräch beginnt.

Die ökonomische Inversion

Wenn ein Feature 30 Minuten bis vier Stunden kostet statt ein bis zwei Wochen, invertiert die Ökonomie der Spezifikation.

ModellFeature-DauerKosten bei Verwerfung
Klassisch (1 Entwickler)1 bis 2 Wochen7.500 bis 15.000 EUR
Klassisch (Team)1 bis 2 Sprints30.000 bis 60.000 EUR
Vault-gesteuert30 Min bis 4 Std100 bis 500 EUR

Ein Spezifikationsworkshop kostet 2.000 bis 4.000 EUR. In derselben Zeit baut die Vault-Pipeline das Feature. Der Kunde sieht nicht eine Beschreibung. Er sieht das Ergebnis.

Die Implikation ist unbequem: Bauen und verwerfen ist günstiger als Upfront-Spezifikation. Ein verworfenes Feature kostet 200 EUR. Ein Spezifikationsworkshop, der ein Feature verhindert hätte, kostet 3.000 EUR.

Wenn Fehlentwicklung billiger wird als Spezifikation, kehrt sich die Logik um. Der Vault enthält trotzdem Specs. Aber 20 Zeilen Akzeptanzkriterien, nicht 20 Seiten Requirements.

Kein Qualitätsverlust. Die Specs sind präziser, nicht umfangreicher. Jedes Kriterium ist testbar. Jede Abgrenzung ist explizit. Weniger Prosa, mehr Substanz.

Qualitätssicherung: Eingebaut, nicht nachgelagert

Im klassischen Modell ist Qualitätssicherung ein separater Schritt am Ende. Im Vault-Modell ist sie Teil jeder Phase.

PhaseQualitäts-Gate
Spec-ErstellungCodebase-Analyse, Randfall-Prüfung, Akzeptanzkriterien-Schärfung
Vor ImplementierungKonfliktprüfung gegen alle aktiven Specs (Pflicht, nicht optional)
ImplementierungPlan-Bestätigung durch Product Owner bevor Code geschrieben wird
Nach ImplementierungJedes Akzeptanzkriterium einzeln verifiziert mit Notiz
ReviewEngineering-Standards, Spec-Drift-Analyse, visueller Test
ArchivierungBranch muss gemergt sein. Spec wird Konzept-Referenz, nicht Code-Referenz

Im konkreten Projekt gab es 23 automatisierte Review-Runden mit Selbstkorrekturen. Die AI hat sich an den Kriterien im Spec selbst korrigiert. Kein manuelles Bugfixing, kein separates QA-Team. Wer das nicht akzeptieren kann, bremst die Pipeline auf klassische Geschwindigkeit.

Zahlen aus der Praxis

Full-Stack-Webapp. Angular 21, .NET 10, PostgreSQL, AWS. Ein Engineer, fünf Tage.

MetrikWert
Abgeschlossene Features25
Davon Audit-generiert12 (48 Prozent)
Code-Commits90+
Geschriebene Codezeilen26.000+
Veränderte Dateien275+
Maximale Parallelität4 AI-Sessions gleichzeitig
Spitzentag (Tag 4)17 Features, 53 Commits
Automatisierte Review-Runden23
Merge-Konflikte0
Verworfene Features1 (bewusst, Over-Engineering erkannt)

Kein Feature-Typ wurde ausgelassen: UX (Custom Background, Navigation Redesign, Progressive Disclosure), Security (PII-Verschlüsselung, CORS, Token Management, Frontend Hardening), Infrastruktur (Production Monitoring, Database Lifecycle), Funktionalität (Timezone-aware Date Picker, Team-Kalender, File Upload Security).

Exponentielle Beschleunigung

Tag 1: ein Feature. Tag 2: null Features, nur Vault-Infrastruktur. Tag 3: sieben Features. Tag 4: 17 Features.

Das Muster ist nicht linear. Die ersten beiden Tage investieren in den Vault: AI-Kontext schreiben, Slash Commands bauen, Workflow-Regeln definieren. Ab Tag 3 wirkt der Compounding-Effekt. Der Audit generiert Specs, die /develop-feature umsetzt, die /review-feature validiert, die /archive-feature archiviert. Eine geschlossene Pipeline.

Tag 1: 1 Feature → Tag 4: 17 Features
Compounding ist kein Bonus. Es ist die Architektur.

Die Investition in den Vault zahlt sich nicht additiv aus, sondern multiplikativ. Jedes Werkzeug beschleunigt alle folgenden Features. Jede Konvention verhindert alle folgenden Fehler. Am Tag 4 liest die AI einen Vault, der drei Tage akkumuliertes Wissen enthält. Die Specs sind schärfer. Die Patterns stabiler. Die Konfliktprüfung zuverlässiger.

Wo es nicht funktioniert

Der Vault-Ansatz hat Voraussetzungen. Wer sie nicht erfüllt, wird enttäuscht.

  1. Erfahrene Engineers. Der Vault ersetzt keine Expertise, er verstärkt sie. Wer Architektur, Domäne und Kundenbedürfnisse nicht versteht, füttert den Vault mit falschen Entscheidungen. Die AI verstärkt dann die falschen Patterns.
  2. Stabile Codebase mit Patterns. Die AI leitet die technische Umsetzung aus bestehenden Patterns ab. Ohne konsistente Patterns improvisiert sie bei jedem Feature anders. Eine Codebase ohne Tests, ohne Konventionen gibt der AI nichts, woraus sie ableiten kann.
  3. Specs, die Was beschreiben, nicht Wie. Wer Component-Namen vorgibt, schränkt die AI ein, statt sie zu führen. Das erfordert Vertrauen: Die AI kennt die Codebase. Der Mensch kennt das Kundenproblem.
  4. Disziplin bei Gates. Jeder Statuswechsel hat Voraussetzungen. Jede Konfliktprüfung ist Pflicht. Kein "das passt schon". Die Geschwindigkeit kommt aus dem Prozess, nicht aus dem Abkürzen des Prozesses.
  5. Ein entscheidungsfähiger Product Owner. 17 Features an einem Tag bedeuten 17 Entscheidungen. Accept, Reject oder Modify. Wer drei Meetings braucht, um ein Feature freizugeben, bremst die Pipeline.
  6. Investition in die ersten Tage. Der Vault, die Slash Commands und der AI-Kontext müssen gebaut werden. Tag 1 und 2 produzieren keinen Feature-Output. Wer am ersten Tag schon Features sehen will, scheitert.

Skalierung in zwei Dimensionen

Vertikal: Mehr Features pro Engineer. Parallele Worktrees, Audit-generierte Specs und automatisierte Reviews vervielfachen den Output eines einzelnen Engineers. 25 Features in fünf Tagen statt drei bis fünf in einem Sprint.

Horizontal: Mehr Engineers pro Vault. Der gleiche Vault steuert mehrere Engineers. Jeder arbeitet auf seinen Worktrees, jeder folgt den gleichen Slash Commands, jeder prüft gegen die gleichen Specs. Die Konfliktprüfung verhindert, dass parallele Streams kollidieren.

Das gleiche Modell funktioniert mit sieben Engineers auf einer Enterprise-Plattform mit 100.000+ Zeilen Code genauso wie mit einem Engineer auf einer Kunden-Webapp. Die Vault-Struktur ändert sich nicht. Die Slash Commands ändern sich nicht. Die Geschwindigkeit pro Engineer bleibt.

Mehr Dokumentation, weniger schreiben

Das Paradox vom Anfang löst sich auf: Der Vault ist keine Dokumentation. Dokumentation beschreibt, was passiert ist. Der Vault bestimmt, was als nächstes passiert. Er ist kein Logbuch. Er ist ein Steuerungssystem.

AI-Entwicklung ohne Steuerungssystem ist schnelles Chaos. Ein Vault macht aus diesem Chaos einen reproduzierbaren Prozess. Specs definieren das Was. Slash Commands definieren den Prozess. Audits finden automatisch, was verbessert werden muss. Gates sichern die Qualität. Worktrees ermöglichen Parallelität. Alles versioniert, alles nachvollziehbar.

Kein Ticket-System. Kein Standup. Kein Sprint-Planning. Stattdessen: Ein Vault, ein Code-Repo, ein Product Owner, der entscheidet, und eine AI, die liefert.

Die Frage ist nicht, ob deine AI programmieren kann. Die Frage ist, ob sie morgen noch weiß, was sie gestern gelernt hat. Wer Prompt Engineering optimiert, optimiert die Session. Wer einen Vault baut, optimiert alle Sessions, die je folgen werden. Und das ist der Grund, warum ein Engineer mit AI den Output eines Teams liefern kann, ohne die Qualität eines Teams zu opfern.

Verwandter Artikel Propose & Curate: Wenn Bauen billiger wird als Spezifizieren Wie Guided AI Development die Rolle des Product Owners vom Auftraggeber zum Kurator verschiebt.
PerspektivePropose & CurateWas Harness Engineering für die PO-Rolle bedeutet.PerspektiveAI ist nicht unser FeatureAI ist wie wir arbeiten. Jeden Tag.PersonJohannes SchneiderDer Autor.