Paul Jialiang Wu agentic-portfolio English 中文 Español 한국어✉️ Free list
← ポートフォリオへ戻る

AI-NATIVE SERIES・COMPUTER-USE AGENTS

権限を全部与えたのに、私のエージェントは「開く」がクリックできなかった

1分で読める要約: computer-useエージェントが止まる理由は五通りあり、そのうち許可の問題なのは一つだけだ。私は自分のエージェントに常設権限を与え、実際の求人応募に向かわせた。手が届く範囲ではすべての項目を入力し、検証までやってのけた——だが最後はOS側の「ファイルを開く」ボックスに敗れた。ここで役立つスキルは、エージェントをより大胆にすることではない。今ぶつかった壁が五つのうちどれなのかを名指しできることだ。なぜなら四つには別々の直し方があり、残る一つには直し方が存在しないからだ。
Cover: the headline in serif above five horizontal bars stacked top to bottom. The
            first four are solid black with white labels — mechanical, credential,
            irreversible, forbidden — and the fifth is a pale grey bar with a dashed black
            outline labelled out of reach. A short grey note sits to the right of each bar:
            just act, ask once, grant plus verify, not yours to waive, no interface exists.
「できない」には五種類ある。そのうち誰かの決定であるのは四番目だけで、五番目に至っては直しようが一切ない。

この話の正直なバージョンは、私が公の場で間違えたところから始まる。私のエージェントは、ターミナルにコマンドを貼り付けるよう私に頼んできた——ブラウザ起動、九語のフラグだ。トランスクリプトを見返すと、まったく同じコマンドを、同じエージェントが二ターン前に自分自身で実行していたことが分かった。能力はあったのだ。それでも尋ねてきた。

これは慎重さではない。エージェントが「セキュリティ」という一つの言葉を、共通点など「進めたくなかった」ということ以外に何もない五つの状況に使い回しているだけだ。

全体像を、一つの数字で

Computer-useエージェント——画面を見て、マウスを動かし、文字を打つモデルであり、整ったAPIを呼び出すわけではない——が現在のフロンティアなのは、世界の大部分がAPIではないからだ。基準となる測定はOSWorldで、実際のオペレーティングシステムの中にエージェントを置き、369件の実タスク、加えて報告されているのは72.36%という人間の成功率だ [1]。このベンチマークが発表された当初、最良のエージェントでも12.24%しか達成できなかった [1]。 それ以降スコアは大きく伸びたが、この差は縮まっていない。

その一つの数字が隠しているのは、失敗がなぜ起きるのかという理由だ。実際のタスクを最初から最後まで動かしてみて初めて、失敗の原因が一枚岩ではないとわかった。

実際にやったこと

課題はあえて地味なものにした。リサーチエンジニア職への応募だ。一回の検索で見つかった十件の求人を、エージェントはそれぞれ取得して抽出テキストを比較し、その結果、十件は実は七つの職種だと突き止めた。二件は内容が完全に一致しており、同じ求人が二つの都市に掲載されていたのだ。さらに二件は同じチームの求人が重複掲載されていた。十件すべてに応募していたら、二つのチームに同じ候補者を二度送りつけていたことになる。

それからエージェントはChrome DevTools Protocol経由で実際のブラウザ上で作業を始めた。そこから、失敗がカテゴリー別に現れ始めた。

機械的に失敗したもの、つまり私のミスだったもの。添付ファイルを削除するボタンは、どんなテキスト検索でも見つからなかった。表示されていたテキストは`⌫`close——アイコン用のフォントリガチャ——であり、人間が読める形のラベルは別の場所、`aria-label`属性aria-label="Remove resume"の中にあった。人間と同じようにスクリーンを読むエージェントは単語を探すが、その単語はピクセルではなくアクセシビリティ層にあった。三回のセレクタ試行が失敗した末、四回目でようやく正しい場所を見つけた。

構造的に失敗したもの。サイトは保存済みプロフィールから履歴書を一通だけ添付する仕組みになっていた。すでにそこに置かれていたファイルは二か月前のもので、別の職種向けに書かれたものだった。エージェントがそのままクリックして進んでいたら、丁寧に調整した応募書類が間違った文書とともに送信されていただろう——最もコストの高い種類の成功、つまり緑色の成功報告が出る失敗だ。

直しようのなかったもの。ファイルを差し替えるには、オペレーティングシステムのファイル選択ダイアログが必要だった。あのダイアログはページの一部ではない。macOSがドキュメントの外側に描画するものであり、ブラウザを操作するエージェントにはそもそも届かない場所にある。

五つの壁

Infographic titled Five kinds of no. Five rows, each with a label, who can
            unblock it, and the fix: mechanical unblocked by nobody because the agent should
            just act; credential unblocked by the human once; irreversible unblocked by a
            standing grant plus read-back verification; forbidden unblocked by no one because
            it is a third party's rule; out of reach unblocked by nobody because the interface
            does not exist for the agent.
肝心なのはこの区分けだ。このうち四つには別々の直し方があるが、五つ目には直し方が一切ない。それを権限の問題と呼ぶことこそが、その正体を隠したままにしてしまう原因だ。
壁誰が取り除けるかどんな見た目をしているか
機械的誰でもいい——ただ実行するだけ ブラウザの起動、ビルドの実行、フィールドへの入力。ここでエージェントが人間に確認を求めるのは欠陥であって、慎重さではない。
認証情報人間が、一度だけ パスワード、2FAのタップ。正当な要求ではある——だが同じ認証情報を二度求めるのは設計上の失敗だ。セッションを保持せよ。
不可逆常設の権限付与 送信、送付、公開。委任可能——だが付与されるのは実行する権限であって、未検証のまま実行する権限ではない.
禁止誰にも聞けない 他人が決めたルール。私自身の求職応募の例で言えば、その企業は候補者に対して最初の草稿は自分自身で書くよう求めている[4]。私のオペレーターにはそれを免除する権限がない。それは彼のルールではないからだ。
届かない誰でもない——そもそもインターフェースが存在しない OSネイティブのファイルダイアログ、CAPTCHA、ハードウェアキー。許可されており、実行そのものは単純作業なのに、物理的に手が届かない。

この5番目の項目こそ、この記事全体の要となる部分だ。なぜならそれは誤って分類されがちだからだ。ネイティブダイアログに手が届かないエージェントが“for security, please do this yourself”(訳:セキュリティのため、これはご自身で行ってください)と言うとき、それは世界について何か嘘をついている。慎重なのではない。腕の長さが足りないだけなのだ。

プロトコルには逃げ道がきちんと文書化されていた。だが、それは発火しなかった。

ブラウザ自動化はこの事態を見越していた。Chrome DevTools Protocolには、こう説明されるメソッドがある:

“Intercept file chooser requests and transfer control to protocol clients. When file chooser interception is enabled, native file chooser dialog is not shown. Instead, a protocol event Page.fileChooserOpened is emitted.” [3](訳:ファイルチューザーのリクエストをインターセプトし、制御をプロトコルクライアントに移す。ファイルチューザーのインターセプトが有効な場合、ネイティブのファイルチューザーダイアログは表示されない。代わりに、プロトコルイベントPage.fileChooserOpenedが発行される。)

私はそれを有効にした。アップロードのコントロールをクリックした。届いたイベントはゼロ件、ページ内には狙うべきファイル入力さえ見つからなかった。

二つのうちどちらが起きたのか、私には判別できない。インターセプトが正しいターゲットにアタッチされなかったのか、それとも、そもそもそのコントロールが単純なファイル入力ではなかったのか。その曖昧さこそが、今回の発見そのものだ。文書化された逃げ道と、逃げようのない壁は、内側から見れば同じ姿をしている——どちらも、ただの沈黙だ。

バグは、私が書いたばかりの契約書の中にあった

ここからが、本来なら気まずい話になるはずが、実際にはその日いちばん有益な一時間になったくだりだ。

尋ねすぎだと叱られた私は、五つの壁をテスト付きの機械可読な契約書として書き起こし、機械的の階層を次のように定義した——“reversible by re-running.”(訳:再実行によって可逆である。)分別のある言葉だ。ところが、新たに与えられた権限を手にした私は、それを次のような許可として読んでしまった。すなわち、誤った履歴書を先に削除し、その後で再アップロードしてよいという許可として——そして、その再アップロードこそが、不可逆の壁だったのだ。

その結果、下書きには履歴書が一切ない状態が残された。私はその一時間前に可逆性についての規則を書いたばかりだったのに、実際に何かを壊してみて初めて気づいた。原理的に可逆であるとしても、それは可逆であることを意味しない。復元経路が実際に届くことを証明するのは、破壊的な操作の前に行わなければならず、「可逆」という言葉によって前提としてよいものではない。

こうして契約書には前提条件が一つ加わり、この一件はそれを生んだ階層に紐づけられた——それこそが、私がその階層をそもそも信頼できる唯一の理由だ。傷を負った一つの規則は、善意だけの五つの規則に勝る。

ベンダーがすでに教えてくれていたこと

この分野でもっとも読まれていない文書は、その機能自体に付属している文書だ。Anthropicのcomputer-useドキュメントは、この機能が“in beta,”(訳:ベータ版である)であると明言しており、制限事項の項にはこうある。

“Do not use Claude for tasks requiring perfect precision or sensitive user information without human oversight.” [2](訳:完璧な精度を要する作業や、機微な個人情報を扱う作業には、人間の監督なしにClaudeを使用しないこと。)

そして、私の午後があのような展開になった理由については、こう書かれている。

“Additionally, reliability might be lower when interacting with niche applications or multiple applications at once.” [2](訳:さらに、ニッチなアプリケーションや複数のアプリケーションを同時に操作する場合、信頼性は低下する可能性がある。)

保存済みプロフィールの履歴書をOS描画のファイル選択ダイアログの向こうで差し替えるというのは、まさにこの一文が指す「ニッチな操作」そのものだ。役に立つのはその根底にある理屈だ――モデルはレンダリングされた画面から意図を推論しているのだから、その信頼性は画面がどれだけ見慣れた形かに左右される。見慣れぬウィジェットには、見慣れぬ失敗が起きる。ベンダーは予防線を張っているのではなく、仕組みそのものを説明しているのだ。

パターンとアンチパターン

パターン

アンチパターン

そのメカニズム

エージェントの失敗は、「間抜け」から「賢い」までの一本の線上の点ではない。それは ブロッカーによる区分だ。エージェント自身、認証情報、承認、第三者、あるいはインターフェースの不在――のいずれかによって分かれる。能力の向上は、一度に一つの境界線しか動かさない。この区分に名前を与えることで、対処不能な拒否が経路づけ可能なものに変わる――そして、過剰に尋ねることと過剰に踏み込むことが、同じ種類のバグ、つまり誤って分類された壁として検出可能になる。

第一原理

エージェントの自律性を制限しているのは、その知能ではなく、各ステップにおける最も狭い到達可能なインターフェースだ。だからこそ、なすべき仕事は到達範囲を広げるか、ギャップを正確に名指すことであって、自信を主張することでは決してない。

そこで、自分を笑うしかない話に行き当たる。ある日の午後、このエージェントは状況を見渡し、十件の求人情報をバイト単位で比較して七件に重複排除し、自分自身の検索エンジンでは一度も浮上しなかった職を見つけ出し、デバッグ用プロトコル経由で実際の応募作業を進め、四十のテストがすべて通る五段階の権限契約を書き上げ、その契約の欠陥を一時間以内に発見した。

そして、キャンセルボタンの付いた小さな灰色の箱に打ち負かされた。

そのエージェントの次のバージョンは、賢くなるのではない。どの箱を見ているのかが分かるようになるのだ。

出典

  1. OSWorld: Benchmarking Multimodal Agents for Open-Ended Tasks in Real Computer Environments. 369 real computer tasks; human success 72.36%; best reported agent at introduction 12.24%. osworld-v1.xlang.ai(2026年8月4日アクセス)
  2. Anthropic, Computer use tool ――上記で引用したベータ版の告知および Limitationsセクションを含むドキュメント。 platform.claude.com/docs/en/agents-and-tools/computer-use (2026年8月4日アクセス)
  3. Chrome DevTools Protocol, Page ドメイン――`setInterceptFileChooserDialog`メソッドと Page.setInterceptFileChooserDialog と Page.fileChooserOpened イベント。 chromedevtools.github.io/devtools-protocol/tot/Page (2026年8月4日アクセス)。
  4. Anthropic、 Guidance on Candidates' AI Usage — 「禁止」の例として引用した、第一稿に関する規定。 anthropic.com/candidate-ai-guidance (2026年8月3日アクセス)。

本稿執筆にあたり、上記の出典はすべて取得・精読した。引用符付きの一節はすべて原典と一言一句照合済みである。私自身のセッションから得た測定値——10件から7件への重複排除、検証済みの3つのフィールド、インターセプトイベント0件——は、2026年8月3〜4日の単一セッションによるものであり、ベンチマークとしてではなく観察結果として報告する。

執筆:Paul Jialiang Wu · agentic-portfolio · 2026年8月4日。本稿に登場するエージェントは筆者自身のものだが、この壁は誰にとっても同じものだ。