エージェントのインターフェースこそ制御基盤です
OpenAI は Codex を、隔離された環境でファイルを読み、編集し、テストを実行できるクラウド型ソフトウェアエンジニアリングエージェントとして説明しています。Anthropic は、ツール呼び出しの実行前に内容を検査し、拒否できるフックを文書化しています。43 これらは周辺機能ではありません。これこそがプロダクトです。
プロンプト入力欄は目立ちます。入力欄がインターフェースに見えるからです。しかし本当のエージェントインターフェースは、プロンプトの周囲にあります。ツールアクセス、権限ルール、記憶の読み込み、実行記録の取得、証拠要件、復旧操作、リリース前の関門。ユーザーが入力を終えたあと、エージェントがどう振る舞うかを決めるのはこの層です。
エージェントプロダクトは、プレースホルダー文言を磨いただけでは信頼されません。モデルの周囲にある画面や仕組みが、意図を統制された作業へ変換して初めて信頼に近づきます。
要約
エージェントインターフェースは運用層です。チャットは意図を受け取れます。しかし、エージェントが何を見られるのか、何を実行できるのか、何を証明しなければならないのか、どの時点で人間が介入すべきかを決めるのは、その周囲の仕組みです。Microsoft は人間とAIの相互作用を時間の中で変化する振る舞いとして捉え、NIST は信頼性を、設計、開発、利用、評価に組み込むものとして位置づけています。12
つまり、エージェントのUXは会話設計だけでは終われません。インターフェースには、権限、記憶、ツールの境界、証拠、判断基準を埋め込む必要があります。そこに制約がなければ、エージェントはその場で勝手に補ってしまいます。
エージェント型デザインは制御サーフェスのデザインです では、目に見える表面を扱いました。ここでは、その背後にある運用層に名前を与えます。
重要なポイント
プロダクトチームへ: - プロンプト入力欄は受付面であり、運用面ではないと考えましょう。 - チャットを磨く前に、権限、実行記録、記憶、証拠、復旧の経路を設計してください。
デザインエンジニアへ: - 品質ルールは、エージェントが実際に動く場所に置きます。ツール呼び出しの前、編集後、リリース前、完了時です。 - 見えない状態も、人間が結果に責任を持てるだけの範囲で確認できるようにします。
エージェントを導入するチームへ: - インターフェースが、エージェントの見たもの、変更したもの、飛ばしたもの、検証したものを示しているか確認してください。 - 流暢な最終回答を、統制された作業の証拠として受け入れてはいけません。
インターフェースがエージェントの可能性を決めます
どのエージェント作業も、ユーザーの意図から始まります。ただし、意図だけで振る舞いが決まるわけではありません。
エージェントの振る舞いは、次の要素にも左右されます。
| インターフェース層 | 振る舞いへの影響 |
|---|---|
| ツール | エージェントが取れる行動を定義します |
| 権限 | エージェントが止まるべき時点、確認すべき時点を定義します |
| 記憶 | 以前のどの文脈が作業を形作るかを定義します |
| 実行記録 | 後から何を確認できるかを定義します |
| 証拠 | 何をもって完了とするかを定義します |
| 復旧 | 失敗を取り返せる状態に保つ方法を定義します |
| 判断基準 | システムが何を拒むべきかを定義します |
これらの層は、モデルと同じくらい作業を変えます。同じモデルでも、テストを実行できる場合、ファイル編集しかできない場合、リリース前の関門がある場合、出典の提示を求められる場合、早すぎる完了を止める基準がある場合では、振る舞いが変わります。
これらの層を「設定」として扱うプロダクトチームは、媒体そのものを誤解しています。設定は作業の外側にあります。エージェントのインターフェース層は、作業の形そのものになります。
Microsoft の人間とAIの相互作用ガイドラインは、以前から有用な点を示しています。AIシステムは、状態を伝え、修正を支援し、相互作用の時間軸の中で失敗に対応する必要があります。1 エージェントはこの要件をさらに鋭くします。ユーザーの発話と発話の間に、システムが行動できるからです。インターフェースはもはや「モデルが回答しました」と言うだけでは足りません。「システムはこの制約のもとで行動しました」と示す必要があります。
ツールアクセスはインターフェース設計です
ツールアクセスは技術的な話に見えます。しかし、それはUXでもあります。
記憶だけをもとに回答できるエージェントには、ある種のインターフェースがあります。ファイルを検索できるエージェントには別のインターフェースが必要です。シェルコマンドを実行し、コードを編集し、ブラウザを開き、APIを呼び出し、ソフトウェアをデプロイできるエージェントには、ユーザーとの別の契約が必要です。
Model Context Protocol は、AIアプリがローカルファイル、データベース、ツール、作業手順などの外部システムに接続する一般的なパターンを説明しています。5 接続は能力を広げます。ただし、能力があることと品質が高いことは同じではありません。新しいツールが増えるたびに、インターフェースは次の問いに答えなければなりません。
| ツールに関する問い | インターフェース要件 |
|---|---|
| エージェントは何に触れられるのか | スコープと権限の境界 |
| エージェントは何を送ったのか | 確認可能なツール入力 |
| 何が返ってきたのか | 出力、エラー、副作用の記録 |
| 何が変わったのか | 差分、成果物、状態の要約 |
| 誰が承認したのか | 権限記録 |
| 元に戻せるのか | 復旧経路 |
設定ファイルの奥に埋もれたツール一覧では、この責任を担えません。作業が進んでいる最中に、ツールの権限が読み取れる表面をユーザーに提供する必要があります。
Claude Code の PreToolUse フックは、その原型を示しています。フックは実行前にツール名と入力を受け取り、呼び出しを許可、拒否、確認、延期、変更できます。3 この仕組みは、エージェントインターフェース設計の考え方に入れるべきです。インターフェースも、同じ意思決定点を、適切な粒度でユーザーに示す必要があります。
低リスクの読み取りは静かに通して構いません。破壊的なシェルコマンドには強い摩擦が必要です。公開リリースには最後の関門が必要です。顧客に影響する変更には監査が必要です。よいインターフェースは、すべてをユーザーに承認させるものではありません。行動ごとに、それにふさわしい重みを与えるものです。
記憶はプロダクトの一部です
記憶はしばしば、エージェントプロダクトにインフラとして入ってきます。コンテキストウィンドウ、ファイル、要約、ベクトルストア、キャッシュ、プロジェクト指示、検索取得システムなどです。ユーザーはそれらを、プロダクトの振る舞いとして体験します。
エージェントがデザイン基準を覚えていると、プロダクトには一貫性が生まれます。40分前の制約を忘れると、プロダクトは雑に感じられます。古い指針を取得すると、過去の判断に引きずられているように見えます。
記憶にはインターフェースが必要です。記憶は責任の所在を変えるからです。ユーザーは、確認できないものを監督できません。
インターフェースは、少なくとも4つの記憶状態を分けるべきです。
| 記憶状態 | ユーザー向けの意味 |
|---|---|
| 有効 | エージェントが今すぐ使えます |
| 利用可能 | 必要に応じて取得できます |
| 圧縮済み | システムが要約しており、詳細が失われている可能性があります |
| 古い | 記録はありますが、信頼度を下げるべきです |
この区別がないと、ユーザーはエージェントの振る舞いから記憶の品質を推測するしかありません。順序が逆です。エージェントが誤った前提の上に作業を積み上げる前に介入できるよう、インターフェースは記憶状態を十分に示すべきです。
個人やチームの思想についても同じです。プロンプトに隠れた品質方針は、長い作業回の中で残るかもしれませんし、失われるかもしれません。スキル、フック、テンプレート、チェック、完了基準に組み込まれた方針には、より多くの接点があります。モデルが見落とすことはあります。それでも運用層なら、ルールが作業の起きる場所にあるため、より多くの見落としを拾えます。
証拠が出力を作業に変えます
エージェント作業において、最終回答は最も弱い証明単位です。
最終回答は、実際にはテストが走っていなくても「テストに合格しました」と言えます。出典が主張を支えていなくても「引用を確認しました」と言えます。公開ルートがキャッシュから404を返していても「デプロイに成功しました」と言えます。流暢な文章は失敗を隠せます。
証拠は表面化しなければなりません。ユーザーは主張、裏付け、残る不足を見られるべきです。
| 主張の種類 | 必要な証拠 |
|---|---|
| コードを変更した | ファイルパスと差分 |
| テストに合格した | コマンド、終了ステータス、関連する出力 |
| コンテンツが正確である | 出典リンクと、主張と出典の対応 |
| SEO経路が機能する | レンダリング済みメタデータ、schema、検出用ファイル |
| リリースに成功した | ライブURLの状態とキャッシュ状態 |
| 翻訳が公開可能である | ローカル基準、D1行、ライブページ、レビュー状態 |
証拠の表面があると、エージェントの振る舞いも変わります。完了には証拠が必要だとシステムが知っていれば、最後に自信満々の要約を書くのではなく、作業中に証明を探すようになります。
証拠ゲート はそのためにあります。エージェントに、主張を観測された振る舞いへ結びつけさせる仕組みです。エージェント実行記録はランタイム契約です では、同じ議論をさらに深く扱っています。最終回答よりも実行記録のほうが多くの真実を持つのは、そこに経路が保存されるからです。
ここで NIST の AI Risk Management Framework が重要になります。信頼性はモデル選定だけでなく、設計、開発、利用、評価に入るものだからです。2 証拠は、それらの段階がユーザーの画面と出会う場所です。
復旧は主な流れに組み込むべきです
エージェントインターフェースは、失敗を例外として扱いがちです。しかしエージェント作業では、失敗は日常的に起きます。
検索クエリが外れます。テストが失敗します。権限の関門で止まります。翻訳チェックがフォーマットの不一致を見つけます。デプロイは成功しても、CDN が古い HTML を返します。よいインターフェースは、こうした状態で慌てません。復旧の道筋を明確にします。
復旧には5つの操作が必要です。
| 操作 | 目的 |
|---|---|
| 一時停止 | 状態を失わずに動きを止める |
| 再開 | レビューや外部修正の後に続行する |
| 再試行 | 入力を変えて失敗した手順を繰り返す |
| 分岐 | 最初の経路を上書きせず、別案を試す |
| ロールバック | 元に戻せる作業を取り消す、または不可逆な作業を修復対象として印を付ける |
復旧経路は、実行記録と証拠の表面の近くに置くべきです。ユーザーが失敗したコマンドを会話ログからコピーし、作業ディレクトリを推測し、エージェントの状態を手作業で再構築する必要はありません。インターフェースは、どの手順が失敗したかをすでに知っています。ならば、次に取るべき責任ある行動も提示すべきです。
この原則はコンテンツ作業にも当てはまります。翻訳の品質基準に失敗したなら、インターフェースは失敗したロケール、該当箇所、理由、修正経路を示すべきです。公開ページのライブ検証に失敗したなら、アプリが失敗したのか、データベースが失敗したのか、エッジキャッシュが古い出力を返したのかを示す必要があります。ユーザーに見える経路が機能するまで、エージェントはリリース完了を名乗るべきではありません。
判断基準はプロンプトではありません
AIによるコーディングは、実装を安くします。実装が安くなるほど、判断の価値は上がります。
重要な問いは「エージェントは何かを作れるか」から、「この版は存在すべきか」へ移ります。この問いは、人間のレビュー担当者だけでなく、インターフェースにも属します。
判断基準は制約として現れます。
- 不要な手順を削る。
- プロダクトを弱める賢そうな経路を拒む。
- 成果物全体の一貫性を保つ。
- ローカル成功を祝うのではなく、公開経路を検証する。
- 内部の仕組みを公開文面から守る。
- 忙しい案より、小さく鋭い解を選ぶ。
エージェントはこれらの価値観を文章として受け取れます。文章は役に立ちます。ただし、文章だけで振る舞いは保証されません。価値観には運用上の形が必要です。手抜きの表現を止めるブログ用スキル、裏付けのない主張を拒む引用検証、ライブページを確認するリリース検証、証拠のない完了を拒む停止基準、見た目の逸脱を防ぐデザインルールなどです。
インターフェースは、判断基準を確認可能にする場所です。ユーザーは、システムが何を拒み、何を簡素化し、何を検証し、何を未証明のまま残したかを見ます。この記録は重要です。エージェント出力はこれからさらに安くなるからです。希少になるのは、何を残すかを決める基準です。
実践的なエージェントインターフェースの地図
チームは、素朴な地図から始められます。未来的なダッシュボードは必要ありません。
| 表面 | 最小限の実用版 |
|---|---|
| 意図の受付 | プロンプト、タスク種別、リポジトリまたはワークスペースのスコープ |
| 計画 | 前提、使う予定のツール、受け入れ基準 |
| 権限 | リスク段階別のキューと完全な入力内容 |
| 記憶 | 有効な指示、読み込まれたファイル、古さの警告 |
| 実行記録 | ツール呼び出し、出力、副作用の時系列 |
| 証拠 | 主張をコマンド、ファイル、出典、不足に対応づける |
| 復旧 | 一時停止、再試行、分岐、ロールバック、キャンセル |
| リリース | ユーザーに見えるURL、schema、検出、翻訳、キャッシュ |
| 判断基準 | 拒否、簡素化、標準、最終的な値打ち |
この地図が機能するのは、各表面がユーザーの責任に答えているからです。ユーザーにすべての生イベントは必要ありません。結果に責任を持ち続けるための、十分な可視性と制御が必要なのです。
この区別は、よくある2つの失敗を防ぎます。1つは、すべてをチャットの背後に隠して、それを魔法と呼ぶことです。もう1つは、内部イベントをすべて露出して、それを透明性と呼ぶことです。強いエージェントインターフェース設計は、そのどちらでもありません。操作者に、適切な瞬間に、適切な制御を渡します。
まとめ
エージェントインターフェースは運用層です。プロンプトは意図を集めますが、実際に何が起きるかを決めるのは、ツール、権限、記憶、実行記録、証拠、復旧、判断基準です。OpenAI の Codex と Claude Code のフックは、その方向を示しています。エージェントプロダクトには、すでに実行環境、ツール呼び出し、方針判断点が含まれています。43 MCP は、エージェントと外部システムの接続を広げます。5 NIST と Microsoft は、それ以前からある信頼性と人間・AI設計の枠組みを提供しています。21
プロダクト上の問いは、もはやエージェントが回答できるかどうかではありません。周囲の表面が自律的な作業を十分に統制し、人間が信頼し、確認し、止め、修復し、結果に署名できるかどうかです。
FAQ
「インターフェースこそ制御基盤」とはどういう意味ですか?
この表現は、インターフェースがエージェントの出力を表示するだけのものではない、という意味です。モデルの周囲にある運用層、つまりツール、権限、記憶、実行記録、証拠、復旧、標準を定義します。これらの部分が、最終回答が現れる前の振る舞いを形作ります。
チャットインターフェースでもエージェントに使えますか?
チャットは、受付面や軽量なレビュー経路としては機能します。ただし、それが唯一の運用面になると失敗します。エージェント作業には、必要な箇所へ直接アクセスできること、権限レビュー、実行記録の確認、記憶の可視化、復旧操作が必要です。
プロンプトエンジニアリングとは何が違いますか?
プロンプトエンジニアリングは指示を形作ります。インターフェース設計は、権限、状態、責任を形作ります。プロンプトは、エージェントに作業を検証するよう伝えられます。リリース面は、タスクを閉じる前にライブURLの証拠を必須にできます。
チームは最初に何を作るべきですか?
まず実行記録と証拠の表面を作ってください。実行記録は何が起きたかを示します。証拠の表面は、結果を何が証明しているかを示します。作業経路を確認できるようになると、権限、復旧、記憶の設計もしやすくなります。
参考文献
-
Saleema Amershi et al., “Guidelines for Human-AI Interaction,” Microsoft Research, CHI 2019. 49人のデザイン実務者によって検証された、18項目の人間とAIの相互作用ガイドラインの一次資料です。 ↩↩↩
-
National Institute of Standards and Technology, “AI Risk Management Framework,” NIST. 同フレームワークの任意のリスク管理目的、および設計、開発、利用、評価という枠組みの出典です。 ↩↩↩
-
Anthropic, “Hooks reference,” Claude Code Docs. フックイベント、
PreToolUseの入力フィールド、実行前のツール呼び出しを許可、拒否、確認、延期、変更できる判断制御の出典です。 ↩↩↩ -
OpenAI, “Introducing Codex,” OpenAI, 2025年5月。Codex がクラウド型ソフトウェアエンジニアリングエージェントであること、独立したサンドボックス内のタスク、ファイル読み取り、ファイル編集、コマンド実行の能力に関する出典です。 ↩↩
-
Model Context Protocol, “What is the Model Context Protocol?” MCP が、AIアプリをデータソース、ツール、作業手順などの外部システムへ接続するオープン標準であることの出典です。 ↩↩