
Da KI-Agenten inzwischen leistungsfähig genug sind, um echte Workflows zu übernehmen, ist eine neue Infrastrukturherausforderung entstanden: Wie kommunizieren Menschen und Agenten während der Ausführung — nicht nur am Anfang und am Ende, sondern durchgehend?
Das AG-UI-Protokoll ist eine offene Spezifikation, die genau dieses Problem lösen soll. Es definiert einen Standard dafür, wie KI-Agenten Ereignisse streamen, Eingaben anfordern und Statusinformationen in Echtzeit an Frontend-Anwendungen und menschliche Operatoren übermitteln. Wenn MCP (Model Context Protocol) standardisiert hat, wie Agenten auf Tools zugreifen, dann standardisiert AG-UI, wie Agenten mit Nutzern sprechen.
Dieser Leitfaden erklärt, was AG-UI ist, warum es wichtig ist, wie es funktioniert und wie du es in deinem Agent-Stack einsetzen kannst.
Das Problem, das AG-UI löst
Vor AG-UI musste jedes Team, das eine menschenzentrierte KI-Agenten-Anwendung entwickelte, sein eigenes Kommunikationsprotokoll erfinden. Wie teilt der Agent dem Frontend mit, dass er nachdenkt? Wie fordert er eine menschliche Entscheidung an? Wie sendet der Nutzer während einer laufenden Aufgabe eine Korrektur? Wie wird Fortschritt angezeigt?
Die Antworten fielen in jedem Team anders aus — oft ad hoc, schlecht dokumentiert und schwer wiederverwendbar. Dadurch entstand ein fragmentiertes Ökosystem, in dem:
- Agenten-Frameworks keine Frontend-Komponenten teilen konnten
- Entwickler die Streaming-UI-Infrastruktur für jedes Projekt von Grund auf neu bauen mussten
- Nutzer in agentengestützten Produkten inkonsistente Erfahrungen bekamen
- das Debugging des Agentenverhaltens in jeder Implementierung eigenes Logging erforderte
AG-UI etabliert ein gemeinsames Vokabular und eine gemeinsame Ereignisstruktur, sodass jedes Agenten-Framework Ereignisse erzeugen kann, die jedes AG-UI-kompatible Frontend rendern kann — ohne benutzerdefinierten Integrationscode.
Was ist AG-UI?
AG-UI ist ein offenes Streaming-Ereignisprotokoll, das Format und Semantik der Nachrichten definiert, die zwischen KI-Agenten und nutzerseitigen Oberflächen ausgetauscht werden.
Es ist:
- transportagnostisch: funktioniert über HTTP (Server-Sent Events), WebSockets oder jeden anderen Streaming-Transport
- frameworkagnostisch: kann in jeder Sprache und jedem Agenten-Framework implementiert werden
- bidirektional: Agenten senden Ereignisse an das Frontend; Nutzer senden Nachrichten und Unterbrechungen an den Agenten
- zustandsbehaftet: das Protokoll enthält Zustands-Snapshots, sodass Frontends den vollständigen Agentenkontext jederzeit rekonstruieren können
Es ist nicht:
- ein Tool-Protokoll, das ist MCPs Aufgabe
- selbst ein Agenten-Framework
- eine UI-Komponentenbibliothek, auch wenn Referenzimplementierungen existieren
AG-UI vs. MCP: Den Unterschied verstehen
Eine häufige Quelle von Verwirrung ist die Beziehung zwischen AG-UI und Anthropics Model Context Protocol (MCP).
| Dimension | MCP | AG-UI |
|---|---|---|
| Zweck | Kommunikation Agent ↔ Tool | Kommunikation Agent ↔ Mensch/Frontend |
| Richtung | Agent ruft Tools auf und erhält Ergebnisse | Agent streamt Ereignisse; Mensch sendet Nachrichten |
| Zielgruppe | Tool-/Server-Entwickler | Frontend- und Agenten-Framework-Entwickler |
| Fokus | Welche Fähigkeiten der Agent nutzen kann | Wie der Agent seinen Zustand und Fortschritt kommuniziert |
| Beziehung | Behandelt die Tool-Seite des Agenten | Behandelt die Benutzeroberflächen-Seite |
Beide sind komplementär. Ein Agent im Produktiveinsatz verwendet typischerweise MCP, um auf Tools zuzugreifen, etwa Websuche, Bildgenerierung oder Codeausführung, und AG-UI, um seinen Fortschritt zu kommunizieren und menschliche Eingaben anzufordern.
Zentrale Konzepte in AG-UI
Ereignistypen
AG-UI definiert einen Standardsatz von Ereignistypen, die Agenten ausgeben:
Lifecycle-Ereignisse:
RUN_STARTED/RUN_FINISHED— der Agent hat die Ausführung begonnen oder abgeschlossenSTEP_STARTED/STEP_FINISHED— ein einzelner Schritt innerhalb des Workflows hat begonnen oder geendetRUN_ERROR— der Agent ist auf einen nicht behebbaren Fehler gestoßen
Nachrichtenereignisse:
TEXT_MESSAGE_START/TEXT_MESSAGE_CONTENT/TEXT_MESSAGE_END— gestreamte Textausgabe des AgentenTOOL_CALL_START/TOOL_CALL_ARGS/TOOL_CALL_END— der Agent ruft ein Tool auf
Zustandsereignisse:
STATE_SNAPSHOT— ein vollständiger Snapshot des aktuellen AgentenzustandsSTATE_DELTA— eine inkrementelle Aktualisierung des ZustandsMESSAGES_SNAPSHOT— der vollständige Gesprächsverlauf zu einem bestimmten Zeitpunkt
Benutzerdefinierte Ereignisse:
CUSTOM— für anwendungsspezifische Ereignisse, die nicht vom Standardsatz abgedeckt werden
Die menschliche Eingriffsphase
AG-UI standardisiert auch, wie Menschen mit laufenden Agenten interagieren. Das Frontend sendet ein AgentInput, um den Agenten während der Ausführung zu unterbrechen, umzulenken oder ihm Informationen bereitzustellen. Das ist etwas anderes als ein neuer Gesprächszug — der Agent läuft bereits, und der Mensch beeinflusst seine aktuelle Aufgabe.
Thread-basierte Architektur
AG-UI organisiert Agentenläufe in Threads — persistente Gesprächskontexte, die den Zustand über mehrere Läufe hinweg erhalten. Ein Thread in AG-UI entspricht grob einer Sitzung oder Unterhaltung in anderen Frameworks, bietet aber explizite Protokollunterstützung für Fortsetzen, Verzweigen und Wiedergeben.
So funktioniert AG-UI: Ein typischer Ablauf
1. Der Nutzer sendet über das Frontend eine Aufgabe ab
2. Das Frontend sendet eine InitialRun-Anfrage mit RunAgentInput an das Agenten-Backend
3. Der Agent beginnt die Ausführung und sendet das Ereignis RUN_STARTED
4. Der Agent sendet STEP_STARTED für jeden Planungsschritt
5. Der Agent ruft ein Tool auf → sendet TOOL_CALL_START, TOOL_CALL_ARGS, TOOL_CALL_END
6. Der Agent generiert Text → sendet TEXT_MESSAGE_START, TEXT_MESSAGE_CONTENT (Streaming), TEXT_MESSAGE_END
7. Der Agent sendet STATE_DELTA, um den Frontend-Zustand in Echtzeit zu aktualisieren
8. Der Nutzer entscheidet, den Agenten umzulenken → sendet AgentInput mit Korrektur
9. Der Agent verarbeitet die Korrektur und macht weiter
10. Der Agent sendet RUN_FINISHED
Das Frontend empfängt diese Ereignisse als Stream und rendert sie schrittweise — zeigt Tool-Aufrufe an, während sie passieren, streamt Text in Echtzeit und aktualisiert anhand der Schritt-Ereignisse einen Fortschrittsindikator.
AG-UI implementieren
Unterstützung durch Frameworks
AG-UI wird zunehmend von großen Agenten-Frameworks unterstützt:
- LangGraph: AG-UI-Ereignisse können mit dem AG-UI-Python-SDK aus Graph-Knoten ausgegeben werden
- AG-UI-CopilotKit-Integration: CopilotKit, ein React-Frontend-Framework für KI, bietet native AG-UI-Unterstützung
- Benutzerdefinierte Implementierungen: Die AG-UI-Spezifikation ist offen; jedes Framework kann sie mit den definierten Ereignistypen implementieren
Schnellstart (Python)
from ag_ui.core import (
RunAgentInput, EventType,
RunStartedEvent, TextMessageStartEvent,
TextMessageContentEvent, TextMessageEndEvent,
RunFinishedEvent,
)
import uuid
async def run_agent(input: RunAgentInput):
run_id = str(uuid.uuid4())
yield RunStartedEvent(
type=EventType.RUN_STARTED,
thread_id=input.thread_id,
run_id=run_id,
)
msg_id = str(uuid.uuid4())
yield TextMessageStartEvent(type=EventType.TEXT_MESSAGE_START, message_id=msg_id, role="assistant")
for chunk in agent.stream(input.messages):
yield TextMessageContentEvent(
type=EventType.TEXT_MESSAGE_CONTENT,
message_id=msg_id,
delta=chunk
)
yield TextMessageEndEvent(type=EventType.TEXT_MESSAGE_END, message_id=msg_id)
yield RunFinishedEvent(type=EventType.RUN_FINISHED, thread_id=input.thread_id, run_id=run_id)
Verbindung mit AnyCap
Wenn dein AG-UI-gestützter Agent reale Fähigkeiten benötigt, etwa Websuche, Bildgenerierung oder Dateispeicherung, integriert sich AnyCap als Tool-Schicht unterhalb der Orchestrierung. Der Agent ruft während seiner Ausführungsschleife AnyCap-Tools auf und sendet die entsprechenden TOOL_CALL_*-Ereignisse, damit das Frontend zeigt, was passiert:
User: "Recherchiere die Top 5 KI-Frameworks und erstelle ein Übersichtsbild"
Agent emits: TOOL_CALL_START (tool: "anycap_search", args: {...})
Agent emits: TOOL_CALL_END (result: search results)
Agent emits: TOOL_CALL_START (tool: "anycap_image_generate", args: {...})
Agent emits: TOOL_CALL_END (result: image URL)
Agent emits: TEXT_MESSAGE (streaming summary with embedded image)
Diese vollständige Transparenz — sichtbar gemacht durch AG-UI-Ereignisse — unterscheidet eine vertrauenswürdige Mensch-Agent-Schnittstelle von einer Black Box.
Warum AG-UI für produktive Agentenanwendungen wichtig ist
Wenn du agentengestützte Produkte entwickelst, bietet AG-UI:
Wiederverwendbarkeit von Komponenten. Frontend-Komponenten, die nach der AG-UI-Spezifikation gebaut sind, funktionieren mit jedem kompatiblen Backend. Baue eine Streaming-Chat-UI einmal und nutze sie ohne Änderungen mit LangGraph, CrewAI und AutoGen.
Konsistente Nutzererfahrung. Nutzer sehen in verschiedenen Agenten-Workflows dieselben Interaktionsmuster, weil die Ereignistypen standardisiert sind.
Debugging. Die Zustands-Snapshots und der Ereignisstrom von AG-UI liefern dir einen vollständigen Datensatz der Agentenausführung. Das Wiedergeben eines Ereignisstroms zeigt genau, was der Agent in jedem Schritt gesehen und getan hat.
Menschliche Aufsicht. Der AgentInput-Mechanismus für menschliche Eingriffe während einer laufenden Aufgabe ist in das Protokoll integriert — nicht nachträglich angeflanscht.
Fazit
AG-UI schließt eine echte Lücke im Infrastruktur-Stack für agentische KI. Je leistungsfähiger und nutzernäher Agenten werden, desto wichtiger wird das Protokoll dafür, wie sie ihren Zustand kommunizieren und menschliche Eingaben empfangen — genauso wichtig wie die Tools, auf die sie zugreifen können.
Für Entwickler, die 2026 agentengestützte Produkte bauen, bedeutet eine frühe Einführung von AG-UI, auf einer Grundlage aufzubauen, auf die sich das Ökosystem zubewegt — statt eine maßgeschneiderte Kommunikationsschicht zu pflegen, die mit dem Wachstum des Produkts zur Belastung wird.
Weiterführende Lektüre:
- KI-Orchestrierungs-Frameworks im Vergleich
- MCP vs. Skills: Was solltest du verwenden?
- AnyCap-Funktionen
- AG-UI GitHub-Repository
- Leitfaden zu Automatisierungs-Orchestrierungs-Tools 2026 — Zapier vs. n8n vs. Temporal vs. LangGraph: so triffst du die Wahl
- Data-Orchestration-Tools 2026 — Von Airflow bis zu KI-nativer Orchestrierung in deiner Agenten-Pipeline