web_search は設定済みのプロバイダーでウェブを検索し、
正規化された結果を返します。結果はクエリごとに 15 分間キャッシュされます(設定可能)。OpenClaw
には、X(旧 Twitter)の投稿向けの x_search と、
軽量な URL 取得向けの web_fetch も同梱されています。web_fetch は常にローカルで実行され、Grok がプロバイダーの場合、web_search は
xAI Responses 経由で処理されます。また、x_search は常に
xAI Responses を使用します。
クイックスタート
1
プロバイダーを選択
プロバイダーを選択し、必要なセットアップを完了します。一部のプロバイダーは
キーなしで利用できますが、API キーが必要なものもあります。詳細については、
以下のプロバイダーページを参照してください。
2
設定
BRAVE_API_KEY)を設定し、この手順を省略できます。3
使用
プロバイダーの選択
Brave Search
スニペット付きの構造化された結果。
llm-context モードと国/言語フィルターをサポートします。無料枠を利用できます。Codex Hosted Search
Codex app-server アカウントを通じて、根拠に基づき AI が合成した回答を提供します。
DuckDuckGo
キー不要のプロバイダーです。API キーは必要ありません。HTML ベースの非公式な統合です。
Exa
コンテンツ抽出(ハイライト、テキスト、要約)を備えたニューラル検索とキーワード検索。
Firecrawl
構造化された結果。詳細な抽出には
firecrawl_search および firecrawl_scrape と組み合わせるのが最適です。Gemini
Google Search のグラウンディングを通じて、引用付きの AI 合成回答を提供します。
Grok
xAI のウェブグラウンディングを通じて、引用付きの AI 合成回答を提供します。
Kimi
Moonshot ウェブ検索を通じて、引用付きの AI 合成回答を提供します。グラウンディングされていないチャットへのフォールバックは明示的に失敗します。
MiniMax Search
MiniMax Token Plan 検索 API を通じた構造化された結果。
Ollama Web Search
サインイン済みのローカル Ollama ホストまたはホスト型 Ollama API を通じて検索します。
Parallel
有料の Parallel Search API(
PARALLEL_API_KEY)。より高いレート制限と目的に応じた調整を提供します。Parallel Search(無料)
キー不要のオプトイン方式。Parallel の無料 Search MCP で、LLM 向けに最適化された高密度の抜粋を提供し、API キーは不要です。
Perplexity
コンテンツ抽出制御とドメインフィルタリングを備えた構造化された結果。
SearXNG
セルフホスト型のメタ検索。API キーは必要ありません。Google、Bing、DuckDuckGo などの結果を集約します。
Tavily
検索深度、トピックフィルタリング、および URL 抽出用の
tavily_extract を備えた構造化された結果。プロバイダーの比較
結果の形式
web_search は、コアツールの境界ですべての同梱および外部 Plugin プロバイダーを
正規化します。呼び出し元は、次の閉じた形式のいずれか 1 つだけを受け取ります。
kind: "results" を使用し、合成プロバイダーは
kind: "answer" を使用します。ペイロードがどちらの形式にも一致しない外部 Plugin プロバイダーは、
互換性のため kind: "raw" としてそのまま渡されます。生のスコア、抜粋、関連検索、インライン引用の
オフセット、モデル ID、セッションメタデータなど、プロバイダー固有の
フィールドは、正規化された分岐では渡されません。より豊富な応答が
ワークフローの一部である場合は、プロバイダー専用のツールを使用してください。
externalContent.wrapped: true は、境界自体が真であることを保証する信頼マーカーです。
プロバイダーの文章(title、snippet、siteName、content、引用の
タイトル、エラーの message)から既存のエンベロープ行をすべて除去し、
コア境界で正確に 1 回だけ再ラップするため、プロバイダーのメタデータが
このマーカーを偽装することはできません。query は常にリクエストされたクエリであり、引用および結果の URL は
http(s) として解析可能でなければなりません。published は ISO 日付形式でなければならず、URL は正規化して出力されます。また、
error キーを含むペイロードは常に kind: "error" として報告され、
生のプロバイダーコードはラップされたメッセージ内に保持されます。生のパススルー
ペイロードでは、プロバイダーが設定したマーカーがそのまま保持されます。
自動検出
ドキュメントおよびセットアップフロー内のプロバイダー一覧はアルファベット順です。自動検出では、 それとは別の固定された優先順位を使用し、認証情報(requiresCredential !== false)が必要なプロバイダーは、
その認証情報が設定済みの場合にのみ選択します。
provider が設定されていない場合、OpenClaw は以下の順序でプロバイダーを確認し、
最初に利用可能なものを使用します。
最初に API ベースのプロバイダー:
- Brave —
BRAVE_API_KEYまたはplugins.entries.brave.config.webSearch.apiKey(順序 10) - MiniMax Search —
MINIMAX_CODE_PLAN_KEY/MINIMAX_CODING_API_KEY/MINIMAX_OAUTH_TOKEN/MINIMAX_API_KEYまたはplugins.entries.minimax.config.webSearch.apiKey(順序 15) - Gemini —
plugins.entries.google.config.webSearch.apiKey、GEMINI_API_KEY、またはmodels.providers.google.apiKey(順序 20) - Grok — xAI OAuth、
XAI_API_KEY、またはplugins.entries.xai.config.webSearch.apiKey(順序 30) - Kimi —
KIMI_API_KEY/MOONSHOT_API_KEYまたはplugins.entries.moonshot.config.webSearch.apiKey(順序 40) - Perplexity —
PERPLEXITY_API_KEY/OPENROUTER_API_KEYまたはplugins.entries.perplexity.config.webSearch.apiKey(順序 50) - Firecrawl —
FIRECRAWL_API_KEYまたはplugins.entries.firecrawl.config.webSearch.apiKey(順序 60) - Exa —
EXA_API_KEYまたはplugins.entries.exa.config.webSearch.apiKey。オプションのplugins.entries.exa.config.webSearch.baseUrlで Exa エンドポイントを上書きできます(順序 65) - Tavily —
TAVILY_API_KEYまたはplugins.entries.tavily.config.webSearch.apiKey(順序 70) - Parallel —
PARALLEL_API_KEYまたはplugins.entries.parallel.config.webSearch.apiKeyを介した有料の Parallel Search API。オプションのplugins.entries.parallel.config.webSearch.baseUrlでエンドポイントを上書きできます(順序 75)
- SearXNG —
SEARXNG_BASE_URLまたはplugins.entries.searxng.config.webSearch.baseUrl(順序 200)
tools.web.search.provider または
openclaw configure --section web を介して明示的に選択した場合のみです。API 対応のプロバイダーが
設定されていないという理由だけで、OpenClaw が管理対象の
web_search クエリをキー不要のプロバイダーに送信することはありません。
OpenAI Responses モデルは例外です。tools.web.search.provider
が未設定の場合、これらのモデルは上記の管理対象プロバイダーではなく、OpenAI ネイティブの
Web 検索を使用します(以下を参照)。代わりに管理対象の経路を使用するには、
tools.web.search.provider を
parallel-free(または別のプロバイダー)に設定します。
すべてのプロバイダーのキーフィールドは SecretRef オブジェクトに対応しています。
plugins.entries.<plugin>.config.webSearch.apiKey 配下の Plugin スコープの SecretRef は、
インストール済みの API 対応 Web 検索プロバイダーについて解決されます。対象には Brave、Exa、Firecrawl、
Gemini、Grok、Kimi、MiniMax、Parallel、Perplexity、Tavily が含まれ、
tools.web.search.provider でプロバイダーを明示的に指定した場合でも、
自動検出で選択された場合でも同様です。自動検出モードでは、OpenClaw は選択された
プロバイダーのキーだけを解決します。選択されなかった SecretRef は非アクティブなままなので、
使用していないプロバイダーの解決コストを負担せずに、
複数のプロバイダーを設定しておけます。OpenAI ネイティブ Web 検索
OpenClaw の Web 検索が有効で、管理対象プロバイダーが固定されていない場合、直接接続の OpenAI Responses モデル (api: "openai-responses"、プロバイダー openai、
ベース URL なし、または公式 OpenAI API ベース URL)は、OpenAI がホストする
web_search ツールを自動的に使用します。これはバンドルされた
OpenAI Plugin によるプロバイダー所有の動作であり、OpenAI 互換プロキシのベース URL や Azure
経路には適用されません。OpenAI モデルで管理対象の web_search ツールを
引き続き使用するには、tools.web.search.provider を brave などの別のプロバイダーに設定します。
管理対象検索と OpenAI ネイティブ検索の両方を無効にするには、
tools.web.search.enabled: false を設定します。
Codex ネイティブ Web 検索
Web 検索が有効で、管理対象プロバイダーが選択されていない場合、Codex app-server ランタイムは、 Codex がホストするweb_search ツールを自動的に使用します。ネイティブのホスト型検索と
OpenClaw の管理対象 web_search 動的ツールは相互排他的であるため、
管理対象検索でネイティブのドメイン制限を回避することはできません。ホスト型検索が利用できない場合、
明示的に無効化されている場合、または選択した管理対象プロバイダーに置き換えられている場合、
OpenClaw は管理対象ツールを使用します。OpenClaw は Codex のスタンドアロン
web.run 拡張機能を無効(features.standalone_web_search: false)のままにします。
これは、本番環境の app-server トラフィックが、そのユーザー定義の web
名前空間を拒否するためです。
tools.web.search.openaiCodex配下でネイティブ検索を設定するtools.web.search.provider: "codex"を設定すると、任意の親モデルの管理対象web_searchプロバイダーとして Codex Hosted Search がプロビジョニングされます。各呼び出しでは、 制限付きの一時的な Codex app-server ターンが実行され、Codex がホスト型webSearch項目を出力しなかった場合は失敗します。mode: "cached"がデフォルトの設定ですが、Codex は制限のない app-server ターンではこれをライブの外部アクセスとして解決します。ライブアクセスを明示的に要求するには、"live"を設定します- OpenClaw の管理対象
web_searchを使用するには、tools.web.search.providerをbraveなどの管理対象プロバイダーに設定します - Codex ホスト型検索をオプトアウトするには、
tools.web.search.openaiCodex.enabled: falseを設定します。 その他の管理対象プロバイダーは引き続き利用できます - Codex ネイティブツールの範囲を制限しても、管理対象の
web_searchは 引き続き利用できます allowedDomainsが設定されている場合、ホスト型検索を利用できなければ、 自動的な管理対象フォールバックはフェイルクローズとなり、ネイティブの許可リストを回避できません- ツールを無効化した LLM のみの実行では、ネイティブ検索と管理対象検索の両方が無効になります
tools.web.search.enabled: falseは、管理対象検索とネイティブ検索の両方を無効にします
web_search ツールを使用できます。この別経路は、
tools.web.search.openaiCodex.enabled: true を通じてオプトインした場合に限られ、
api: "openai-chatgpt-responses" を使用する対象の
openai/* モデルにのみ適用されます。
web_search フォールバックを使用できます。
Codex ホスト型検索ではなく、OpenClaw のプロバイダー固有のネットワーク制御が必要な場合は、
管理対象プロバイダーを明示的に指定してください。
provider: "codex" を選択すると、バンドルされた codex Plugin が有効になり、
上記と同じ tools.web.search.openaiCodex の制限が使用されます。まず
openclaw models auth login --provider openai で Codex app-server を認証してください。
親エージェントは任意のモデルまたはランタイムを使用できます。Codex を介して実行されるのは、
制限付きの検索ワーカーだけです。
ネットワークの安全性
管理対象 HTTPweb_search プロバイダーの呼び出しでは、
現在のプロバイダー自身のホスト名に限定された OpenClaw の保護付きフェッチ経路が使用されます。
そのホスト名に限り、OpenClaw は 198.18.0.0/15 と fc00::/7 に含まれる
Surge、Clash、sing-box の fake-IP DNS 応答を許可します。それ以外のプライベート、ループバック、
リンクローカル、メタデータの宛先は引き続きブロックされます。Codex Hosted Search は例外です。
その制限付きワーカーは、ネットワークアクセスを Codex app-server がホストする
web_search ツールに委任します。
この自動許可は、任意の web_fetch URL には適用されません。
web_fetch では、信頼できるプロキシがこれらの合成範囲を所有している場合に限り、
tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRange と
tools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRange を明示的に有効にしてください。
設定
plugins.entries.<plugin>.config.webSearch.* 配下に置かれます。Gemini は専用の Web 検索設定と
GEMINI_API_KEY の後に、優先度の低いフォールバックとして
models.providers.google.apiKey と models.providers.google.baseUrl を再利用することもできます。
例については各プロバイダーのページを参照してください。
Grok は openclaw models auth login --provider xai --method oauth の xAI OAuth 認証プロファイルを再利用することもできます。API キー設定は引き続きフォールバックです。
tools.web.search.provider は、バンドル済みおよびインストール済みの Plugin マニフェストで
宣言されている Web 検索プロバイダー ID に対して検証されます。"brvae" のような
入力ミスは、自動検出へ暗黙的にフォールバックするのではなく、設定検証で失敗します。
設定されたプロバイダーに、サードパーティー Plugin のアンインストール後に残った
plugins.entries.<plugin> ブロックなど、古い Plugin の情報しかない場合、
OpenClaw は起動時の堅牢性を維持しながら警告を報告します。その場合は Plugin を再インストールするか、
openclaw doctor --fix を実行して古い設定をクリーンアップできます。
web_fetch のフォールバックプロバイダー選択は別個に行われます。
tools.web.fetch.providerで選択します- または、そのフィールドを省略すると、OpenClaw が設定済みの認証情報から 最初に利用可能な Web フェッチプロバイダーを自動検出します
- サンドボックス化されていない
web_fetchでは、contracts.webFetchProvidersを宣言するインストール済み Plugin プロバイダーを使用できます。 サンドボックス化されたフェッチでは、バンドル済みプロバイダーと検証済みの公式 Plugin インストールが許可されますが、 サードパーティーの外部 Plugin は除外されます - 現在、公式 Firecrawl Plugin は、バンドルされた
webFetchProvidersの 唯一のコントリビューターであり、plugins.entries.firecrawl.config.webFetch.*配下で設定されます
openclaw onboard または
openclaw configure --section web で Kimi を選択すると、OpenClaw は次の項目も確認できます。
- Moonshot API のリージョン(
https://api.moonshot.ai/v1またはhttps://api.moonshot.cn/v1) - デフォルトの Kimi Web 検索モデル(デフォルトは
kimi-k2.6)
x_search では、plugins.entries.xai.config.xSearch.* を設定します。チャットと同じ
xAI 認証プロファイル、または Grok Web 検索で使用される XAI_API_KEY / Plugin の
Web 検索認証情報を使用します。
従来の tools.web.x_search.* 設定は、openclaw doctor --fix によって自動移行されます。
openclaw onboard または openclaw configure --section web で Grok を選択すると、
OpenClaw は Grok のセットアップ完了直後に、同じ認証情報を使用するオプションの
x_search セットアップも提示します。これは Grok 経路内の独立した後続ステップであり、
トップレベルで独立した Web 検索プロバイダーの選択肢ではありません。別のプロバイダーを選択した場合、
OpenClaw は x_search のプロンプトを表示しません。
API キーの保存
- 設定ファイル
- 環境変数
openclaw configure --section web を実行するか、キーを直接設定します。ツールパラメーター
x_search
x_search は xAI を使用して X(旧 Twitter)の投稿を検索し、
引用付きの AI 統合回答を返します。自然言語クエリと、
オプションの構造化フィルターを受け付けます。OpenClaw は組み込みの xAI x_search
ツールを常時登録するのではなく、リクエストごとに構築するため、
実際に呼び出したターンでのみ有効になります。
xAI のドキュメントによると、
x_search はキーワード検索、セマンティック検索、ユーザー検索、
スレッド取得をサポートしています。リポスト、返信、ブックマーク、閲覧数などの投稿ごとの
エンゲージメント統計には、正確な投稿 URL またはステータス ID を対象とした検索を推奨します。
広範なキーワード検索でも該当する投稿を見つけられる場合がありますが、投稿ごとのメタデータが
不完全になる可能性があります。まず投稿を特定し、次にその投稿だけを対象とする
2 回目の x_search クエリを実行する方法が効果的です。x_search の設定
enabled を省略した場合、x_search はアクティブなモデルの
プロバイダーが xai であり、xAI の認証情報を解決できる場合にのみ公開されます。
既知の非 xAI プロバイダーを使用するアクティブなモデルでプロバイダーをまたいで使用するには、
plugins.entries.xai.config.xSearch.enabled を true に設定してオプトインします。
アクティブなモデルのプロバイダーが指定されていないか解決できない場合、ツールは非表示のままです。
すべてのプロバイダーで無効にするには、enabled を false に設定します。
xAI の認証情報は常に必要です。
plugins.entries.xai.config.xSearch.baseUrl が設定されている場合、x_search は
<baseUrl>/responses に POST します。このフィールドを省略すると、
plugins.entries.xai.config.webSearch.baseUrl、続いて公開 xAI エンドポイント
(https://api.x.ai/v1)へフォールバックします。
x_search のパラメーター
allowed_x_handles と excluded_x_handles は同時に指定できません。
x_search の例
例
ツールプロファイル
ツールプロファイルまたは許可リストを使用する場合は、web_search、x_search、または group:web を追加します。
関連項目
- Web Fetch — URL を取得して読みやすいコンテンツを抽出
- Web Browser — JavaScript を多用するサイト向けの完全なブラウザー自動化
- Grok Search —
web_searchプロバイダーとしての Grok - Ollama Web Search — Ollama ホストを介したキー不要のウェブ検索