What changed
A2UI lets an agent describe an interface that an application renders using registered components. The model can assemble a screen from an approved vocabulary while the application retains its own widgets and visual language. This is useful when a conversation needs choices, forms or a structured result alongside prose.
Google’s November 11 announcement introduces the first stable protocol version, including bidirectional function calls and accessibility metadata. Treat the release as a contract to evaluate. A protocol milestone does not, by itself, establish that an integration is fast, accessible or safe in your application; those outcomes need application-level evidence.
Check the complete support chain
Start with the client you actually ship. The project lists React, Angular, Lit, Flutter and SwiftUI renderers. The announcement says Jetpack Compose and Gemini’s registered-agent integration are still on 0.9.1, with upgrades forthcoming; Lynx supports 0.9. Record that distinction instead of assuming the framework name on a landing page means 1.0 compatibility.
Create one inventory row for each deployed client: host, renderer package, protocol, catalog and agent SDK. Pin the versions you test. If an existing host remains on an older protocol, keep its compatible path available and route deliberately by supported version. A mixed estate needs an upgrade plan, rather than an all-or-nothing launch date.
Treat the catalog as an API
The migration guide documents breaking catalog changes. Review its rules against a small representative catalog before changing every screen. In particular, a global path-to-@path replacement is incorrect: the guide distinguishes dynamic bindings from other path fields. Review the meaning of each field, then keep before-and-after fixtures for the messages your application uses.
A component or function being registered is one boundary. Permission to perform a business operation is another. For example, a rendered confirmation control should still reach a server that checks the signed-in user, the requested operation and the current resource state. Make that authorization visible in your implementation review; do not infer it from a successful render.
Run a small, observable trial
Choose one reversible workflow and write its expected states before connecting a model. A useful first trial might collect a preference and show a preview, while leaving any consequential action behind the application’s existing confirmation flow. Keep the component set small enough that someone can inspect every available interaction.
Codorc recommends the following checks. These are proposed acceptance criteria, not tests we have run against A2UI:
- Replay a fixed set of valid messages and check the rendered state, not only whether parsing succeeds.
- Send an unknown component, an unregistered function and a disallowed caller. Confirm that each fails without invoking a business operation.
- Interrupt the stream halfway through a form, reconnect, and check whether entered values and pending actions remain understandable.
- Use the keyboard through every control. Check focus after updates, accessible names and announcements with a screen reader.
- Compare the same task in each supported language and at a narrow phone width. Look for clipped labels, reordered meaning and unusable validation errors.
- Record time to a usable interface, completed tasks, retries and review effort against your existing flow. Define a rollback trigger before inviting more users.
Choose it for the interaction you need
The official quickstart is a learning sample, rather than a production template. Use it to understand where the agent, catalog, transport and renderer meet, then review the parts your own application must supply.
A2UI is worth evaluating when an agent needs to compose different arrangements of familiar controls within your design system. For a fixed, well-understood task, an ordinary form may remain easier to test and maintain. Decide from the interaction and the supported deployment path, then expand only when the trial gives you evidence.
Event dates refer to the original announcement. Publication dates show when this article first appeared on Codorc.



