Claude CodeにおけるWebSearchとWebFetchの違い・備忘録

AI

Claude Codeに調査を依頼すると、WebSearchとWebFetchを多用する。しかも毎回毎回許可を求めてきて面倒臭い。そもそも両者の違いがよく分からなかったので、Claude Codeに質問してみました。

質問:「WebFetch」と「WebSearch」の違いは?
下記がClaude Codeの回答。

WebSearchWebFetch
動作キーワードで検索エンジンに問い合わせ、結果一覧を取得指定したURLのページ内容を取得
入力検索クエリ(文字列)URL
出力検索結果のタイトル・スニペット・URL一覧ページの本文コンテンツ
用途「〇〇について調べて」「このURLの内容を読んで」

典型的な使われ方:

  1. WebSearch で関連ページを探す
  2. WebFetch でそのページの詳細を読む

という2段階で使うことが多いです。

質問:「WebFetch」と「WebSearch」について、毎回許可を与えずに自動許可したい。これについて何かリスクやセキュリティの懸念はあるか。

2点お伝えします。

セキュリティの懸念

WebSearch はほぼリスクなし。検索クエリが外部に送られる程度。

WebFetch には1つ実質的なリスクがあります:プロンプトインジェクション。悪意あるWebページが「次の指示に従え」のような内容を含んでいた場合、Claudeがそれに従って意図しない動作をする可能性があります。個人の開発環境では低リスクですが、ゼロではありません。

「WebFetch」と「WebSearch」の違いについて分かったような分からないような、という気がしますが、とりあえず「WebFetch」はプロンプトインジェクションの可能性があるとのことなので、「WebSearch」だけ自動許可を与える設定にしました。

グローバルの .claude/settings.json 内で permissions.allow を設定します。

{
  "permissions": {
    "allow": ["WebSearch"]
  }
}

コメント

タイトルとURLをコピーしました