---
created: 2026-07-26
updated: 2026-07-26
sources:
  - xpost/2026-07-26_ruediger-agent-architecture-triade.md
  - xpost/2026-07-18_steipete-loops-vs-graphs.md
  - xpost/2026-07-24_steipete-graph-engineer-codex.md
tags: [concept, agents, architecture, steinberger, kopadze, langgraph, diamond-pattern, loop-engineering, shape-vocabulary, design-patterns, orchestration, agent-topology, graph-compiler, codex, kotliarskyi]
people: [peter-steinberger, harrison-chase, alex-kotliarskyi]
institutions: [langchain, openai]
---

# Architecture Triade: Steinberger, Kopadze, LangGraph

> *"Ohne die Abstraktionsebene von Kopadze versuchen Entwickler oft, komplexe Systeme in LangGraph zu bauen, indem sie entweder einen riesigen, instabilen Single-Agent-Loop nutzen oder einen starren Pipeline-Graph verdrahten."*
> — Rüdiger, OME Topic 13, 2026-07-26

## Überblick

Die Architecture Triade beschreibt die drei notwendigen Säulen der Agenten-Architektur, die zusammenwirken müssen, um robuste, skalierbare Agenten-Systeme zu bauen. Jede Säule adressiert eine andere Frage:

| Säule | Perspektive | Kernfrage | Analogie in OOP |
|-------|-------------|-----------|-----------------|
| **[Conceptual] Steinberger** | Loop-Engineering | WANN & WARUM kontrollieren? | Algorithmen |
| **[Architectural] Kopadze** | Shape-Vokabular | WELCHE FORM nutzt das System? | GoF Design Patterns |
| **[Technical] LangGraph** | Implementation | WIE wird es verdrahtet? | Framework / Runtime |

## Die Drei-Säulen-Triade im Detail

### 1. Steinberger = Loop-Engineering (Konzeptionell)

**Perspektive:** Steinberger adressiert die Dynamik und Metrik des Agentenverhaltens.

**Kernfragen:**
- Wann bricht ein Loop ab?
- Wie verhindern wir Halluzinationen in der Feedback-Schleife?
- Welcher Threshold entscheidet über "gut genug"?
- Wie bleibt ein Verifier-Loop mathematisch und logisch stabil?

**Rolle:** Liefert die wissenschaftliche/konzeptionelle Grundlagenarbeit für die Selbstkorrektur von LLMs (Self-Correction, Reflection, Grounding).

**Lücke ohne die anderen:** Reines Loop-Engineering erklärt, wie ein Verifier-Loop stabil bleibt, aber nicht, wie man 5 verschiedene Spezialagenten miteinander arrangiert. Es fehlt die Topologie.

**Verwandte Wiki-Seite:** [[agent-loops.md]]

### 2. LangGraph = Implementation (Infrastrukturell)

**Perspektive:** Das Framework-Rückgrat.

**Primitive:**
- State (deterministischer Zustand)
- Nodes (Aktionen)
- Edges (Übergänge, bedingt/unbedingt)
- Checkpointing (Durable Execution)
- Time-Travel (Debugging)
- Routing (Conditional Edges)

**Rolle:** Stellt sicher, dass der Zustand deterministisch durch gerichtete Graphen fließt — mit Built-in Persistenz, Tracing, HITL und Parallelität.

**Gefahr ohne Patterns:** LangGraph ist eine mächtige "Turing-vollständige" Infrastruktur — und genau das ist die Falle. Da man mit Nodes und Edges alles bauen kann, entstehen in der Praxis unlesbare, zusammengeschusterte "Spaghetti-Graphen", weil Entwickler ohne ein klares Pattern einfach Nodes aneinanderreihen.

**Verwandte Wiki-Seite:** [[graph-based-agents.md]]

### 3. Kopadze = Shape-Vokabular (Design-Patterns)

**Perspektive:** Die fehlende Semantik zwischen Loop-Engineering und Framework.

**Rolle:** Kopadze liefert die Architektur-Muster (Shapes), die beschreiben, wie Information durch den Graph strömen soll — ähnlich wie die **Gang of Four (GoF)** in der OOP Design Patterns (Singleton, Factory, Strategy) lieferte.

**Kopadze-Shapes:**
| Shape | Beschreibung | Anwendungsfall |
|-------|-------------|----------------|
| **Parallel Fan-Out** | Verteilung einer Aufgabe auf mehrere Sub-Agenten | Unabhängige Teilaufgaben |
| **Diamond** | Fan-Out + Verifier/Join | Qualitätsgesicherte parallele Verarbeitung |
| **Hierarchical Router** | Verschachtelte Entscheidungsbäume | Komplexe Routing-Logik |
| **Cyclic Evaluator** | Wiederholte Prüfschleifen | Qualitätsiteration, Self-Correction |

**Warum Kopadze die Lücke füllt:** Er übersetzt das abstrakte Loop-Engineering von Steinberger in konkrete Topologien, die sich direkt in LangGraph-Graphen gießen lassen.

## Das Diamond Pattern — Das mächtigste Workhorse

Das Diamond-Pattern (Fan-Out + Verifier / Join) löst das fundamentale Dilemma monolithischer LLM-Prompts: Ein einzelner Prompt verliert an Fokus und Qualität, je mehr Aufgaben er gleichzeitig lösen soll.

### Topologie

```
[Router/Splitting] ──► [Sub-Agent A: Task 1] ──┐
                    ──► [Sub-Agent B: Task 2] ──┼─► [Evaluator/Verifier] ──► [Output/Retry]
                    ──► [Sub-Agent C: Task 3] ──┘
```

### Warum das Diamond Pattern im Alltag dominiert

1. **Parallel Fan-Out (Verteilung & Spezialisierung):** Statt ein einziges Modell mit einer riesigen Aufgabe zu überfordern (wo der Kontext verwaschen wird), bricht der Start-Node das Problem in synchrone/asynchrone Teilaufgaben auf. Jeder Zweig hat einen spezialisierten Prompt, ggf. eigene Tools oder sogar schlankere/günstigere Modelle (z. B. Haiku/Mini für Sub-Tasks) — eine direkte Verbindung zum [[../../architecture/model-routing.md|Model Routing]]-Pattern.

2. **Der Evaluator / Verifier (Der Steinberger-Join):** Am Ende des Fan-Out läuft die Information nicht einfach ungeprüft zusammen (Merge), sondern trifft auf ein Verifier-Node. Dieser Prüfknoten agiert als Qualitätstor: Er prüft Konsistenz, halluzinierte Daten oder fehlende Teile. Der entscheidende Clou: Scheitert der Verifier, geht es nicht zurück an den Start, sondern gezielt in eine Kopadze-Loop an den betreffenden Sub-Knoten zurück.

### Verbindung zur Triade

Das Diamond Pattern ist die praktische Synthese aller drei Säulen:
- **Kopadze** liefert die Shape (Diamond-Topologie)
- **Steinberger** liefert den Verifier-Mechanismus (Abbruchkriterien, Thresholds, Loop-Control)
- **LangGraph** liefert die Implementation (Nodes, Edges, State, Parallel Branches, Checkpointing)

## Die Triade in der Praxis

### Zusammenspiel

```
           ┌──────────────────────────────┐
           │   [Kopadze] Shape-Vokabular   │
           │   (Welche Form?)              │
           └──────────┬───────────────────┘
                      │ übersetzt in Topologie
           ┌──────────▼───────────────────┐
           │   [Steinberger]              │
           │   Loop-Engineering            │
           │   (Wann/Warum?)               │
           └──────────┬───────────────────┘
                      │ dockt an Verifier-Nodes an
           ┌──────────▼───────────────────┐
           │   [LangGraph]                │
           │   Implementation             │
           │   (Wie verdrahten?)           │
           └──────────────────────────────┘
```

### Fazit

Ohne die Abstraktionsebene von Kopadze versuchen Entwickler oft, komplexe Systeme in LangGraph zu bauen, indem sie entweder einen riesigen, instabilen Single-Agent-Loop nutzen oder einen starren Pipeline-Graph verdrahten. Erst das Verständnis von Kopadzes Shape-Vokabular erlaubt es:

1. Den Problemraum in erprobte Topologien (wie das Diamond-Pattern) zu zerlegen.
2. Das Loop-Engineering nach Steinberger punktuell an den Verifier-Nodes anzudocken.
3. Das Ganze in LangGraph sauber, wartbar und skalierbar zu implementieren.

## Verwandte Wiki-Seiten

- [[agent-loops.md]] — Loop-Engineering (Steinberger)
- [[graph-based-agents.md]] — Graph-basierte Agenten (LangGraph)
- [[ai-agents-2026.md]] — AI Agents 2026 Übersicht
- [[../../architecture/agent-orchestration.md]] — Agenten-Orchestrierung
- [[../../architecture/model-routing.md]] — Model Routing (komplementär: Task-Spezialisierung auf Sub-Agent-Ebene)

## 4. Codex = Graph Compiler (Automatisierungsebene)

*Hinzugefügt 2026-07-26 — basierend auf @steipete's Post "am I a graph engineer now".*

**Perspektive:** Codex als Übersetzer von visuellen Graphen in ausführbaren Code. Die fehlende Automatisierungsebene, die die Triade vervollständigt.

### Die Entdeckung

Am 24.07.2026 postete **Alex Kotliarskyi (@alexk, OpenAI Engineering Lead)** einen Workflow, der sofort von Peter Steinberger (@steipete) aufgegriffen wurde:

> "How to graph-max with Codex and 5.6 Sol:
> 1. Draw a graph (literally in any tool, even on paper)
> 2. Send it to Codex and say 'write a code mode script that implements this workflow, run it with <your inputs>'
> 3. There's no step 3, it just works."

Steinberger antwortete mit: "am I a graph engineer now" — eine selbstironische Bestätigung, dass sein Loop-Engineering jetzt durch Codex in Graph-Code übersetzt wird.

**Quelle:** `raw/xpost/2026-07-24_steipete-graph-engineer-codex.md`

### Was der Graph Compiler bedeutet

Codex fungiert als **Graph → Code Compiler**:
- **Input:** Ein visuelles Diagramm (handgezeichnet, in einem beliebigen Tool, auf Papier)
- **Verarbeitung:** Codex erkennt die Struktur des Graphen (Nodes, Edges, Fluss)
- **Output:** Ein ausführbares Code-Mode-Script, das den Workflow implementiert
- **Ausführung:** Der generierte Code wird mit den bereitgestellten Inputs ausgeführt

Das ist fundamental anders als bisher:
| Bisher | Mit Graph Compiler |
|--------|-------------------|
| Entwickler verdrahtet Nodes/Edges manuell in LangGraph | Codex generiert den Code aus einer visuellen Skizze |
| Shape-Vokabular bleibt abstraktes Konzept | Shape-Diagramm wird direkt zum ausführbaren Agenten |
| Loop-Engineering erfordert manuelle Threshold-Setzung | Verifier-Logik aus Shapes kann mitgeneriert werden |

### Verbindung zur Triade

Die vier Säulen bilden jetzt eine vollständige Kette:

```
[Konzeption] ──► [Design] ──► [Implementation] ──► [Automatisierung]
Steinberger      Kopadze         LangGraph            Codex
Loop-Engineering  Shape-Vokabular  Framework          Graph → Code
```

**Konkrete Integration:**
1. **Kopadze** definiert das Shape (z.B. Diamond-Pattern)
2. **Steinberger** definiert die Loop-Bedingungen (Wann evaluieren? Welcher Threshold?)
3. **Codex** übersetzt die Shapes + Parameter in ausführbaren LangGraph-Code
4. **LangGraph** führt den generierten Code als Runtime aus

### Was ist hier wirklich neu?

Bisher wurde das Shape-Wissen (Kopadze) manuell in LangGraph gegossen: Ein Entwickler sieht das Diamond-Pattern und übersetzt es per Hand in Nodes und Edges. Der Graph Compiler automatisiert diesen Schritt:
- **Shape → Code:** Das Diamond-Pattern wird nicht mehr von Hand implementiert, sondern von Codex aus dem Diagramm generiert
- **Visuelle Programmierung:** Die Graph-Struktur wird zum Source Code — analog zu UML → Code-Generierung in klassischer Softwareentwicklung
- **Demokratisierung:** Auch Nicht-Entwickler können Agent-Workflows entwerfen (zeichnen) und ausführen lassen

### Einordnung in die Triade-Entwicklung

Die Drei-Säulen-Triade beschrieb, *wie* man Agenten-Architektur denken und bauen sollte. Der Graph Compiler automatisiert diesen Prozess:
- **Früher:** Stunde → Shape denken → in Code gießen
- **Jetzt:** Minute → Shape zeichnen → Codex generiert Code → ausführen

Die Automatisierungsebene macht die Triade erst vollständig: Sie schließt den Kreis von der Idee über das Design zur Implementation — und zurück zur Idee (iterative Verfeinerung durch erneutes Zeichnen).

### Rezeption und Community

- Steinbergers Post erreichte ~730K Views, 4.7K Likes, 333 Reposts und 5.5K Bookmarks — ein starkes Signal, dass der Graph Compiler-Ansatz auf breites Interesse stößt
- Notable Replies: @luckeyfaraday (athena-graphs Repo), @CaryPalmerr (Puppetmaster)
- Die hohe Bookmark-Rate (5.5K bei 730K Views) deutet auf praktisches Interesse hin: Leser speichern den Post für späteren Gebrauch

## Quellen

- Rüdiger (OME Topic 13, 2026-07-26): Drei-Säulen-Triade der Agenten-Architektur
- @steipete: Loops vs. Graphs — 248K Views, 402 Quotes (raw: `xpost/2026-07-18_steipete-loops-vs-graphs.md`)
- @steipete (2026-07-24): "am I a graph engineer now" — ~730K Views (raw: `xpost/2026-07-24_steipete-graph-engineer-codex.md`)
- Alex Kotliarskyi (@alexk, OpenAI): Codex Graph-Max Workflow (via @steipete Quote)
- LangGraph Overview: https://docs.langchain.com/oss/python/langgraph/overview
- Harrison Chase (@hwchase17): https://x.com/hwchase17/status/1915845925316268471