Skip to main content
ExodeUI

EXODEUI DESKTOP

A little space for good ideas.

Choose your platform to get the official ExodeUI installer.

Looking for Intel Mac or other builds? Explore the web studio or check all download options.

Prefer the browser? Try for free in your browser →
AIインターフェース7 分で読めます·Updated 2026年10月·ExodeUI チーム

A2UI の説明: Agent-to-UI プロトコルが行うこと (および行わないこと)

A2UI は、AI エージェントがクライアントがレンダリングするインターフェイスを記述できるようにする宣言型 JSON プロトコルです。それがどのように機能するか、どのレンダラーが存在するか、そしてそれが何をしないのか。

要点まとめ

核心

A2UI (エージェントから UI) は、Google によって作成されたオープンな宣言型 JSON プロトコルです。 AI エージェントはインターフェイスの説明を送信し、クライアントはエージェントからコードを実行するのではなく、独自のネイティブ コンポーネントを使用してそれをレンダリングします。これは、アニメーション システム、コンポーネント ライブラリ、または完成したレンダラーではなく、信頼境界を越えて UI 構造とデータを移動する方法です。 ExodeUI は A2UI レンダラーではなく、Google と提携していません。

A2UIとは何ですか?

A2UI は、エージェント駆動インターフェイス用のプロトコルです。 AI エージェントは、大量のテキストを返したり、生成されたコードを実行したりする代わりに、UI を記述する JSON メッセージのストリーム (どのサーフェスを作成するか、どのコンポーネントが含まれるか、どのデータがそれらを埋めるか) を送信します。クライアントはこれらのメッセージを受信し、すでに信頼しているコンポーネントを使用して結果をレンダリングします。 A2UI は Google によって作成され、Apache 2.0 ライセンスを取得しており、CopilotKit とオープンソース コミュニティからの貢献を受けています。 2026 年 10 月の時点で、現在の製品仕様は v0.9.1 であり、v1.0 はリリース候補でした。

A2UI が解決しようとしている問題

エージェントは有用な回答を生み出すのは得意ですが、それをインターフェースとして提供するのは苦手です。テキスト応答では、比較表、注文フォーム、またはダッシュボードを表示できません。任意の HTML または JavaScript を生成すると、クライアントが作成していないコードを実行するようになるため、プレゼンテーションの問題が解決され、セキュリティの問題が発生します。 A2UI は 3 番目のルートを選択します。エージェントは制約された形式で UI を記述し、クライアントはそれをレンダリングする方法を決定します。エージェントはクライアントが承認したコンポーネントのみを使用でき、出力は実行可能コードではなくデータです。

A2UI サーフェスの構築方法

このプロトコルは、少数のメッセージ タイプのセットを使用します。正確なスキーマはバージョン間で異なるため、実装する前に仕様を確認してください。ただし、形状は安定しています。

  • createSurface: レンダラーに新しいサーフェスを作成するように指示します。これは、エージェントが更新できるインターフェイスの領域です。
  • updateComponents: そのサーフェス上のコンポーネント定義を追加または変更します
  • updateDataModel: 構造を再送信せずに、コンポーネントが表示するデータを変更します。
  • deleteSurface: 不要になったサーフェスを削除します

レンダラーとトランスポート

A2UI はトランスポートに依存しません。仕様ではメッセージについて説明しますが、メッセージの伝達方法については説明しません。このプロジェクトには、Angular、Flutter、Lit、React、Markdown のレンダラー実装と、AG-UI、A2A、MCP のトランスポート バインディングがリストされており、WebSocket、SSE、REST も使用できます。この柔軟性が重要です。同じエージェントの応答を、それぞれ独自の設計システムを使用する Web クライアント、モバイル アプリ、またはデスクトップ アプリケーションによってレンダリングできます。

A2UI がしないこと

A2UI は読みすぎやすいです。アプリにドロップできるコンポーネント ライブラリは同梱されておらず、それ自体では何もレンダリングされません。クライアントが制御するレンダラーとコンポーネント カタログが必要です。 UI の動きは決まりません。これは、ツールとデータをモデルに公開する MCP や、エージェントとフロントエンド間の対話イベントを伝達する AG-UI に代わるものではありません。また、エンジニアリング レビューの必要性がなくなるわけではありません。生成されたインターフェイスは、読み込み、空の状態とエラーの状態、権限とアクセシビリティを処理する必要があります。

A2UI vs AG-UI vs MCP

これら 3 つは同じ問題の異なる層を解決するため、一緒に言及されることがよくあります。便利な略記: A2UI はインターフェイスを記述し、AG-UI は対話を実行し、MCP はエージェントにツールとデータを提供します。 A2UI 自身のドキュメントでは、AG-UI が A2UI のトランスポート バインディングとして説明されており、A2UI は MCP を介して移動することもできます。これらは補完的なものであり、競合する標準ではありません。統合を選択する場合は、最も勢いのあるプロトコルからではなく、クライアントがレンダリングできるものと、すでにサポートしているトランスポートから始めてください。

アニメーションとインタラクションが適合する場所

A2UI は構造とデータを記述します。モーションはクライアントの関心事です。レンダラーは、サーフェスが即座に表示されるか、フェードインするか、前の状態から遷移するかを決定します。これは製品チームにとって朗報です。アニメーション システムがクライアント内に保持され、デザイン システムとアクセシビリティ設定を尊重できるからです。これは、A2UI 実装が自動的にアニメーション化されないことも意味します。生成されたインターフェイスでボタンの押下、状態遷移、またはマスコットの反応が必要な場合、クライアントはその動作を提供する必要があります。 ExodeUI はクライアントでインタラクティブ モーションを再生でき、AI コーディング ツール用の MCP サーバーを備えていますが、A2UI レンダラーではないため、A2UI レンダラーとして説明すべきではありません。

実装コード例

インタラクティブコンポーネントの実装
// Simplified shape of an A2UI message stream (schema differs by version).
{ "createSurface":    { "surfaceId": "cart" } }
{ "updateComponents": { "surfaceId": "cart", "components": [ /* ... */ ] } }
{ "updateDataModel":  { "surfaceId": "cart", "data": { /* ... */ } } }
{ "deleteSurface":    { "surfaceId": "cart" } }

覚えておきたい原則

  • A2UI は、エージェント記述インターフェイス用の JSON プロトコルであり、Google によって作成され、Apache 2.0 でライセンスされています。
  • クライアントは独自のコンポーネントを使用してレンダリングします。エージェントは任意の UI コードを実行しません
  • メッセージを定義し、レンダラー、トランスポート、モーションをクライアントに任せます。
  • アニメーション システムやドロップイン コンポーネント ライブラリではありません
  • ExodeUI は A2UI レンダラーではなく、Google との提携はありません。

よくある質問

関連ガイドと事例

インタラクティブな UI を一度デザインし、同じファイルを出荷する。

ExodeUI で状態、スプリング物理、ロジックを視覚的に作成し、同じファイルを React、SwiftUI、Flutter などで再生できます。無料で始められます。

Exode を無料で試す