AGenUI/AGenUI

Native A2UI Renderer for iOS/Android/HarmonyOS. High performance streaming Generative UI. Custom Components, Styles and more.

AGenUI は、大規模言語モデルからのストリーミング出力を、3つの主要モバイルプラットフォームすべてでネイティブなインタラクティブUIに変換するオープンソースSDKです。LLMエージェントが画面の外観を決定すると、UI(テキスト、ボタン、フォーム、リスト、画像、ビデオなど)を記述する構造化メッセージを出力します。AGenUIは、そのメッセージをライブフィードのように断片的に到着次第解析し、デバイス上に対応するネイティブUIコンポーネントを描画するため、モデルが生成している間にインターフェースが表示され更新されます。

これは、LLMエージェントがUIを記述するための標準的な方法としてGoogleがオープンソース化したA2UI v0.9プロトコルに基づいています。AGenUIは、この仕様を完全に実装し、独自の拡張機能を追加しています。

エンジニアリングの仕組み: 共有のC++コアエンジンが、すべてのプラットフォームに共通する高負荷な処理(ストリーミングデータの解析、仮想コンポーネントツリーの構築、レンダリングデータのキャッシュ、テーマ/スタイルの解決、変更の差分計算)を処理します。その下で、3つのプラットフォーム固有のレンダリングエンジン(iOS、Android、HarmonyOS)が、C++レイヤーから解析されたコンポーネントの記述を受け取り、各システムのネイティブUI機能を使用して描画します。これにより、スムーズで高リフレッシュレートなレンダリング(スクロールなどのコアシナリオで120fps)が実現されます。

主な機能:

  • 22の組み込みコンポーネント — A2UI仕様の18個(Text、Image、Button、Card、List、Tabs、Slider、CheckBox、Modalなど)に加えて、SDK拡張の4個(Table、Carousel、Web、RichText)。実行時に独自のカスタムネイティブコンポーネントを登録することもできます。
  • Function Call統合 — 開発者は、LLMがオンデマンドで呼び出せるクライアント側ツールを登録できます。v1.7.0では、JSON内のネストされた関数呼び出しを再帰的に実行し、各呼び出しノードをその結果に置き換える組み込みのresolveCallsが追加されました。
  • デザイントークンとテーマ — 3つのプラットフォームすべてで統一されたトークンシステムとライト/ダークモード。
  • カタログファイル(agenui_catalog.json) — 25のコンポーネントと14の関数を記述した、自己完結型のスタンドアロンJSONスキーマ(A2UI v0.9準拠)。エージェントはこれを制約として使用し、LLMが厳密に準拠したUI記述を出力するようにします。
  • A2UI生成スキル(skills/a2ui-generation/) — Agent Skillsメカニズムをサポートする任意のエージェント(Claude Code、Cursor、Codex、Gemini CLI、GitHub Copilotなど)にマウントできるスタンドアロンスキル。自然言語クエリを、AGenUIが直接レンダリングできるA2UIプロトコルメッセージに変換するようにLLMをガイドします。npx skills add AGenUI/AGenUIでインストールできます。
  • AGenUI Studio — ローカルのBYOK(Bring Your Own Key)ワークベンチ(npx agenui-studio)。自然言語をA2UIプロトコルに変換し、ストリーミング生成、ライブプロトコルプレビュー、検証、QRコードによる実機のPlaygroundへのワンタッププッシュのためのブラウザUIを提供します。複数のLLMプロバイダー(DeepSeek、Qwen、GLM、OpenAI、Geminiなど)をサポートしています。

プロジェクト構造:

  • core/ — C++コアエンジン(パーサー、差分計算、レイアウト、Function Callフレームワーク)
  • platforms/ios|android|harmony/ — ネイティブレンダラーとブリッジングレイヤー(Objective-C、JNI、NAPI)
  • playground/ — プラットフォームごとのデモアプリ(開発とデバッグ用)
  • scripts/ — 各プラットフォームのビルドスクリプト

Apache 2.0ライセンスで公開されており、活発に開発が進められています(現在のバージョンv1.7.0、2026年10月19日リリース)。変更履歴は2026年後半の日付であるため、急速に進化しているプロジェクトです。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト