
A2UI lets an AI agent stream a live, interactive interface instead of only returning text.
Grounded in available product and source data
An AI agent that only returns text can't show a form, a chart, or a map — it can only describe one. A2UI is an open protocol for agent-generated interfaces built specifically to close that gap, letting an agent send a real, interactive UI instead of a wall of text.
The core design choice is what makes it safe to use across a trust boundary: rather than an agent shipping executable code, it sends a declarative description of structure and data, and the client renders that description using its own pre-approved, native widgets. Secure by Design follows directly from that — since agents can only reach for components already in a catalog, there's no path for a UI-injection attack through the agent's own output.
Because the format is a flat, streaming JSON structure, an LLM doesn't need to produce a perfect, complete document in one shot — Progressive Rendering lets a UI build up on screen as the agent generates it, so a user sees something appearing immediately rather than staring at a loading state. Framework-Agnostic support means the same agent response renders on Angular, Flutter, React, or native mobile through each platform's own styled components rather than one hardcoded look.
A2UI is Apache 2.0 licensed, created by Google with contributions from CopilotKit and the open source community, and ships with both a Composer (generating A2UI JSON from a visual editor, no install required) and a Theater (stepping through pre-built streaming demos across multiple renderers) so a developer can see the protocol working before writing any integration code. The page reviewed does not specify a required minimum client SDK version for full v1.0-candidate compatibility, worth checking directly before upgrading an existing renderer.
No — A2UI is specifically a declarative data format rather than executable code, so an agent can only assemble pre-approved components from a catalog, which is the mechanism that prevents UI-injection attacks.
No — Progressive Rendering streams UI updates as the agent generates them, so an interface can build up visibly in real time rather than only appearing once generation is fully complete.
No — a single agent implementation can serve both, since the protocol itself carries the UI description and each client-side renderer handles turning it into that platform's own native widgets.
It accepts outside contributions — the project already includes work from CopilotKit and the broader open source community on top of Google's original work, and remains under active development on GitHub.


