A2UI

  
The Jetpack Compose Agent-to-UI (A2UI) renderer provides an implementation of the A2UI protocol, enabling AI agents to generate rich, interactive user interfaces that render native Compose components—without executing arbitrary code.
Latest Update Stable Release Release Candidate Beta Release Alpha Release
September 23, 2026 - - - 1.0.0-alpha01

Declaring dependencies

To add a dependency on A2UI, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

Groovy

dependencies {
    implementation "androidx.a2ui:a2ui-engine:1.0.0-alpha01"
    implementation "androidx.a2ui:a2ui-model:1.0.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.a2ui:a2ui-engine:1.0.0-alpha01")
    implementation("androidx.a2ui:a2ui-model:1.0.0-alpha01")
}

For more information about dependencies, see Add build dependencies.

Feedback

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Version 1.0

Version 1.0.0-alpha01

September 23, 2026

androidx.a2ui:a2ui-engine:1.0.0-alpha01 and androidx.a2ui:a2ui-model:1.0.0-alpha01 are released. Version 1.0.0-alpha01 contains these commits.

New Features

The Jetpack Compose Agent-to-UI (A2UI) renderer provides an implementation of the A2UI protocol, enabling AI agents to generate rich, interactive user interfaces that render native Compose components—without executing arbitrary code. This library performs protocol message parsing, schema validation, and provides foundational APIs for building UI renderers.

API Changes

  • Added acceptsUnresolvedArguments to A2uiFunctionDefinition and getFunctionDefinition to A2uiExecutionContext to allow functions like required to execute when data bindings cannot be resolved. (I74d9f, b/547851648)
  • Added A2uiFunctionArgParser.getEpochMillisArg and updated formatDate to support ISO 8601 date-time strings and epoch timestamps. (Id04ec)
  • Added A2uiClientCapabilities and clientCapabilities to A2uiCoreMessageProcessor to support A2UI capabilities advertisement. (Ia3316, b/532000711)
  • Add A2uiMessageParser, A2uiJsonMessageParser and A2uiJsonReader (I52762, b/537133532)
  • Add createBasicCatalogFunctions (I1f003, b/527907617)
  • Add A2uiFormatStringFunction. Add support for component-level caching for functions through A2uiExecutionContext (Id4da7, b/527907617)
  • Added A2uiExecutionContext interface and its implementation A2uiCoreExecutionContext. Added method for payload evaluation in A2uiSurfaceModel. (I7957c, b/531999707)
  • Add A2uiCoreDynamicResolver interface (Ic84f8, b/531999707)
  • Added A2UI's basic catalog functions except for FormatString (Ied352, b/527907617)
  • Created interfaces for A2uiCoreCatalog, A2uiCoreComponentDefinition, A2uiFunctionDefinition and A2uiFunction (I9916d, b/527821290)
  • Initialize an artifact for the runtime layer of the Compose A2UI renderer. (I8be68, b/524122705)
  • rename a2ui module to a2ui-core (Ia286d)

Bug Fixes

  • Updated A2uiMessageFormatter documentation to clarify argument mismatch behavior. (I2efad)