# Agent-User Interaction Protocol AG-UI

[8 · Present](/category/present/)

| Agent-User Interaction Protocol |
| --- |
| Category | [Present](/category/present/) |
| Governed by | AG-UI open-source project (github.com/ag-ui-protocol), originated and still primarily stewarded by CopilotKit; biweekly public working group |
| Status | Open, lightweight, event-based protocol; described by its maintainers as the general-purpose, bi-directional connection between a user-facing application and any agentic backend |
| Phase | living |
| Implementation | multi-implementation |
| Adoption | observed |
| Version | protocol stable, packages versioned independently (e.g. @ag-ui/core on npm) |
| Specification | [https://docs.ag-ui.com/introduction](https://docs.ag-ui.com/introduction) |
| Found at | No fixed well-known path; a client is coded against a known agent backend endpoint that emits an AG-UI-compatible event stream over an agreed transport (SSE, WebSockets, webhooks) |
| Acronym collisions | A2UI |
| Last checked | 2026-09-06 |

[Present](/category/present/) AG-UI (Agent-User Interaction Protocol) is an open, lightweight, event-based protocol that standardizes how an AI agent backend streams state, messages, generative-UI updates, and tool activity into a user-facing frontend application, and how the frontend sends interactions and tool results back. CopilotKit announced it on May 12, 2025 as 'an open, lightweight protocol that streams a single sequence of JSON events over standard HTTP or an optional binary channel' [[1]](#ref-1). Its own docs position it as one of three complementary 'agentic protocols': MCP handles Agent↔Tools/Data, A2A handles Agent↔Agent, and AG-UI handles Agent↔User Interaction — it is explicitly not a competitor to either [[2]](#ref-2).

## Overview
Mechanically, an agent backend emits roughly sixteen standard event types (e.g. streaming text message chunks, tool-call events, state snapshots and diffs, run lifecycle/error events) over whatever transport the integration chooses — SSE, WebSockets, or webhooks are all named as compatible — and a middleware layer normalizes 'loose event format matching' so different backend frameworks and different frontend clients can interoperate without agreeing on a single wire transport [[2]](#ref-2). AG-UI itself does not define a fixed origin path or well-known discovery file; a given application wires its own agent endpoint and a client library (or hand-rolled parser) that speaks the event vocabulary. AG-UI does not solve tool invocation (that is MCP's job) or agent-to-agent delegation (A2A's job), and it does not define authentication, payment, or content-permission mechanics.

Current state (as of 2026-09-05): the protocol is actively developed under github.com/ag-ui-protocol/ag-ui (MIT license), which shows 15.7k stars, 170 branches, and near-daily commits including a merge less than a day before this check. It is described in its own docs as supported 'first-party' by Microsoft Agent Framework, Google ADK, AWS Strands Agents, Mastra, Pydantic AI, Agno, LlamaIndex, AG2, and AWS Bedrock AgentCore, with community-maintained SDKs in Kotlin, Go, Dart, Java, Rust, Ruby, C++, and .NET, and CopilotKit itself as the reference first-party client [[2]](#ref-2)[[3]](#ref-3). AG-UI also documents relationships with two adjacent generative-UI specs — A2UI (which it calls its own declarative generative-UI companion, with AG-UI as A2UI's 'standard transport binding') and MCP Apps — treating both as things it can carry rather than as competitors.

What is disputed or unknown: there is no independent, documented count of production deployments; the evidence here is repository activity and named partner integrations, which is 'observed,' not a measured census. The relationship between AG-UI, originated and still steered largely by CopilotKit, and 'community' governance is informal — there is a public Discord and a biweekly working group, but no independent foundation. It is unclear how much of the 1st-party partner list reflects deployed production traffic versus documented compatibility.

## Discovery and probe

No fixed well-known path; a client is coded against a known agent backend endpoint that emits an AG-UI-compatible event stream over an agreed transport (SSE, WebSockets, webhooks)

```
POST {endpoint} — the application-defined AG-UI run endpoint (no fixed path; confirmed per-integration, e.g. via a framework's AG-UI adapter)
parse:     Response is an event stream using AG-UI's ~16 standard event types (e.g. TEXT_MESSAGE_START/CONTENT/END, RUN_ERROR, STATE_SNAPSHOT); presence of these event names confirms AG-UI compliance
on absent: No AG-UI-shaped event stream; the backend is not exposing an AG-UI-compatible interface
```

Not probed live: no-fixed-path. The AG-UI run endpoint is application-defined.

## History
- 2026-09-05 — seeded from Exa Agent research run
- 2026-09-06 — verified against docs.ag-ui.com/introduction, github.com/ag-ui-protocol/ag-ui, and CopilotKit's original announcement

## Instances

- [Microsoft Agent Framework (1st party)](https://docs.ag-ui.com/introduction) · Observed 2026-09-05 · service
- [LangChain / LangGraph and CrewAI (launch partnerships)](https://github.com/ag-ui-protocol/ag-ui) · Observed 2026-09-05 · service
- [Google ADK (1st party)](https://docs.ag-ui.com/introduction) · Observed 2026-09-05 · service
- [CopilotKit (reference/1st-party client)](https://github.com/CopilotKit/CopilotKit) · Observed 2026-09-05 · service
- [AWS Strands Agents / AWS Bedrock AgentCore (1st party)](https://docs.ag-ui.com/introduction) · Observed 2026-09-05 · service
- [AG-UI Dojo (building-blocks demo viewer across all supported frameworks)](https://dojo.ag-ui.com/) · Observed 2026-09-05 · service
- [CrewAI](https://www.crewai.com) · Observed 2026-07-24 · service
- [Mastra](https://mastra.ai) · Observed 2026-06-28 · service
- [Google Agent Development Kit (ADK)](https://google.github.io/adk-docs/) · Observed 2026-06-28 · service
- [AWS Strands Agents](https://strandsagents.com) · Observed 2026-06-28 · service
- [Microsoft Agent Framework](https://github.com/microsoft/agent-framework) · Observed 2026-04-08 · service

Every instance with its source is listed on the [instances page](/instances/).

## See also

- Not to be confused with: A2UI

## References

- CopilotKit's own announcement post, dated May 12, 2025, introduces AG-UI as 'an open, lightweight protocol that streams a single sequence of JSON events over standard HTTP or an optional binary channel.' — [https://webflow.copilotkit.ai/blog/introducing-ag-ui-the-protocol-where-agents-meet-users](https://webflow.copilotkit.ai/blog/introducing-ag-ui-the-protocol-where-agents-meet-users) (2025-05-12) VERIFIED
- docs.ag-ui.com/introduction (fetched 2026-09-05) describes AG-UI as an open, lightweight, event-based protocol, positions it as the 'Agent ↔ User Interaction' layer alongside MCP (Agent ↔ Tools & Data, from Anthropic) and A2A (Agent ↔ Agent, from Google), and lists 1st-party integrations from Microsoft Agent Framework, Google ADK, AWS Strands/Bedrock AgentCore, plus SDKs in Kotlin, Go, Dart, Java, Rust, Ruby, C++, .NET. — [https://docs.ag-ui.com/introduction](https://docs.ag-ui.com/introduction) (2026-09-05) VERIFIED
- GitHub repo github.com/ag-ui-protocol/ag-ui carries an MIT license, 15.7k stars, 3,840+ commits, and daily commit activity as of Sep 4-5, 2026, indicating an actively maintained, multi-contributor project rather than a dormant announcement. — [https://github.com/ag-ui-protocol/ag-ui](https://github.com/ag-ui-protocol/ag-ui) (2026-09-05) VERIFIED

[JSON](/data/protocols/ag-ui.json) · [Markdown](/protocols/ag-ui/index.md)
