Лид: Google выложила в открытый доступ A2UI - спецификацию и референсные реализации, которые позволяют агентам не просто отвечать текстом, а присылать описание интерфейса в виде JSON. Клиент сам рендерит этот JSON с помощью своих нативных виджетов, что решает проблему безопасности и визуальной консистентности.
Контраст: раньше чат-агенты отсылали длинные текстовые инструкции или пытались встраивать HTML/скрипты в iframe - решение громоздкое, ненадежное и рискованное при работе между организациями. A2UI меняет логику: агент не посылает код, он посылает данные об интерфейсе.
Что такое A2UI
A2UI - это открытый стандарт и набор библиотек, позволяющих агентам "говорить UI": агент возвращает JSON-пейлоад с описанием компонентов, их свойств и модели данных. Клиент сопоставляет эти компоненты с собственными виджетами - будь то Angular компоненты, Flutter виджеты, React элементы или SwiftUI представления.
Какая проблема решается
Главная боль - задачи, которые в чате превращаются в кучу шагов: бронирование столика, заполнение структурированных форм, ввод дат и времени. Вместо длинных вопросов агент просит маленькую форму - date picker, time selector, кнопку отправки. Проблема усиливается в мультиагентных сценариях и при работе через доверительные границы, когда удаленный агент не может менять DOM хоста. Исторически это решали через iframes с HTML и скриптами - визуально и с точки зрения безопасности это плохо. A2UI предлагает безопасный, близкий к данным формат, способный описывать сложные макеты без исполняемого кода.
Ключевые принципы дизайна
- Безопасность прежде всего - UI это данные, а не код. Клиент хранит каталог доверенных типов компонентов (например Card, Button, TextField), и агент может ссылаться только на них, что снижает риск UI инъекций и исполнения произвольных скриптов.
- Дружелюбность к LLM - внутренняя структура плоская и основана на ссылках-идентификаторах, что упрощает генерацию и инкрементальные обновления интерфейса с помощью моделей. Агент может обновлять вид постепенно, не пересылая весь вложенный JSON заново.
- Фреймворк-агностичность - один A2UI пейлоад можно отрисовать на разных клиентах: web, mobile, desktop. Агент описывает дерево компонентов и модель данных, а каждый клиент мапит это на свои виджеты.
- Прогрессивный рендеринг - формат заточен под стриминг: клиенты могут рендерить частичные интерфейсы по мере поступления данных, так что пользователь видит интерфейс собирающимся в реальном времени.
Архитектура и поток данных
A2UI разделяет генерацию, транспорт и рендеринг. Пользователь пишет сообщение агенту, агент (часто на базе Gemini или другой модели, умеющей генерировать JSON) отвечает A2UI сообщением с описанием компонентов, слоев и биндингов. Сообщения могут стримиться по транспортам вроде Agent-to-Agent (A2A) или AG UI. Клиентская библиотека парсит пейлоад и резолвит каждый тип компонента в конкретный виджет в кодовой базе хоста. Действия пользователя, например клик по кнопке или сабмит формы, уходят назад как события, на которые агент отвечает новыми A2UI сообщениями и обновляет интерфейс.
Статус проекта и лицензия
Проект сейчас в раннем публичном превью, версия v0.8, лицензия Apache 2.0. Google опубликовала референсные рендереры, quickstart-примеры и production-интеграции в проектах вроде Opal, Gemini Enterprise и Flutter GenUI. В репозитории на GitHub есть технические детали и примеры для инженеров, желающих попробовать прямо сейчас.
Ключевые выводы
- A2UI делает ставку на безопасную передачу интерфейса как данных, а не кода.
- Формат оптимизирован под LLM-пайплайны: плоская, обновляемая структура и поддержка стриминга позволяют агентам постепенно дорабатывать UI в диалоге.
- Транспорт-агностичность и наличие референсных рендереров ускоряют интеграцию в существующие продукты.
Куда движется индустрия
Тренд заметен: индустрия переходит от текстовых ответов к структурированным интерфейсам, которые агенты могут предлагать и обновлять в реальном времени. В ближайшие 6-12 месяцев ожидается рост интереса к стандартам подобным A2UI, появление общих каталогов компонентов и усиление внимания к безопасности и доступности. Большие модели, такие как Gemini, уже используются в связке с A2UI для генерации валидных JSON-пейлоадов, но ключевые вопросы остаются - как управлять каталогами компонентов на множестве клиентов, как гарантировать единый UX и как проверять политики безопасности при совместном использовании между организациями.
Практический вывод для инженеров: думайте не только о модели, но и о контролируемом наборе UI-компонентов, стриминговой поддержке и механизмах валидации. Архитектуру можно поменять, а потерянное доверие между хостом и удаленным агентом отстроить гораздо сложнее.
Автор заметки в источнике - Asif Razzaq из Marktechpost. Материал указывает на то, что A2UI уже интегрируется с рядом проектов и готова к тестированию в реальных системах.
