A2UI is an open-source protocol from Google that enables AI agents to generate UIs through declarative JSON instead of executable code. Unlike HTML/JavaScript approaches that require sandboxing, A2UI uses a trusted component catalog model where agents can only request pre-approved UI elements (Button, Form, Card, etc.). The client renders these JSON descriptions using native widgets (React, Flutter, etc.), maintaining full control over styling and branding.
Key innovation: separates "what to display" (agent's responsibility) from "how to display" (client's control), solving security issues in multi-agent systems. The protocol uses JSONL for streaming, making it LLM-friendly for incremental generation. Same JSON can render natively across web, mobile, and desktop platforms.
Addresses the "Chat Wall" problem where text-only interactions fail for structured input. Instead of back-and-forth text exchanges, agents can dynamically generate action surfaces (forms, date pickers) at the moment they're needed.
Includes comparison with HTML/iFrames, implementation guidance, and real-world examples. The protocol is complementary to existing frameworks (React, Flutter) rather than replacing them.
A2UI is an open-source protocol from Google that enables AI agents to generate UIs through declarative JSON instead of executable code. Unlike HTML/JavaScript approaches that require sandboxing, A2UI uses a trusted component catalog model where agents can only request pre-approved UI elements (Button, Form, Card, etc.). The client renders these JSON descriptions using native widgets (React, Flutter, etc.), maintaining full control over styling and branding.
Key innovation: separates "what to display" (agent's responsibility) from "how to display" (client's control), solving security issues in multi-agent systems. The protocol uses JSONL for streaming, making it LLM-friendly for incremental generation. Same JSON can render natively across web, mobile, and desktop platforms.
Addresses the "Chat Wall" problem where text-only interactions fail for structured input. Instead of back-and-forth text exchanges, agents can dynamically generate action surfaces (forms, date pickers) at the moment they're needed.
Includes comparison with HTML/iFrames, implementation guidance, and real-world examples. The protocol is complementary to existing frameworks (React, Flutter) rather than replacing them.
Discussion: https://news.ycombinator.com/item?id=46286407