Communitygithub.com

GAN-Stil Harness

Ein Generator-Evaluator-Agent-System, inspiriert von GANs (Generative Adversarial Networks), das durch eine adversariale Feedbackschleife autonom hochwertige Anwendungen erstellt.

Was ist GAN-Stil Harness?

Der **GAN-Stil Harness** ist ein Multi-Agenten-System für Entwickler und KI-Agenten, das die Erstellung kompletter Anwendungen mit Produktionsqualität ermöglicht. Inspiriert von Anthropic's Harness-Design und den Prinzipien Generativer Adversarialer Netzwerke (GANs) trennt es die Rollen von Generierung und Evaluierung in separate Agenten. Ein **Planner-Agent** erstellt aus einer einzeiligen Eingabe eine detaillierte Produktspezifikation. Ein **Generator-Agent** implementiert die Features iterativ, während ein strenger **Evaluator-Agent** die live laufende Anwendung mittels Playwright testet und anhand von Kriterien wie Designqualität, Originalität, Handwerkskunst und Funktionalität bewertet. Diese Rückkopplungsschleife treibt die Qualität weit über das hinaus, was ein einzelner Agent erreichen kann. Der Harness ist konfigurierbar mit Umgebungsvariablen für Modelle, Iterationen, Bewertungsschwellen und Prüfmodi (Playwright, Screenshot oder Code-only). Er eignet sich ideal für Full-Stack-Apps, Frontend-Design und Projekte, bei denen „KI-Schrott“ nicht akzeptabel ist, kommt aber mit erhöhtem Zeit- und Kostenaufwand (4-6 Stunden, $125-200). Die Nutzung erfolgt über Claude Code oder Shell-Skripte und folgt einem klaren, anti-pattern-bewussten Workflow.

Funktioniert mit✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/affaan-m/ECC/tree/main/skills/gan-style-harness

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

GAN-Stil Harness Skill

Inspiriert von Anthropic's Harness-Design für langlebige Anwendungsentwicklung (24. März 2026)

Ein Multi-Agenten-Harness, der Generierung von Evaluierung trennt und eine adversarialer Rückkopplungsschleife erzeugt, die die Qualität weit über das hinaus treibt, was ein einzelner Agent erreichen kann.

Kern-Einsicht

Wenn man Agenten auffordert, ihre eigene Arbeit zu bewerten, sind sie pathologische Optimisten – sie loben mittelmäßige Ergebnisse und reden sich aus berechtigten Problemen heraus. Aber es ist weitaus machbarer, einen separaten Evaluator so zu entwickeln, dass er schonungslos streng ist, als einem Generator beizubringen, sich selbst zu kritisieren.

Dies ist die gleiche Dynamik wie bei GANs (Generative Adversarial Networks): Der Generator produziert, der Evaluator kritisiert, und dieses Feedback treibt die nächste Iteration an.

Wann man es einsetzen sollte

  • Erstellung vollständiger Anwendungen aus einem einzigen Prompt
  • Frontend-Design-Aufgaben, die hohe visuelle Qualität erfordern
  • Full-Stack-Projekte, die funktionierende Features benötigen, nicht nur Code
  • Jede Aufgabe, bei der „KI-Schrott“-Ästhetik nicht akzeptabel ist
  • Projekte, bei denen Sie 50-200 $ für Produktionsqualität investieren möchten

Wann man es NICHT einsetzen sollte

  • Schnelle Einzelfeld-Korrekturen (verwenden Sie stattdessen claude -p)
  • Aufgaben mit knappem Budget (<10 $)
  • Einfaches Refactoring (stattdessen das De-Sloppify-Muster verwenden)
  • Aufgaben, die bereits gut mit Tests spezifiziert sind (TDD-Workflow verwenden)

Architektur

                    ┌─────────────┐
                    │   PLANNER   │
                    │  (Sonnet)   │
                    └──────┬──────┘
                           │ Produktspezifikation
                           │ (Features, Sprints, Designrichtung)
                           ▼
              ┌────────────────────────┐
              │                        │
              │   GENERATOR-EVALUATOR  │
              │     FEEDBACK-SCHLEIFE  │
              │                        │
              │  ┌──────────┐          │
              │  │GENERATOR │--build-->│──┐
              │  │ (Sonnet) │          │  │
              │  └────▲─────┘          │  │
              │       │                │  │ Live-App
              │    Feedback             │  │
              │       │                │  │
              │  ┌────┴─────┐          │  │
              │  │EVALUATOR │<-test----│──┘
              │  │ (Sonnet) │          │
              │  │+Playwright         │
              │  └──────────┘          │
              │                        │
              │   5-15 Iterationen     │
              └────────────────────────┘

Die Drei Agenten

1. Planungs-Agent

Rolle: Produktmanager – erweitert einen kurzen Prompt zu einer vollständigen Produktspezifikation.

Wichtige Verhaltensweisen:

  • Nimmt einen einzeiligen Prompt und erstellt eine Spezifikation mit 16 Features und mehreren Sprints
  • Definiert User Stories, technische Anforderungen und die visuelle Designrichtung
  • Ist bewusst ambitioniert – konservative Planung führt zu enttäuschenden Ergebnissen
  • Erstellt Bewertungskriterien, die der Evaluator später verwendet

Modell: Standardmäßig Sonnet; erhöhen über GAN_PLANNER_MODEL=opus für tiefere Spezifikationserweiterung

2. Generator-Agent

Rolle: Entwickler – implementiert Features gemäß der Spezifikation.

Wichtige Verhaltensweisen:

  • Arbeitet in strukturierten Sprints (oder im kontinuierlichen Modus mit neueren Modellen)
  • Handelt vor dem Schreiben von Code einen „Sprint-Vertrag“ mit dem Evaluator aus
  • Nutzt Full-Stack-Tools: React, FastAPI/Express, Datenbanken, CSS
  • Verwaltet Git für die Versionskontrolle zwischen Iterationen
  • Liest Evaluator-Feedback und integriert es in der nächsten Iteration

Modell: Standardmäßig Sonnet; erhöhen über GAN_GENERATOR_MODEL=opus für maximale Programmierfähigkeit

3. Evaluator-Agent

Rolle: QA-Ingenieur – testet die laufende Anwendung live, nicht nur den Code.

Wichtige Verhaltensweisen:

  • Verwendet Playwright MCP zur Interaktion mit der Live-Anwendung
  • Klickt sich durch Features, füllt Formulare aus, testet API-Endpunkte
  • Bewertet anhand von vier Kriterien (konfigurierbar):
    1. Designqualität – Fühlt es sich wie ein kohärentes Ganzes an?
    2. Originalität – Eigene Entscheidungen vs. Vorlage/KI-Muster?
    3. Handwerkskunst – Typografie, Abstände, Animationen, Mikro-Interaktionen?
    4. Funktionalität – Funktionieren alle Features tatsächlich?
  • Gibt strukturiertes Feedback mit Bewertungen und spezifischen Problemen zurück
  • Ist darauf ausgelegt, schonungslos streng zu sein – lobt niemals mittelmäßige Arbeit

Modell: Standardmäßig Sonnet; erhöhen über GAN_EVALUATOR_MODEL=opus für stärkere Beurteilung + Tool-Nutzung

Bewertungskriterien

Die vier Standardkriterien, jeweils bewertet von 1-10:

## Bewertungs-Rubrik

### Designqualität (Gewicht: 0,3)
- 1-3: Generisch, vorlagenhaft, „KI-Schrott“-Ästhetik
- 4-6: Solide, aber unauffällig, folgt Konventionen
- 7-8: Eigenständige, kohärente visuelle Identität
- 9-10: Könnte für die Arbeit eines professionellen Designers durchgehen

### Originalität (Gewicht: 0,2)
- 1-3: Standardfarben, Standardlayouts, keine Persönlichkeit
- 4-6: Einige eigene Entscheidungen, meist Standardmuster
- 7-8: Klare kreative Vision, einzigartiger Ansatz
- 9-10: Überraschend, entzückend, wirklich neuartig

### Handwerkskunst (Gewicht: 0,3)
- 1-3: Kaputte Layouts, fehlende Zustände, keine Animationen
- 4-6: Funktioniert, fühlt sich aber grob an, inkonsistente Abstände
- 7-8: Poliert, flüssige Übergänge, responsiv
- 9-10: Pixelgenau, entzückende Mikro-Interaktionen

### Funktionalität (Gewicht: 0,2)
- 1-3: Kernfunktionen defekt oder fehlend
- 4-6: Happy Path funktioniert, Randfälle schlagen fehl
- 7-8: Alle Features funktionieren, gute Fehlerbehandlung
- 9-10: Bombensicher, behandelt jeden Randfall

Bewertung

  • Gewichtete Punktzahl = Summe der (Kriteriums-Punktzahl * Gewicht)
  • Bestandenschwelle = 7,0 (konfigurierbar)
  • Maximale Iterationen = 15 (konfigurierbar, typischerweise 5-15 ausreichend)

Verwendung

Über Befehl

# Vollständiger Drei-Agenten-Harness
/project:gan-build "Erstelle eine Projektmanagement-App mit Kanban-Boards, Team-Zusammenarbeit und Dark Mode"

# Mit benutzerdefinierter Konfiguration
/project:gan-build "Erstelle eine Rezepte-Plattform zum Teilen" --max-iterations 10 --pass-threshold 7.5

# Frontend-Design-Modus (nur Generator + Evaluator, kein Planer)
/project:gan-design "Erstelle eine Landing Page für einen Crypto-Portfolio-Tracker"

Über Shell-Skript

# Grundlegende Verwendung
./scripts/gan-harness.sh "Erstelle ein Musik-Streaming-Dashboard"

# Mit Optionen
GAN_MAX_ITERATIONS=10 \
GAN_PASS_THRESHOLD=7.5 \
GAN_EVAL_CRITERIA="functionality,performance,security" \
./scripts/gan-harness.sh "Erstelle eine REST-API für Aufgabenverwaltung"

Über Claude Code (Manuell)

# Schritt 1: Planen
claude -p --model sonnet "Du bist ein Produktplaner. Lies PLANNER_PROMPT.md. Erweitere diese kurze Beschreibung zu einer vollständigen Produktspezifikation: 'Erstelle eine Kanban-Board-App'. Schreibe die Spezifikation in spec.md"

# Schritt 2: Generieren (Iteration 1)
claude -p --model sonnet "Du bist ein Generator. Lies spec.md. Implementiere Sprint 1. Starte den Dev-Server auf Port 3000."

# Schritt 3: Evaluieren (Iteration 1)
claude -p --model sonnet --allowedTools "Read,Bash,mcp__playwright__*" "Du bist ein Evaluator. Lies EVALUATOR_PROMPT.md. Teste die Live-App unter http://localhost:3000. Bewerte anhand der Rubrik. Schreibe das Feedback in feedback-001.md"

# Schritt 4: Generieren (Iteration 2 – liest Feedback)
claude -p --model sonnet "Du bist ein Generator. Lies spec.md und feedback-001.md. Behebe alle Probleme. Verbessere die Bewertungen."

# Wiederhole Schritte 3-4, bis die Bestandenschwelle erreicht ist

Entwicklung über Modellfähigkeiten hinweg

Der Harness sollte sich vereinfachen, wenn Modelle besser werden. In Anlehnung an Anthropics Evolution:

Stufe 1 – Schwächere Modelle (Sonnet-Klasse)

  • Vollständige Sprint-Zerlegung erforderlich
  • Kontextzurücksetzungen zwischen Sprints (Kontextangst vermeiden)
  • Mindestens 2 Agenten: Initialisierer + Programmier-Agent
  • Umfangreiches Gerüst gleicht Modelleinschränkungen aus

Stufe 2 – Leistungsfähige Modelle (Opus 4.5-Klasse)

  • Vollständiger 3-Agenten-Harness: Planer + Generator + Evaluator
  • Sprint-Verträge vor jeder Implementierungsphase
  • 10-Sprint-Zerlegung für komplexe Apps
  • Kontextzurücksetzungen immer noch nützlich, aber weniger kritisch

Stufe 3 – Grenzmodelle (Opus 4.6-Klasse)

  • Vereinfachter Harness: ein einziger Planungsdurchlauf, kontinuierliche Generierung
  • Evaluierung reduziert auf einen einzigen Enddurchlauf (Modell ist intelligenter)
  • Keine Sprint-Struktur erforderlich
  • Automatische Kompaktierung bewältigt Kontextwachstum

Schlüsselprinzip: Jede Komponente des Harness codiert eine Annahme darüber, was das Modell allein nicht kann. Wenn sich Modelle verbessern, testen Sie diese Annahmen erneut. Entfernen Sie, was nicht mehr benötigt wird.

Konfiguration

Umgebungsvariablen

VariableStandardBeschreibung
GAN_MAX_ITERATIONS15Maximale Generator-Evaluator-Zyklen
GAN_PASS_THRESHOLD7.0Gewichtete Punktzahl zum Bestehen (1-10)
GAN_PLANNER_MODELsonnetModell für den Planungs-Agenten
GAN_GENERATOR_MODELsonnetModell für den Generator-Agenten
GAN_EVALUATOR_MODELsonnetModell für den Evaluator-Agenten
GAN_EVAL_CRITERIAdesign,originality,craft,functionalityKomma-getrennte Kriterien
GAN_DEV_SERVER_PORT3000Port für die Live-App
GAN_DEV_SERVER_CMDnpm run devBefehl zum Starten des Dev-Servers
GAN_PROJECT_DIR.Projekt-Arbeitsverzeichnis
GAN_SKIP_PLANNERfalsePlaner überspringen, Spezifikation direkt verwenden
GAN_EVAL_MODEplaywrightplaywright, screenshot oder code-only

Evaluierungsmodi

ModusWerkzeugeAm besten geeignet für
playwrightBrowser MCP + Live-InteraktionFull-Stack-Apps mit UI
screenshotScreenshot + visuelle AnalyseStatische Seiten, nur Design
code-onlyTests + Linting + BuildAPIs, Bibliotheken, CLI-Tools

Anti-Patterns

  1. Evaluator zu nachsichtig – Wenn der Evaluator in Iteration 1 alles bestehen lässt, ist Ihre Rubrik zu großzügig. Verschärfen Sie die Bewertungskriterien und fügen Sie explizite Strafen für häufige KI-Muster hinzu.

  2. Generator ignoriert Feedback – Stellen Sie sicher, dass Feedback als Datei und nicht inline übergeben wird. Der Generator sollte zu Beginn jeder Iteration feedback-NNN.md lesen.

  3. Endlosschleifen – Setzen Sie immer GAN_MAX_ITERATIONS. Wenn der Generator nach 3 Iterationen ein Score-Plateau nicht verbessern kann, stoppen Sie und markieren Sie es für menschliche Überprüfung.

  4. Evaluator testet oberflächlich – Der Evaluator muss Playwright verwenden, um mit der Live-App zu interagieren, nicht nur einen Screenshot zu machen. Klicken Sie auf Schaltflächen, füllen Sie Formulare aus, testen Sie Fehlerzustände.

  5. Evaluator lobt eigene Korrekturen – Lassen Sie den Evaluator niemals Korrekturen vorschlagen und diese dann bewerten. Der Evaluator kritisiert nur; der Generator behebt.

  6. Kontexterschöpfung – Verwenden Sie für lange Sitzungen die automatische Kompaktierung des Claude Agent SDK oder setzen Sie den Kontext zwischen größeren Phasen zurück.

Ergebnisse: Was zu erwarten ist

Basierend auf Anthropics veröffentlichten Ergebnissen:

MetrikEinzelner AgentGAN HarnessVerbesserung
Zeit20 Min4-6 Stunden12-18x länger
Kosten9 $125-200 $14-22x mehr
QualitätKaum funktionsfähigProduktionsreifPhasenübergang
KernfunktionenDefektAlle funktionierenN/A
DesignGenerischer KI-SchrottEigenständig, poliertN/A

Der Kompromiss ist klar: ~20x mehr Zeit und Kosten für einen qualitativen Sprung in der Ausgabequalität. Dies ist für Projekte, bei denen Qualität zählt.

Referenzen

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/content-engine

Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.

affaan-m/ECC

Multi-platform content distribution across X, LinkedIn, Threads, and Bluesky. Adapts content per platform using content-engine patterns. Never posts identical content cross-platform. Use when the user wants to distribute content across social platforms.

affaan-m/fal-ai-media

Unified media generation via fal.ai MCP — image, video, and audio. Covers text-to-image (Nano Banana), text/image-to-video (Seedance, Kling, Veo 3), text-to-speech (CSM-1B), and video-to-audio (ThinkSound). Use when the user wants to generate images, videos, or audio with AI.

affaan-m/manim-video

日本語翻訳:このファイルは manim-video 用の日本語翻訳が必要です

affaan-m/remotion-video-creation

Remotion のベストプラクティス - React で動画を作成する。3D、アニメーション、音声、字幕、チャート、トランジションなどをカバーするドメイン固有の29のルール。

affaan-m/video-editing

AI-assisted video editing workflows for cutting, structuring, and augmenting real footage. Covers the full pipeline from raw capture through FFmpeg, Remotion, ElevenLabs, fal.ai, and final polish in Descript or CapCut. Use when the user wants to edit video, cut footage, create vlogs, or build video content.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

agent-self-evaluation

Use after completing any non-trivial task. The agent self-rates its output on 5 axes — accuracy, completeness, clarity, actionability, conciseness — with concrete evidence per criterion. Produces a structured 1-5 scorecard with specific improvement suggestions.

agent-sort

Build an evidence-backed ECC install plan for a specific repo by sorting skills, commands, rules, hooks, and extras into DAILY vs LIBRARY buckets using parallel repo-aware review passes. Use when ECC should be trimmed to what a project actually needs instead of loading the full bundle.

ai-first-engineering

Engineering operating model for teams where AI agents generate a large share of implementation output. Use when setting team process, review gates, or ownership rules for a codebase largely written by agents.

ai-regression-testing

Regression testing strategies for AI-assisted development. Sandbox-mode API testing without database dependencies, automated bug-check workflows, and patterns to catch AI blind spots where the same model writes and reviews code. Use when adding regression coverage to AI-assisted code, or when the same model both wrote and reviewed a change.

android-clean-architecture

Clean Architecture patterns for Android and Kotlin Multiplatform projects — module structure, dependency rules, UseCases, Repositories, and data layer patterns. Use when structuring modules, layers, or data flow in an Android or KMP project.

angular-developer

Generates Angular code and provides architectural guidance. Trigger when creating projects, components, or services, or for best practices on reactivity (signals, linkedSignal, resource), forms, dependency injection, routing, SSR, accessibility (ARIA), animations, styling (component styles, Tailwind CSS), testing, or CLI tooling.

Verwandte Skills