Claude のコンピュータ使用ツール(computer use)の使い方

Claude.ai エンジニアリング 8分で読めます

コンピュータ使用(computer use)ツールは、Claude に画面のスクリーンショットを見せ、マウス移動・クリック・キーボード入力といった操作を指示させることで、人間のようにGUIを操作させる機能です。特定のAPIが用意されていないアプリでも、画面を通じて自動化できるのが特徴です。この記事では、ツールの有効化から実行ループ、運用上の注意点までを解説します。なお本機能はベータ扱いで、仕様が変わる可能性があります。

コンピュータ使用ツールとは

コンピュータ使用ツールは、ツール使用(tool use)の仕組みを土台にした特別なツール群です。Claude はスクリーンショット(画面の画像)を受け取り、「座標(x, y)をクリックする」「この文字列を入力する」「スクロールする」といった具体的な操作を tool_use として返します。あなたのコード側はその操作を実際の環境(仮想デスクトップやコンテナなど)で実行し、操作後の新しいスクリーンショットを tool_result として返します。この繰り返しで、Claude が画面を見ながらタスクを進めていきます。

ブラウザ操作、フォーム入力、既存のデスクトップアプリの操作など、専用APIが無い相手を自動化したいときに向いています。

ツールを有効にしてリクエストする

コンピュータ使用は、通常のツールに加えてベータ用のヘッダーを付け、専用のツール型を指定して有効化します。画面操作の computer ツールに加え、テキストエディタ操作の text_editor、シェル実行の bash ツールを組み合わせることもあります。computer ツールには、モデルに正しい座標感覚を持たせるため、画面の解像度(display_width_px / display_height_px)を渡します。

{
  "model": "claude-sonnet-5",
  "max_tokens": 1024,
  "tools": [
    {
      "type": "computer_20250124",
      "name": "computer",
      "display_width_px": 1280,
      "display_height_px": 800
    }
  ],
  "messages": [
    { "role": "user", "content": "ブラウザで天気予報のサイトを開いて東京の明日の天気を調べて" }
  ]
}

ツール型やベータヘッダーの識別子はモデル世代によって変わるため、利用時は最新のドキュメントで正確な値を確認してください。

アクションを実行して結果を返すループ

基本的な流れは次のとおりです。(1) 現在の画面のスクリーンショットをモデルに渡す。(2) モデルが computer ツールの tool_use(例: action: "left_click" と座標)を返す。(3) あなたの実行環境でその操作を行う。(4) 操作後のスクリーンショットを tool_result として返す。(5) タスクが完了するまで (2)〜(4) を繰り返す。

action には screenshotmouse_moveleft_clicktypekeyscroll などがあります。実際の実行部分(マウスやキーボードのエミュレーション)はあなたが用意する必要があり、Anthropic はコンテナで動く参照実装をリファレンスとして公開しています。

安全に運用するための注意点

コンピュータ使用は画面を通じて実際の操作を行うため、リスク管理が特に重要です。第一に、操作対象は本番環境ではなく、隔離された仮想マシンやコンテナに限定します。第二に、認証情報・決済・個人情報を扱う画面や、取り消しの効かない操作(送信・削除・購入)は、自動実行させず人間の確認を挟みます。第三に、画面上に現れた指示(プロンプトインジェクション)にモデルが従ってしまう可能性があるため、信頼できないサイトの操作は慎重に扱います。第四に、アクセスできるサイトやアプリを許可リストで絞ると安全性が高まります。

対応モデルと前提

コンピュータ使用は、対応するモデル世代でのみ利用でき、ベータ機能として提供されています。利用にあたっては、(1) 操作を実際に実行する環境(スクリーンショットの取得とマウス/キーボード操作ができる仮想デスクトップ等)を自前で用意すること、(2) ツール型やベータヘッダーの識別子を最新ドキュメントで確認すること、(3) スクリーンショットの往復でトークン消費が大きくなりやすいため、解像度や手数を意識することが前提になります。まずは Anthropic の参照実装で挙動を確かめてから、自分の用途に合わせて実行環境を組むのが安全です。