On November 11 Google released A2UI 1.0, the first stable version of its open generative UI protocol (Apache 2.0). Instead of replying with a wall of text, an agent describes the cards, pickers or charts to show, and each app renders them with its own native components. Version 1.0 adds bidirectional function calls and accessibility support, ships renderers for React, Angular, Lit, Flutter and SwiftUI, and offers agent SDKs for Python, TypeScript and Dart. An official Google Cloud Tech article says the new default inference format, A2UI Express, cut generated UI code tokens by 63.2% on a 54-sample test. Atlassian, Alation, Bloomberg and ByteDance are already building with it.

Key Takeaways

  • ✓A2UI 1.0 is the first stable release, open source under Apache 2.0; the Jetpack Compose renderer is still on 0.9.1, with 1.0 "coming soon"
  • ✓1.0 adds bidirectional function calls (a reservation picker can check availability on the spot), accessibility support and metadata extensions
  • ✓New default A2UI Express format: on a 54-sample test with gemini-3.8-flash, median prompt tokens fell 45.4% (10,980 to 6,000) and generated UI code tokens fell 63.2% (official figures)
  • ✓Security by design: UI messages are pure declarative data with no scripts or CSS, and agents can only use components and functions allowlisted in catalog.json
  • ✓The web and Flutter renderers run inside MCP Apps, so A2UI screens can appear in assistants that support MCP Apps, such as Claude and Gemini
Google Releases A2UI 1.0, the First Stable Version of Its Open Generative UI Protocol: Agents Answer With Native Forms and Charts, and the New Default Express Format Cuts UI Output Tokens by About 63%
🖼️Official Media
Click to view high-res
🧭

Turn your technical choice into a development budget

Compare 40 dev plans & simulate token costs vs $20/mo subscriptions

🔬

In-Depth Technical Analysis

Background and pain points

Most agents today only reply in text. Comparing three products or editing and approving a plan through walls of text is slow. Letting a model generate raw HTML/JS makes it hard to follow a company's design system and turns prompt injection into an XSS risk. Google's A2UI 1.0, released November 11, is a stable open protocol for how an agent can safely answer with an interface.

Architecture highlights

The agent only describes what to show, and the app draws it with its own native components. UI messages are pure declarative JSON, and agents can only reference components and functions registered in catalog.json. Version 1.0 also adds allowedCallers and requiresUserActivation flags on client functions, so navigation or clipboard actions need a real user tap. On the server, the model writes the compact Express DSL, which the SDK compiles into standard JSON/JSONL; data can be bound server-side with @macro so sensitive values never reach the model.

Benchmarks

Google's figures: on the 54-sample core_v1_0 test (gemini-3.8-flash, temperature 0), Express cut median prompt tokens from 10,980 to 6,000 (-45.4%), and generated UI code tokens fell 63.2% without thinking and 67.3% with thinking. One customer cut clinical dashboard latency from 10 seconds to 5. There is no third-party comparison with other generative UI approaches yet.

Getting started

Add the skill to your coding agent with npx skills add a2ui-project/a2ui, or install the SDKs with pip install a2ui-agent-sdk or npm install @a2ui/agent @a2ui/react @a2ui/web_core. If you are on 0.9, follow the official evolution guide. Note that the Android Compose renderer and ByteDance's Lynx are still on 0.9.x, and Gemini Enterprise supports 0.9.1 while it upgrades to 1.0. The CopilotKit A2UI Playground is an easy place to try it.

Action HubReady to adopt this in production?

Benchmark side-by-side against alternatives, or calculate monthly token cost vs subscription break-even.

Up NextClaude Launches Whiteboards and Sheets in Beta, Renames Dashboards to Claude Data at General Availability, and Lets Interactive Connectors Open Full Adobe, Atlassian, and Box Apps Inside Claude
Read Now→