ai for designersApril 28, 202614 min read

AIエージェントUIデザインパターン:自律型ツールのインターフェース構築方法

AIエージェントUIデザインのための実用的なパターンライブラリ。Claude Code、Cursor、Devin、Linear、ChatGPT Operator、Replit Agent、Bolt、v0の8つの実際の製品分解に加え、すべてのエージェントインターフェースに必要な7つのパターンが含まれています。

By Boone
XLinkedIn
ai agent ui design patterns

AIエージェントのUIデザインは、チャットデザインに自律性を後付けしたものではありません。エージェントは、目標を設定し、経路を計画し、各ステップごとに許可を求めることなくツールを実行する自律的なワーカーです。そのワーカーのインターフェースは、会話ではなく、コントロールサーフェスです。最も洗練されたエージェントUIを提供する製品は、最初のワイヤーフレームからそのように設計されています。

優れたエージェントUIには、7つのパターンが必ず存在します。タスクの枠組み、自律性制御、計画サーフェス、進捗状況ストリーム、確認ゲート、エラー回復、そしてエージェントの引き継ぎです。現在、ほとんどの製品はこれら7つのうち4つしか実装しておらず、残りの3つは重要ではないかのように扱っています。その結果、デモでは見栄えの良いインターフェースでも、実際の使用では機能しなくなるのです。

この記事は、その運用上の解決策を提示します。 7つのパターン、Claude Code、Cursor、Devin、Linear AI、ChatGPT Operator、Replit Agent、Bolt、v0の8つの分解分析、3つの一般的なバグとその正確な修正方法、そしてUIが実際のユーザーの手に渡る前にデザイナーが実行できる15分間の出荷前チェックリスト。

エージェントUIはチャットウィンドウではなく、コントロールサーフェスです

AIエージェントUIは、自律型ワーカーのためのインターフェースです。設計上の課題は、チャットスレッドよりもフライトデッキに近いものです。ユーザーはもはやチャットでやり取りするのではなく、目標を設定し、プロセスを監督します。

チャットUIはターン交代を最適化します。エージェントUIは、目標の明確さ、計画の可視性、進捗状況のテレメトリ、およびオーバーライド機能に最適化します。初期のエージェント製品の多くは、チャットにいくつかの「思考中」インジケーターとツール使用ログを追加することで、この点を誤っていました。ユーザーはチャットスレッドをじっと見つめていましたが、計画を確認する方法も、実行を一時停止する方法も、エージェントが予期せぬ動作をした場合の復旧方法もありませんでした。エージェントUIをコントロールサーフェスとして扱うことで、以下の7つのパターンはオプションではなくなり、必須の機能となります。

すべてのエージェントUIに必要な7つのパターン

タスクフレーミング、自律性スライダー、プランサーフェス、プログレス ストリーム、確認ゲート、エラー回復、エージェントハンドオフ。現在出荷されているすべてのエージェントUIは、これら7つのパターンのいずれかの組み合わせで構成されています。

タスクフレーミングとは、ユーザーが目標を記述する方法です。自律性コントロールとは、ユーザーがエージェントにどれだけの自由度を与えるかを選択する方法です。プランサーフェスとは、エージェントが行動を起こす前に一連のステップを実行することを約束する場所です。プログレス ストリームとは、エージェントが現在行っている作業のリアルタイムフィードです。確認ゲートとは、破壊的なアクションを実行する前の待機時間です。エラー回復とは、失敗したステップから元の状態に戻るためのパスです。エージェントハンドオフとは、コンテキストを失うことなく、タスクをエージェントから人間へ、またはエージェントからエージェントへ引き継ぐ状態ダンプです。

スタジオの床に水平に並べられた7つの小さな重いブロックのボクセル図。各ブロックは異なるくすんだ色で、それぞれ「FRAME AUTONOMY PLAN PROGRESS CONFIRM RECOVER HANDOFF」という単語のラベルが付いている。
スタジオの床に水平に並べられた7つの小さな重いブロックのボクセル図。各ブロックは異なるくすんだ色で、それぞれ「FRAME AUTONOMY PLAN PROGRESS CONFIRM RECOVER HANDOFF」という単語のラベルが付いている。

7つの要素はそれぞれ重要度が異なりますが、すべて必須です。タスクの枠組み設定機能のみを備え、計画画面がない製品は、まさに当てずっぽうのゲームです。確認ゲート以外のすべての機能を備えた製品は、いつ重大な事故が発生してもおかしくありません。これらの要素は相互に影響し合い、どれか一つを省略すると他の要素も弱体化します。

タスクの枠組み設定が契約を定める

不適切なタスクの枠組み設定とは、ユーザーが曖昧な文章を入力すると、エージェントが推測に基づいて残りの部分を補完する、汎用的なチャットボックスのようなものです。適切なタスクの枠組み設定とは、エージェントが必要とする具体的な情報を求める、構造化された入力です。

LinearのAI機能は、この点をうまく実現しています。ユーザーが短い概要を入力すると、AIがそれを解析し、タイトル、説明、ラベル、そしてユーザーがコミット前に編集できるプロジェクト割り当てを含む構造化された課題を作成します。枠組み設定は制約があり、出力は構造化されており、コミット前に明確な編集機能が備わっています。

枠組み画面は、タスク自体と同様に構造化されている必要があります。コーディングタスクには、目標、対象ファイル、受け入れ基準が必要です。Web自動化タスクには、開始URL、対象アクション、停止条件が必要です。汎用的なチャット入力は探索には適していますが、本番環境では不向きです。

自律性制御により、ユーザーは制御範囲を選択できます

信頼は一定ではなく、1つの設定ですべてのタスクをカバーできるわけではありません。

Claude Codeは、独自の権限システムでこれを実現しています。ユーザーは、すべてのツール呼び出しに承認が必要なモード、一般的なツールは自動承認、リスクの高いツールは引き続き承認が必要なモード、または完全な自律モードで実行できます。モードは表示され、セッション中に切り替え可能で、ユーザーはエージェントがどの制御範囲にあるかを正確に把握できます。

ほとんどの製品は、製品に組み込まれた1つの自律性設定のみを提供しており、タスクごとの制御やステータス表示はありません。ユーザーは、エージェントがデプロイ前、削除前、メール送信前に確認を求めるかどうかを知ることができません。この不確実性により、ユーザーは過剰に監視するか、盲目的に信頼するかのどちらかを選択することになります。どちらも失敗につながるモードです。

プランサーフェスはエージェントの最初の約束

エージェントは行動を起こす前に、何をするつもりなのかを示す必要があります。プランは読みやすく、編集可能で、拒否可能でなければなりません。

Devinは、動作する最初のプランサーフェスの1つをリリースしました。エージェントがプランを生成し、ユーザーは任意のステップをインラインで編集したり、ステップを削除したり、追加したり、プラン全体を拒否したりできます。承認されると、プランは実行ログになり、エージェントが処理を進めるにつれて各ステップが点灯します。プランサーフェスとプログレスストリームは、実行前と実行中の2つの状態において同じサーフェスであり、これは適切なアーキテクチャの選択です。

スタジオの床に並べて配置された2つの積み重ねられた表面のボクセル構成。左側はチェックボックスのグリフが付いた平面ステップタイルの垂直スタック、右側は生きた丸太のように水平のプログレスバーが流れ落ちる背の高い柱。
スタジオの床に並べて配置された2つの積み重ねられた表面のボクセル構成。左側はチェックボックスのグリフが付いた平面ステップタイルの垂直スタック、右側は生きた丸太のように水平のプログレスバーが流れ落ちる背の高い柱。

よくあるバグ。プランを構造化されたリストではなく、文章の段落として表示する製品があります。プランは実際には編集できないため、ユーザーは盲目的に承認するか、再度確認を求めるしかありません。修正方法は、機械が構造化することです。個別のステップのリストを作成し、各ステップを1行とし、各行を編集可能にします。

進捗状況ストリームは信頼ループ

エージェントが処理を進め、ユーザーが待機している間、進捗状況ストリームは、ユーザーが処理を中止するかどうかの判断を下す際に唯一の障壁となります。

Cursorのエージェントインターフェースはこの点を正しく理解しています。エージェントがファイルを編集すると、エディタに差分がリアルタイムで表示されます。コマンドを実行すると、ターミナル出力がリアルタイムでストリームされます。ユーザーはいつでも監視を停止し、後で完全なログを確認できます。ストリームが正直であるため、信頼はすぐに得られます。

これに対し、バックグラウンドで10個のツール呼び出しを静かに実行しながら、「次のステップを検討中です」といったチャット形式の要約をストリームするエージェントと比較してみてください。要約は煙幕に過ぎません。すべてのツール呼び出しとファイル編集を構造化されたログにストリームし、モデルの推論をステップごとに1行の要約に圧縮します。この2つを混同すると、信頼は失われます。

確認ゲートは破壊的な操作を保護します

一部の操作は取り消すことができないため、UIは意図的にそれらの操作を遅くする必要があります。

ChatGPT オペレーターはオープンウェブ上でこの処理を行います。エージェントがフォームを送信したり、支払い情報を入力したり、アカウントに関連する操作を実行しようとすると、一時停止してユーザーに承認、変更、またはキャンセルを求めます。一時停止は画面に表示され、操作内容は平易なテキストで説明され、ユーザーはブラウザセッションを手動で操作できます。

スタジオの床に置かれた重厚なサンゴのアーチ型ゲートのボクセル構成。ゲートの基部には2つのボクセルボタンがあり、緑色のCONFIRMキューブと、それより小さい琥珀色のCANCELキューブが配置されている。ゲートの向こう側には小さなエージェントグリフが一時停止している。
スタジオの床に置かれた重厚なサンゴのアーチ型ゲートのボクセル構成。ゲートの基部には2つのボクセルボタンがあり、緑色のCONFIRMキューブと、それより小さい琥珀色のCANCELキューブが配置されている。ゲートの向こう側には小さなエージェントグリフが一時停止している。

多くの製品が犯す間違いは、すべての操作に対して同じ確認の重み付けをしてしまうことです。すべての操作に確認画面が表示されるため、ユーザーは説明を読まずにクリックしてしまうか、何も確認画面が表示されないため、エージェントが取り返しのつかないダメージを与えてしまうかのどちらかです。操作を3段階の強度に分類しましょう。取り返しのつく書き込みにはソフトゲート(30秒間の取り消しバナー)、破壊的な操作にはハードゲート(確認モーダル)、致命的な操作には2段階ゲート(モーダルと入力による確認フレーズ)を使用します。

エラー回復は製品の半分を占める

エージェントは常に障害を起こします。信頼できると感じられる製品は、成功率が最も高い製品ではなく、最もクリーンなリカバリインターフェースを備えた製品です。

Boltとv0はこの点をうまく実現しています。ビルドが失敗すると、エラーがインラインで表示され、エージェントが修正を試み、ユーザーは修正を待つか、コードを直接編集することができます。状態は試行間で保持されます。

多くの製品はこの点で失敗しています。エラーが発生するとエージェントが停止し、ユーザーは「問題が発生しました。もう一度試しますか?」というメッセージを受け取りますが、システムの現在の状態は分かりません。すべてのエラーには明確なステータス、一連の復旧オプション(再試行、編集、引き継ぎ、中止)、そして状態保持の保証が必要です。エラーは、実際の使用環境におけるエージェントの日常的な体験であり、まれなイベントではありません。

エージェントの引き継ぎには記録が必要

タスクがエージェントから人間へ、またはエージェントからエージェントへと引き継がれる場合、引き継ぎ側は問い合わせることなく完全な状態を把握する必要があります。

LinearのAI機能は、構造化された更新情報を課題に書き込むことでこの問題を解決します。次のチームメンバーは、インラインで完全なコンテキストを確認できます。別のダッシュボードや追加ツールは不要です。すべてのハンドオフは、受信者が30秒以内に読み取れる状態ダンプ成果物(構造化コメント、生成された概要、保存されたチェックポイントなど)を生成する必要があります。受信者が「どこまで作業しましたか?」と尋ねなければならない場合、ハンドオフは失敗です。優れた設計者向け迅速エンジニアリングが要求する規律は、あらゆる再利用可能なワークフローにも当てはまります。

8つの実際のエージェントUI(注釈付き)

パターンは、出荷された製品で使用されて初めて意味を持ちます。現在8つのパターンが本番環境で使用されており、それぞれが短く、完璧ではありません。

Claude Code、エージェントUIは透明なターミナルとして機能します

Claude Codeは、ターミナルをインターフェースとして扱い、エージェントの動作を隠さないため、これまでに出荷されたエージェントUIの中で最も洗練されたものです。すべてのツール呼び出しはターミナルにストリームされ、すべてのファイル編集は差分を表示し、すべてのコマンドはその出力を表示します。利点は、透明性です。欠点は、プランのインターフェースがMarkdown形式であり、構造化リストとして編集できないことです。

Cursor:アンビエントペアプログラミングにおけるエージェントUI

Cursorのエージェントは、必要な時まで存在を感じさせません。これはエージェントUIの最高峰と言えるでしょう。小さな編集は自動的に行われ、差分が表示されます。複数ファイルのリファクタリングでは、計画が可視化されます。Cursorの強みは、エージェントの可視性をタスクに合わせて調整できる点です。一方、課題としては、複雑なリファクタリングにおける計画の表示が、編集可能なタスクリストというよりチャットに近い点が挙げられます。

Devin:ワークスペースシアターにおけるエージェントUI

Devinは、ライブブラウザ、ターミナル、エディタを含むエージェントのワークスペース全体を表示します。透明性は抽象化よりも早く信頼を築くという考えに基づいています。構造化された編集可能な計画は最初から表示されます。ワークスペース全体が進捗状況のストリームとして機能します。ユーザーはどのレイヤーからでも操作を引き継ぐことができます。Cursorの強みは、完全な可視性です。一方、課題としては、単純なタスクではワークスペースが重すぎる点が挙げられます。

Linear AI、エージェントUIをインラインアシスタントとして

LinearのAI機能は既存のLinearインターフェース内に統合されています。これは、独立したアプリではなく、チームメイトのように感じられるべき組み込みエージェントにとって最適なパターンです。AIは、既存のフロー内に存在する構造化された成果物(課題、コメント、ステータス更新など)を返します。メリットは組み込み性です。課題は、複数ステップの自律タスクには計画画面と進捗状況ストリームが必要であり、Linearはまだリリースされていないことです。

ChatGPT オペレーター、エージェントUIを監視ブラウザとして

オペレーターは、ユーザーが監視、一時停止、操作を引き継ぐことができるサンドボックス化されたブラウザ内で動作します。これは、オープンウェブにアクセスするエージェントにとって最適なパターンです。ライブブラウザが進捗状況ストリームとなります。支払いとアカウント関連のアクションはゲートとして機能します。メリットは、速度を犠牲にして信頼性を高める監視ブラウザパターンそのものです。課題:プラン画面がチャット画面に表示され、進捗状況のストリームから切り離されているため、実行途中の軌道修正が本来よりも難しくなっています。

Replit Agent、Bolt、v0:ビルドキャンバスとしてのエージェントUI

Replit Agent、Bolt、v0はすべて同じパターンを採用しています。左側にプロンプ​​ト、右側にライブプレビューが表示され、その間にエージェントの処理が行われます。ユーザーが構築したい内容を説明すると、エージェントはプレビューが表示されるまで処理を実行します。最大のメリットはビルドキャンバスです。「アプリを作ってくれ」という抽象的なタスクが、具体的なものに感じられるようになりました。それぞれの課題:Replit Agentはエージェントスレッド内に多くの状態を隠蔽しています。Boltの複雑なアプリ向けのプラン画面は不十分です。v0のマルチコンポーネント編集における反復ループは、構造化されたプランというよりチャットに近いものです。同じ路線のLovableは、より強力なプラン画面を提供していますが、進捗状況のストリームは弱くなっています。

10回目の実行ではなく、最初の実行で信頼を得られるエージェントUIをお探しですか? Brainy を雇用する AppBrainyは、自律型ツールを開発するチーム向けにエージェント製品UIを提供しています。ClaudeBrainyは、UIがエージェントレイヤーに対応する必要が生じる前に、エージェントレイヤーを正しく処理するClaude スキルとプロンプトライブラリを提供しています。

エージェントUIによくある3つのバグとその修正

ほとんどのエージェントUIには、同じ3つのバグが存在します。そして、その修正は決して些細なものではありません。

1つ目。プランを隠してしまうエージェント。製品は目標を受け取り、バックグラウンドで実行され、結果を報告します。ユーザーは確認できるプランも、進捗状況も、実行を停止する方法もありません。修正:実行前に、たとえ2行であっても、構造化された編集可能なプランを表示します。コストはUIの20ピクセル分です。メリットは、ユーザーがエージェントが誤った結果を送信する前に修正できることです。

2つ目。すべてを承認してしまうエージェント。製品はすべてのアクションをモーダルでゲートし、ユーザーが内容を読まずにクリックして先に進むように仕向けます。破壊的なアクションが発生する頃には、ユーザーはそれもクリックして先に進むことになります。修正:アクションを可逆的、破壊的、壊滅的の3つに分類します。後者2つのみをゲートし、可逆的なアクションは30秒間のアンドゥバナーを表示して実行できるようにします。

3つ目:障害を隠蔽するエージェント。製品はサイレントに再試行したり、エラーを無視したり、「何かがうまくいきませんでした」と報告するだけで、何が起こったのかを明示しません。修正:すべてのエラーを、障害発生箇所、システムの状態、具体的な復旧オプションとともに表示します。信頼は、隠された障害ではなく、正直な失敗から生まれます。

それぞれの修正は再設計ではありません。パターンが本来の役割を果たすようになるまで、単一のサーフェスを追加または削除するだけです。エージェントUIのバグのほとんどは、設計上の問題として偽装されたパターン上の問題です。

出荷前15分チェックリスト

実際のユーザーが触れる前に、あらゆるエージェントUIでこのチェックリストを実行すれば、本番環境で失敗するパターンを特定できます。

  1. タスクの枠組み。典型的な目標を入力します。入力は、エージェントがそれに基づいて行動するのに十分な構造を強制していますか?

  2. 自律性の可視性。エージェントが何をするか、尋ねずに1秒で予測できますか?

  3. プランの表示。複雑なタスクを実行してみてください。エージェントは、実行前に構造化された編集可能なプランを表示しますか?

  4. 進捗状況の正確性。ツール呼び出しやファイル編集は表示されますか?それとも、チャット形式の要約が表示されますか?

  5. 一時停止機能。実行中のエージェントを一時停止してみてください。一時停止ボタンは表示され、すぐに反応しますか?

  6. 確認の優先順位付け。元に戻せる操作は自由に実行され、破壊的な操作はモーダルウィンドウが表示され、致命的な操作は入力による確認が必要ですか?

  7. エラーの可視性。意図的にエラーを発生させてみてください。UIはエラーの状態と復旧オプションを表示しますか?

  8. 元に戻す機能。元に戻せる操作から30秒以内に明確な元に戻す手順がありますか?

  9. 状態の保持。ステップに失敗し、再試行してみてください。以前の作業は保持されますか?

  10. 引き継ぎの成果物。タスクの実行中に停止してみてください。次の担当者が引き継げる状態ダンプはありますか?

  11. ツール使用ログ。ログは構造化され、機械可読形式になっているか、それとも推論とアクションが混在しているか?

  12. キルスイッチ。常に表示されているか、それとも設定メニューの中に隠れているか?

これら12項目を満たす製品は、機能的なエージェントUIを備えている。ユーザーはエージェントが何をしているのか、そしてどのように停止できるのかを把握できる。

よくある質問

AIエージェントUIデザインとは?

AIエージェントUIデザインとは、目標を設定し、手順を計画し、各ステップごとの承認なしにツールを実行する自律型AIワーカーのためのインターフェースを構築する分野である。チャットUIとは異なり、エージェントUIは7つのコアパターン(タスクフレーミング、自律制御、計画サーフェス、進捗ストリーム、確認ゲート、エラー回復、エージェントハンドオフ)を備えたコントロールサーフェスである。

AIエージェントUIはチャットボットUIとどう違うのか?

チャットボットUIは、ターンバイターンの会話を前提としている。エージェントUIは、エージェントがバックグラウンドで実行され、複数のツール呼び出しを実行し、状態を変更し、人間の入力が必要な場合に報告することを前提としています。エージェントUIには、チャットUIにはないプランサーフェス、リアルタイムの進捗状況ストリーム、確認ゲート、キルスイッチが必要です。

AIエージェントインターフェースを設計するための主要なパターンは何ですか?

7つのパターン:タスクフレーミング、自律制御、プランサーフェス、進捗状況ストリーム、確認ゲート、エラー回復、エージェントハンドオフ。タスクに合わせてサイズを調整し、信頼性に基づいてキャリブレーションを行い、モデルレイヤー上の緊密なコンテキスト効率によってサポートされます。

最も優れたUIデザインを持つAIエージェント製品はどれですか?

Claude Codeは透明性で優れています。Cursorはプレゼンスキャリブレーションで優れています。Devinはワークスペースの可視性で優れています。Linear AIは埋め込みで優れています。ChatGPT Operatorは監視実行で優れています。 Replit Agent、Bolt、v0は、ビルドキャンバスパターンにおいて優れています。しかし、7つのパターンすべてを完全な形で実装している製品は存在しないため、この分野は依然として競争が激しい状況です。

エージェントUIにおける自律性と制御性のバランスをどのように取るべきか?

自律性は、セッションごと、タスクごと、ツールごとに、目に見える形で調整可能な設定にします。アクションを、可逆的(アンドゥ機能付きで自由に実行可能)、破壊的(モーダルウィンドウで制御)、致命的(入力確認で制御)に分類します。実行前にプランを表示し、実行中は進捗状況を表示します。ユーザーはいつでも実行を一時停止、引き継ぎ、または中止できます。信頼は、隠された複雑さではなく、オーバーライド権限によって高まります。

エージェントUIの進化がもたらす真の可能性

エージェントUIは、自律性を後付けしたチャット製品ではなく、新しいインタラクションモデルです。そして、エージェントUIをそのように捉えている製品が成功を収めています。

多くのチームは、エージェントUIをチャット機能の上に構築された機能として扱っています。彼らはチャットスレッドに「思考中」インジケーターを追加し、ツール使用状況を示す吹き出しをいくつか散りばめて、それをエージェントと呼ぶ。結果として、レイテンシが増大したチャットボットが出来上がる。エージェントの実行時間が長くなり、障害発生時の被害も大きくなるため、チャットのあらゆる障害モードが連鎖的に悪化する。

転換点は、エージェントを自律的なワーカーとして扱い、UIをワーカーの制御面として捉えることだ。チャットスレッドは、プランボード、進捗状況ストリーム、自律性スイッチ、確認モーダル、エラーコンソール、ハンドオフアーティファクトといった要素を含む、より大きなインターフェース内の一つの要素となる。ユーザーはもはやエージェントの会話相手ではなく、エージェントの監督者となる。

​​もしあなたのチームが、ユーザーが過保護に監視するか、あるいは盲目的に信頼するエージェントをリリースしている場合、問題はほぼ間違いなくパターンの問題である。解決策は、上記の7つのパターンをタスクに合わせて調整し、信頼性を考慮してキャリブレーションを行い、後付けではなく真のAI設計ワークフローに組み込むことだ。

10回目の実行ではなく、最初の実行で信頼を得られるエージェントUIが必要な場合は、Brainy を雇用するを参照してください。AppBrainyは、自律ツールを構築するチーム向けに完全なエージェント製品UIを提供しています。ClaudeBrainyは、Claude Codeワークフロー、スキルパック、プロンプトライブラリを提供しており、エージェントレイヤーを正しく実装しているため、UIがそれを補う必要がありません。

Want an agent UI that earns trust on the first run, not the tenth? Brainy ships ClaudeBrainy as a Skill pack and prompt library, and AppBrainy ships full agent product UI for teams building autonomous tools they want their users to actually use.

Get Started

More from Brainy Papers

Keep reading