Claude Media
Claudeツールを組み合わせるパターン — 公式が示す6つの型

Claudeツールを組み合わせるパターン — 公式が示す6つの型

Anthropic公式のTool combinationsが示す6つの組み合わせパターンを解説。Web検索×コード実行のリサーチ型からBrowser Useまで、選び方と実行環境が分かれる注意点をまとめます。

Claudeツールの組み合わせとは — 補完し合う2段階設計

ツールの組み合わせとは、役割の異なる2つ以上のツールを同じtools配列に並べ、1回のリクエストの中でClaudeに使い分けさせる設計パターンです。Anthropicが提供するweb_search・code_execution・text_editor・bashなどは単体でも動きます。公式docsの「Tool combinations」ページは、これらを組み合わせて使うことを前提にした6つの型を示しています。共通する設計思想ははっきりしています。一方のツールが情報を集める・発見する役割を担い、もう一方が処理する・実行する役割を担う。この2段階を1つのリクエストに乗せることで、単体では届かない精度とカバー範囲が出ます。

6つの型はあくまで出発点です。公式docsも「開始点であって処方箋ではない」と明記しており、タスクに応じて自由に混ぜてよい設計になっています。以下、それぞれの型を実装レベルで見ていきます。

汎用的な1つの巨大ツールを自作するのではなく、役割の異なる小さなツールを組み合わせる設計にするメリットは、それぞれのツールを独立にオン・オフできる点にあります。あるリクエストではWeb検索だけ、別のリクエストではコード実行も足す、といった出し分けがtools配列の増減だけで済みます。1つの万能ツールに全部の機能を詰め込むと、権限の切り分けやトークン消費の見積もりが難しくなります。

リサーチ型 — Web検索とコード実行

Web検索が情報源を見つけ、コード実行がその情報を分析・集計・可視化します。「今四半期の決算を主要クラウド5社で比較して」のように、最新情報の取得と非自明な計算の両方が要る質問に向く組み合わせです。

{
  "tools": [
    { "type": "web_search_20260209", "name": "Web Search" },
    { "type": "code_execution_20260521", "name": "code_execution" }
  ]
}

典型的な流れは、検索してから実行し、最初の検索で足りない部分が見つかったら再度検索する、というものです。コード実行はサーバー側で走るため、クライアント側にサンドボックスを用意する必要はありません。Web検索自体の有効化手順や、claude.aiとClaude Codeでの挙動の違いはClaude Web検索の使い方にまとめてあります。

コーディング型 — テキストエディタとBash

テキストエディタがファイルを読み書きし、Bashがテストとビルドコマンドを実行します。コードを見る、編集する、テストを走らせる、また見る。ソフトウェア開発の定型ループそのものです。両ツールともクライアント側で実行されるため、どのファイル・どのコマンドにアクセスできるかはアプリケーション側が握ります。

{
  "tools": [
    { "type": "text_editor_20250728", "name": "str_replace_based_edit_tool" },
    { "type": "bash_20250124", "name": "bash" }
  ]
}

信頼できないコードの上でエージェントを動かすなら、作業ディレクトリを絞り込み、実行できるコマンドのallowlistを添えるのが定石です。この組み合わせはClaude Codeやエージェント向けの実装が内部で採用している構成とも重なります。ゼロからAPIで組む前段として、組み込みのRead・Write・Bash一式が揃ったClaude Agent SDK入門を先に検討する余地もあります。

引用取得型 — Web検索とWeb Fetch

Web検索が候補URLを見つけ、Web Fetchが実際に関連するページの全文を取得します。すべてを事前に取得するのではなく、検索結果のスニペットを見てから本当に関連する2〜3件だけをfetchする流れです。ドキュメントページや仕様書のように、スニペットだけでは全体像が掴めない長文コンテンツに答えが書かれているときに有効です。Web Fetchはページ全体を取得するので、Claudeは具体的な箇所を引用できます。

{
  "tools": [
    { "type": "web_search_20260209", "name": "Web Search" },
    { "type": "web_fetch_20260209", "name": "Web Fetch" }
  ]
}

長時間稼働型 — メモリーと任意のツール

メモリーは会話をまたいで状態を保持し、他のツールが実際の作業をこなします。過去のやり取りを覚えておく必要があるエージェント全般に足せる型です。顧客の過去の問い合わせを思い出すサポートエージェントや、先週決めたことを引き継ぐプロジェクトアシスタントが典型例です。

{
  "tools": [{ "type": "memory_20250818", "name": "memory" }]
}

メモリーは他のツールの挙動を変えません。コンテキストウィンドウがリセットされたときに失われてしまう事実を、Claudeが書き留めて後から読み出せる置き場所を用意するだけです。他のツールと並べて配列に足すだけで組み合わせられます。

メモリー自体はクライアント側で動くツールです。Claudeが/memories配下へのファイル操作をリクエストし、実際の保存先(ユーザーごとのディレクトリやデータベースのキーなど)を用意するのは実装側の役割になります。関連する情報を毎回すべてコンテキストへ読み込むのではなく、必要になった時点でメモリーファイルを読み返す「ジャストインタイムのコンテキスト取得」がねらいです。長時間動くセッションほど、この設計がコンテキストウィンドウの圧迫を防ぎます。

画面操作型 — Computer Use

Computer Useは、デスクトップ全体を操作することで他のほとんどのツールを一括で代替します。Claudeはスクリーンショットを見てマウスとキーボードの操作を発行するので、人間が操作できるアプリケーションなら何でも動かせます。APIを持たないレガシーソフトウェア、目視確認が必要な検証ステップ、複数のデスクトップアプリをまたぐワークフローなど、他の専用ツールでは手が届かないGUI操作全般に向きます。

{
  "tools": [{ "type": "computer_toolset_20260801" }]
}

このツールセットエントリにはnameも表示解像度の指定もありません。座標は返すスクリーンショットのピクセル空間で表現され、個々のアクションはconfigsフィールドで無効化できます。Computer Useは最も汎用的な選択肢である一方、最も遅くもあります。アクションのまとまりごとに新しいスクリーンショットが必要になるためです。他のツールでタスクをカバーできるならそちらを優先し、何も当てはまらないときの最後の手段として使う、というのが公式の説明です。

ブラウザ型 — Browser Use

タスクの全体がWebページの中で完結するとき(フォーム入力、ページ内容の読み取り、複数タブをまたぐ作業)は、Computer UseよりBrowser Useの方が合っています。アプリケーション側が制御するブラウザが動き、スクリーンショットやページ状態をClaudeに返します。Claudeはread_pagefindform_inputget_page_textといったページを認識するメンバーツールを、クリックや入力と並べて呼べます。ピクセル座標だけでなく、要素の参照でも操作できるということです。

{
  "tools": [{ "type": "browser_toolset_20260801" }]
}

Computer Useのツールセットと同様、nameは取らず、個々のメンバーツールはconfigsフィールドで無効化します。

どの組み合わせを選ぶか — 6型の使い分け早見表

判断の起点は「集める作業と処理する作業のどちらが重いか」です。情報収集そのものに手間がかかるならWeb検索を軸にした型、収集後の計算や整形に手間がかかるならコード実行を軸にした型を選びます。GUI操作が必要になった時点でComputer UseかBrowser Useへ切り替え、複数セッションにまたがる文脈が要るならメモリーを土台に足す、という順番で絞り込むと選定に迷いにくくなります。

組み合わせ向くタスク
リサーチ型組み合わせWeb検索 + コード実行向くタスク最新情報の取得と数値の分析・集計を両方要する質問
コーディング型組み合わせテキストエディタ + Bash向くタスクファイル編集とテスト実行を繰り返す開発ループ
引用取得型組み合わせWeb検索 + Web Fetch向くタスク長文ドキュメントの該当箇所を正確に引用したい
長時間稼働型組み合わせメモリー + 任意のツール向くタスクセッションをまたいで過去の文脈を覚えておきたい
画面操作型組み合わせComputer Use単独向くタスクAPIの無いアプリ・複数デスクトップアプリの横断操作
ブラウザ型組み合わせBrowser Use単独向くタスク作業がWebページの中だけで完結する

組み合わせるときに気をつけること — 実行環境が2つに分かれる罠

コード実行と、Bashのようなクライアント提供の実行ツールを同時に渡すと、Claudeは2つの独立した実行環境を同時に扱うことになります。コード実行はAnthropicのサンドボックスコンテナ内で動き、クライアント提供のツールは開発者が管理する別環境で動きます。この2つは状態を共有しません。ところがClaudeが混同し、片方の環境にあるファイルをもう片方から参照しようとしてしまうことがあります。

Anthropicはシステムプロンプトへの明記を対策として案内しています。実際に公式が示す文面は次の通りです。

When multiple code execution environments are available, be aware that:
- Variables, files, and state do NOT persist between different execution environments
- Use the code_execution tool for general-purpose computation in Anthropic's sandboxed environment
- Use client-provided execution tools (e.g., bash) when you need access to the user's local system, files, or data
- If you need to pass results between environments, explicitly include outputs in subsequent tool calls rather than assuming shared state

「環境間で状態は共有されない」「用途に応じてどちらの実行系を使うか」「結果を渡したいなら次のツール呼び出しに明示的に含める」という3点を、システムプロンプトに固定文として入れておくだけで済みます。

まとめ

Anthropic公式が示すツールの組み合わせは、情報を集める側と処理・実行する側をペアにする発想で統一されています。リサーチはWeb検索とコード実行、コーディングはテキストエディタとBash、長文からの引用はWeb検索とWeb Fetchです。セッションをまたぐ記憶はメモリー、画面操作の全部乗せはComputer Use、Webページ限定ならBrowser Useを選びます。6つの型はどれも出発点であり、タスクに応じて混ぜてよい設計です。複数の実行系ツールを同時に渡すときは、環境が分かれていることをシステムプロンプトで明示しておくと、Claudeが環境を取り違えるリスクを減らせます。ツール自体の定義や個数を絞り込みたい場合は、Anthropic Advanced Tool UseのTool Search Toolが参考になります。往復のコードを自動化したい場合は、Tool Runnerでツール呼び出しループを自動化するを参照してください。

この記事を共有:XはてブLinkedIn