factsClaude Codetools-reference

stable4 日前 · 2026-08-09

Tools reference

概要

Claude Code の組み込みツール一覧と、ツールごとの挙動。ここに載っているツール名は、permission rule / subagent の tool list / hook matcher でそのまま使う文字列。

仕様

ツール一覧

Permission required 列は、作業ディレクトリ内のパスに対して default permission mode でプロンプトが出るかを示す。No のファイルアクセスツール(Read / Grep / Glob)も、作業ディレクトリと追加ディレクトリの外のパスではプロンプトを出す。BashYes だが、組み込みの read-only コマンド集合はプロンプトなしで動く。

ツール説明Permission
Agent独自のコンテキストウィンドウを持つ subagent を起動するNo
ArtifactHTML / Markdown ファイルを claude.ai 上のプライベートで対話的なページ(artifact)として公開する。Pro / Max / Team / Enterprise プランと /login 認証が必要Yes
AskUserQuestion要件収集や曖昧さ解消のために多肢選択の質問をするNo
Bashシェルコマンドを実行するYes
CronCreate現在のセッション内で繰り返し/一回きりのプロンプトをスケジュールする。タスクはセッションスコープで、未期限なら --resume / --continue で復元されるNo
CronDeleteID でスケジュール済みタスクをキャンセルするNo
CronListセッション内の全スケジュール済みタスクを一覧するNo
Editファイルに対象を絞った編集を行うYes
EndConversationセッションを終了する。v2.1.213 以降が必要No
EnterPlanModeplan mode に切り替えるNo
EnterWorktree分離された git worktree を作って移動する。path を渡すと既存の worktree へ移動するYes
ExitPlanMode計画を承認のために提示し plan mode を抜けるYes
ExitWorktreeworktree セッションを抜けて元のディレクトリへ戻る。isolation: worktree など既に自分の作業ディレクトリで動く subagent では使えないNo
Globパターンマッチでファイルを探すNo
Grepファイル内容をパターン検索するNo
ListAgentsSendMessage で送れる agent を一覧する。/list-agents コマンドの実体。v2.1.224 以降が必要で、cross-session messaging が有効なセッションにのみ現れるNo
ListMcpResourcesTool接続済み MCP サーバーが公開するリソースを一覧するNo
LSPlanguage server によるコードインテリジェンスNo
Monitorコマンドをバックグラウンドで実行し、各出力行を Claude に返す。WebSocket を開いて各メッセージをイベントとして扱うこともできるYes
NotebookEditJupyter notebook のセルを変更するYes
PowerShellPowerShell コマンドをネイティブに実行するYes
PushNotificationデスクトップ通知(Remote Control 接続時はスマートフォンへの push も)を送る。Amazon Bedrock / Claude Platform on AWS / Google Cloud's Agent Platform / Microsoft Foundry からは使えないNo
Readファイルの内容を読むNo
ReadMcpResourceToolURI で特定の MCP リソースを読むNo
RemoteTriggerclaude.ai 上の Routines を作成・更新・実行・一覧する。/schedule コマンドの実体。Routines は claude.ai 上にあり Pro / Max / Team / Enterprise プランが必要なため、Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry からは使えないNo
ReportFindingsコードレビューの所見を構造化リスト(file / summary / failure scenario)として報告する。v2.1.196 以降が必要。v2.1.199 以降、任意の category slug も持てるNo
ScheduleWakeupself-paced /loop の次の反復をスケジュールし直す。1 分〜1 時間先。stop: true でループを終える(stop フィールドは v2.1.202 以降)。Amazon Bedrock / Claude Platform on AWS / Google Cloud's Agent Platform / Microsoft Foundry では利用できず、間隔を指定しない /loop は固定スケジュールで動くNo
SendMessage他の agent(agent team の teammate、agent ID / 名前で resume する subagent、他の Claude Code セッション)にメッセージを送るNo
SendUserFileセッションからユーザーへファイルを送る。v2.1.196 以降、display 入力で表示方法を制御する(render / attach、未設定ならクライアントがファイル種別で判断)。Remote Control クライアントが接続しているか、Claude Code on the web のような managed cloud 環境で動いている場合に利用可能。配信が Anthropic ホストのインフラを通るため Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry では利用できないNo
ShareOnboardingGuideONBOARDING.md をアップロードして共有リンクを返す。/team-onboarding から呼ばれるYes
Skillメイン会話内で skill を実行するYes
TaskCreateタスク一覧に新しいタスクを作るNo
TaskGet特定のタスクの詳細を取得するNo
TaskList全タスクを現在の状態とともに一覧するNo
TaskUpdateタスクの状態・依存・詳細を更新する、または削除するNo
TaskOutputバックグラウンドタスクの出力を取得する。タスクの出力ファイルパスに対する Read に置き換えられ非推奨No
TaskStopID で実行中のバックグラウンドタスクを止める。agent-team teammate や名前付きバックグラウンド agent も受け付ける(v2.1.198 以降)No
TodoWriteセッションのタスクチェックリストを管理する。v2.1.142 以降、TaskCreate / TaskGet / TaskList / TaskUpdate を優先して既定で無効。CLAUDE_CODE_ENABLE_TASKS=0 で再度有効にできるNo
ToolSearchtool search が有効なとき、deferred なツールを検索して読み込むNo
WaitForMcpServersバックグラウンドで接続中の MCP サーバーを待つ。tool search が無効なときのみ現れるNo
WebFetch指定 URL の内容を取得するYes
WebSearchウェブ検索を行うYes
Workflowdynamic workflow(多数の subagent をバックグラウンドで指揮し 1 つの結果を返すスクリプト)を実行するYes
Writeファイルを作成または上書きするYes

permission rule と hook でのツール指定

ツール名を直接書く場所:

  • settings の permissions.allow / permissions.deny/permissions インターフェース
  • CLI フラグ --allowedTools / --disallowedTools
  • Agent SDK の allowedTools / disallowedTools
  • subagent の tools / disallowedTools frontmatter
  • skill の allowed-tools frontmatter
  • hook の if 条件
ルール形式適用先
Bash(npm run *)Bash, Monitor
PowerShell(Get-ChildItem *)PowerShell
Read(~/secrets/**)Read, Grep, Glob, LSP
Edit(/src/**)Edit, Write, NotebookEdit
Skill(deploy *)Skill
Agent(Explore)Agent
WebFetch(domain:example.com)WebFetch
WebSearchWebSearch(specifier 無し)
  • ここに無いツール(ExitPlanModeShareOnboardingGuide など)は specifier 無しの素のツール名のみを受け付ける
  • Edit(...) の allow ルールは同じパスへの読み取りアクセスも与えるため、対応する Read(...) ルールは不要
  • Read(...) の deny ルールは同じパスに対する Edit ツール(新規ファイル作成を含む)もブロックする。v2.1.208 以降が必要
  • hook の matcher は括弧付きのルール形式ではなく素のツール名を使う

Agent ツール

  • subagent は別のコンテキストウィンドウでタスクを自律的に進め、1 つのテキスト結果を親会話へ返す。親は中間のツール呼び出しや出力を見ない
  • ターン数の上限は subagent 定義の maxTurns
  • フォークモードが有効なとき、同じ Agent ツールが forked subagent も起動する
  • ツール解決: どちらも未設定なら subagent が使える全ツールを継承、tools のみなら列挙分だけ、disallowedTools のみなら親のツールから除外、両方なら disallowedTools が優先
  • いずれの場合も解決結果は「subagent が使えるツール」に限られる。subagent が使えないツールは tools に書いても与えられない
  • subagent の起動自体は permission を求めない。subagent 自身のツール呼び出しが permission ルールに照合される

AskUserQuestion ツール

  • 選択肢を選ぶか、Other 行やメモ欄に自分でテキストを入力して答える
  • 自分でテキストを書いた場合、Claude Code は中立的な言い回しで回答を伝える
  • 質問は答えるまで開いたままになる。askUserQuestionTimeout 設定(60s / 5m / 10m)を user settings.json または /configQuestion auto-continue timeout 行で設定すると、その時間無入力でダイアログが自動で閉じる
    • 閉じるときに既に選択済みの選択肢を送信し、ユーザーが離席している可能性を Claude に伝える
    • 最後の 20 秒はカウントダウンが表示される。任意のキーでタイマーがリセットされ、フォーカスを報告するターミナルではウィンドウを切り替えてもリセットされる
  • タイムアウトは AskUserQuestion の多肢選択にのみ適用される。permission prompt(計画の承認を含む)はアイドルで自動解決されない

Bash ツール

各コマンドは別プロセスで実行される。

コマンド間で持続するもの:

  • メインセッションで cd を実行すると、プロジェクトディレクトリまたは追加作業ディレクトリの中に留まる限り、新しい作業ディレクトリが以降の Bash コマンドに引き継がれる。subagent セッションでは引き継がれない
    • 範囲外に cd した場合はプロジェクトディレクトリにリセットされ、ツール結果に Shell cwd was reset to <dir> が追記される
    • 引き継ぎを無効にするには CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1
  • 環境変数は持続しない。あるコマンドの export は次のコマンドで使えない
  • シェル起動ファイルで定義したエイリアスとシェル関数は使える。セッション開始時に ~/.zshrc / ~/.bashrc / ~/.profile を source し、得られたエイリアス・関数・シェルオプションを全 Bash コマンドに適用する
  • 環境変数を持続させるには、起動前に CLAUDE_ENV_FILE にシェルスクリプトを設定するか、SessionStart hook で動的に埋める

タイムアウトと出力の上限:

  • コマンドごとのタイムアウトは Claude が管理する。既定より長くしたいときは呼び出しに timeout パラメータを渡す
  • BASH_DEFAULT_TIMEOUT_MS: Claude がタイムアウトを渡さないときの既定。標準で 2 分
  • BASH_MAX_TIMEOUT_MS: Claude の要求を制限する上限。実効の上限は 2 つのうち大きい方で、標準で 10 分
  • 出力は実行中に作業ファイルへストリームされ、5 GB を超えるとコマンドが kill される
結果Claude が受け取るもの
Valid約 30,000 文字までインライン。それを超えるとセッションディレクトリに保存されたファイルのパス(64 MiB で切り詰め)と先頭の短いプレビュー
Failure約 10,000 文字までインライン。それを超えると read-back window から切り出した head-and-tail の抜粋(ファイルパスなし)
  • exit 1 が valid 扱いになるのは、Claude Code がそのコマンドで exit 1 を無害な結果と認識する場合のみ: grep, rg, egrep, fgrep, find, diff, test, [、および git diffgit grep。それ以外は exit 1 が無害な情報であっても failure 扱い
  • BASH_MAX_OUTPUT_LENGTH は作業ファイルから結果に読み戻す文字数を決める。既定 30,000、上限 150,000。これを上げても上記のインライン上限は上がらない

バックグラウンドコマンド:

  • Claude は run_in_background: true でコマンドをバックグラウンドタスクとして開始できる。一覧と停止は /tasks
  • タイムアウトに達して終わらないコマンドは停止ではなくバックグラウンドへ移される。sleep で始まるコマンドは自動バックグラウンド化されない。CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1 で自動バックグラウンド化ごと無効になる
  • タイムアウトで移された場合の結果: Command did not complete within its 120s timeout and was moved to the background(秒数は適用されたタイムアウト)に続けてタスク ID と出力先ファイルパス
  • バックグラウンドへ移されたコマンド内の cd / pushd / popd / chdir は引き継がれず、結果に Session cwd remains <dir>; directory changes made by the backgrounded command do not apply to subsequent commands. と表示される

Edit ツール

  • 完全一致の文字列置換を行う。正規表現やあいまい一致は使わない
  • 適用には 3 つのチェックが必要。その前に Read deny ルールに一致するパスは(新規ファイル作成を含め)拒否される(v2.1.208 以降)
    • Read-before-edit: 編集前に同じ会話でファイルを読んでいること。PARTIAL view の注記で途中で切れた読み取りは数えない。Claude Opus 4.6 / Claude Haiku 4.5 とそれ以前のモデルは常に読み取りが必要。新しいモデルは、読み取りに permission prompt が不要で Read ツールが使える場合、未読ファイルを編集できる
    • Match: old_string がファイル内に書かれたとおり正確に現れること。空白やインデントが 1 文字違うだけで一致しない
    • Uniqueness: old_string がちょうど 1 回だけ現れること。複数回現れる場合は前後の文脈を足して一意にするか、replace_all: true を設定する
  • Claude が最後に読んだ後にディスク上で変わったファイルでも、old_string が現在の内容と正確かつ一意に一致し、プロンプトなしで読めるなら編集できる。結果には他の変更があることが記される(v2.1.208 以降)
  • Bash でのファイル閲覧も read-before-edit を満たす。対象は単一ファイルに対しパイプもリダイレクトも無い cat / head / tail / sed -n 'X,Yp' / grep / egrep / fgrep
  • Read / Edit の deny ルールは Claude Code が認識する Bash のファイルコマンドにも適用されるが、read-before-edit のリストとは同一ではない(egrepfgrep は read-before-edit には数えるが Read deny ルールの照合対象ではない)

EndConversation ツール

  • Claude が使うのは 2 つの状況のみ: 継続的な攻撃的入力に対する最後の手段(会話の方向転換の試みが失敗し、以前のメッセージで明確に警告した後)と、ユーザーが明示的にデモを求めて終了に同意したとき
  • 一般的な苛立ち、罵倒、うまくいかないタスクは該当しない。有害なコンテンツの要求も該当せず、Claude は終了ではなく拒否する
  • 対話セッションを終了するとセッションはロックされる。新しいプロンプトと多くのコマンドは Claude ended this conversation. Start a new session (or /clear) to continue. を返し、/clear / /resume / /help / /exit / /feedback のみが動く。終了はトランスクリプトに記録されるため、resume するとロックも復元される。履歴は削除されない
  • 非対話モードで終了済みセッションを resume するとエラーになり終了コード 1 になる
  • permission を求めず、PreToolUse hook も動かない。他のツールが残っている限りブロックできない(EndConversation を指す deny / ask ルールは効かず、--disallowedTools--tools リストも取り除けない)
  • deny ルールが他のすべてのツールを取り除き、かつ "*" のように EndConversation にも一致する場合は、allow ルールが明示的に EndConversation を挙げていない限りこれも取り除かれる
  • subagent には決して与えられない。メイン会話のツールリストを共有するバックグラウンドタスクからは見えるが、呼んでも何も終了しない

現れる条件(すべてを満たすとき):

  • Version: v2.1.213 以降
  • Model: セッションのモデルが Claude Opus 4.8、Claude Sonnet 5、Claude Fable 5、またはそれらのファミリーの後のバージョン
  • Surface: 対話ターミナルセッション(IDE の統合ターミナル内の claude を含む)。非対話 -p、Agent SDK、VS Code 拡張パネル、GitHub Actions、Claude Code on the web では含まれない
  • Startup mode: --bare セッションでない
  • Provider: Amazon Bedrock / Claude Platform on AWS / Google Cloud's Agent Platform / Microsoft Foundry、および cloud gateway 経由でサインインしたセッションでは利用できない

Glob ツール

  • 標準の glob 構文をサポートする(** による再帰マッチを含む)
  • 結果は更新時刻でソートされ 100 ファイルで打ち切られる。上限に達すると結果に truncation フラグが付く
  • 既定では .gitignore を尊重しないため、gitignore されたファイルも見つける(Grep とは異なる)。尊重させるには起動前に CLAUDE_CODE_GLOB_NO_IGNORE=false を設定する
  • patternpath に null バイトが含まれるとエラーを返す

Grep ツール

  • ripgrep 上に構築され、POSIX grep ではなく ripgrep の正規表現構文を使う。メタ文字はエスケープが必要(Go の interface{} を探すなら interface\{\}
  • ripgrep が拒否したパターン・glob・ファイル種別は、ripgrep の診断を含むエラーを返す(v2.1.208 以降。それ以前は No files found を返していた)
  • 出力モード
    • files_with_matches: ファイルパスのみ(既定)
    • content: ファイル名と行番号付きの一致行。offset が最後の一致より後を指す場合は No entries at this offset を返す
    • count: ファイルごとの一致数と全体の合計。head_limitoffset で一覧が切り詰められても合計は全一致を数える(v2.1.208 以降)
  • glob パラメータ(**/*.tsx)や type パラメータ(pyrust)で絞り込む
  • 既定では 1 行内でマッチする。multiline: true で行をまたぐ
  • .gitignore を尊重するため gitignore されたファイルはスキップされる。検索するにはパスを直接渡す

LSP ツール

  • 各ファイル編集の後、型エラーと警告を自動報告する
  • 直接呼んでコードを辿ることもできる: シンボル定義へのジャンプ、参照検索、位置の型情報取得、ファイル内シンボル一覧、ワークスペース横断のシンボル名検索、インターフェースの実装検索、呼び出し階層のトレース
  • 言語向けの code intelligence plugin をインストールするまで非アクティブ。plugin は language server 設定を同梱し、サーバーバイナリは別途インストールする

Monitor ツール

  • コマンドを実行する場合、Bash と同じ permission ルールを使う
  • Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry では利用できない。DISABLE_TELEMETRY または CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC が設定されている場合も利用できない
  • plugin は plugin が有効なときに自動起動する monitor を宣言できる

WebSocket source(v2.1.195 以降):

  • テキストメッセージ: 複数行でも 1 つのイベントになる
  • バイナリメッセージ: 通されない。[binary frame, 512 bytes] のようなプレースホルダ行を受け取る
  • 1 MiB を超えるメッセージ: watch が終了する
  • ソケットのクローズ: watch が終了し、Claude は close code を受け取る
  • ws 入力は command の代わりに使い、1 回の Monitor 呼び出しで両方は使えない
フィールド必須説明
urlはいws:// または wss:// の URL。埋め込み認証情報や空白を含まず ASCII のみ
protocolsいいえハンドシェイクで提示する WebSocket subprotocol 名。各エントリは妥当な subprotocol トークンで、重複不可
  • timeout_mspersistent はコマンドと同じ挙動。TaskStop で早期キャンセルできる
  • WebSocket を開くと承認を求められる。同じホストの以降のプロンプトを省く選択肢は無い
  • private / link-local / cloud-metadata アドレスを指す URL(それに解決されるホスト名を含む)は拒否される。sandbox.network.deniedDomains のホスト、managed settings で allowManagedDomainsOnly が設定されている場合は managed allowlist 外のホストも拒否される

NotebookEdit ツール

  • cell_id でセルを指定して 1 セルずつ変更する。Edit のようなノートブック全体の文字列置換は行わない
  • 編集モード: replace(既定、セルの source を上書き)、insert(対象の後に新セルを追加。cell_id 無しならノートブック先頭。cell_typecode または markdown が必要)、delete(対象セルを削除)
  • permission ルールは Edit(...) のパス形式を使う

PowerShell ツール

利用可能になる条件:

  • Git Bash の無い Windows: 自動で有効

  • Git Bash がある Windows: 段階的に展開中

  • Linux / macOS / WSL: opt-in

  • 有効化は CLAUDE_CODE_USE_POWERSHELL_TOOL=1(環境変数または settings.json)。Windows では 0 で展開から外れる。Linux / macOS / WSL では PowerShell 7 以降が必要(pwshPATH に置く)

  • Windows では PowerShell 7+ の pwsh.exe を自動検出し、PowerShell 5.1 の powershell.exe にフォールバックする。有効時は PowerShell が主シェルとして扱われる。Git Bash がインストールされていれば Bash ツールも POSIX スクリプト用に残る

  • PowerShell はプロセススコープの -ExecutionPolicy Bypass で起動される。Group Policy の MachinePolicy / UserPolicy は上書きしない。マシンの実効実行ポリシーを尊重するには CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1

  • PreToolUse hook は Bash ツールと同じフィールドで tool_input.command にコマンド文字列を受け取る。シェルコマンドを検査する hook では Bash|PowerShell にマッチさせる

シェル選択の設定:

  • settings.json"defaultShell": "powershell": 対話の ! コマンドを PowerShell で実行する。PowerShell ツールの有効化が必要

  • command hook の "shell": "powershell": その hook を PowerShell で実行する。hook は PowerShell を直接起動するため CLAUDE_CODE_USE_POWERSHELL_TOOL に関わらず動く

  • skill frontmatter の shell: powershell: !`command` ブロックを PowerShell で実行する。PowerShell ツールの有効化が必要

  • v2.1.196 以降、grep / egrep / fgrep / git grep の exit 1 は「一致なし」、git diff の exit 1 は「差分あり」を意味し、コマンド失敗として報告されない

  • Windows のエンコーディングと exit code の挙動(v2.1.214 以降): >>> は PowerShell 5.1 でも UTF-8 で書く、ネイティブコマンドの標準入力へのパイプを UTF-8 でエンコードする、ANSI エスケープなしでエラー出力を捕捉する、標準入力を待つ子プロセスはハングせず EOF を受け取る、where.exe の exit 1 は「一致なし」・fc.exediff.exe の exit 1 は「ファイルが異なる」として扱う(出力がある場合。where.exe /Q$null へのリダイレクトのような黙らせた形は exit 1 で失敗扱い)

  • プレビュー中の既知の制限: PowerShell profile は読み込まれない。Windows では sandboxing 非対応

Read ツール

  • ファイルパスを取り、行番号付きで内容を返す。Claude は常に絶対パスを渡すよう指示されている
  • 既定ではファイル先頭から返す。全体読み取りがトークン上限を超えると、最初のページと PARTIAL view の注記(どれだけ受け取ったか、offsetlimit での続きの読み方)を返す
  • 明示的な offset / limit を渡してなおトークン上限を超える場合はエラーになる
  • 明示的な limit 付きの読み取りは、選択行がトークン上限に収まりえない時点で止まりエラーを返す。より小さい limit を使うか、1 行が巨大な場合は Grep で特定内容を探すよう伝える(v2.1.208 以降)
  • 空ファイルの読み取りは、ファイルは存在するが内容が空であるという通知を返す。最終行より後の offset はファイルの行数を示す通知を返す(v2.1.208 以降)
  • Images: PNG / JPG などは Claude が見られる視覚的コンテンツとして返る。大きな画像はモデルの上限に合わせてリサイズ・再圧縮される。v2.1.196 以降、リサイズ後も 500KB を超える画像はピクセル寸法を保ったまま低品質の JPEG に再エンコードされる
  • PDFs: 短い .pdf は全体を読む。10 ページを超える PDF は pages パラメータ("1-5" など、一度に最大 20 ページ)で範囲読みする
  • Jupyter notebooks: .ipynb は全セルを出力込みで返す
  • ディレクトリは読めない。ls などのシェルコマンドを使う

WebFetch ツール

  • URL と抽出内容を記述したプロンプトを取る。ページを取得し、HTML なら Markdown に変換し、小さく高速なモデルでプロンプトを実行する。多くの場合 Claude が受け取るのは生ページではなくそのモデルの回答。変換ステップは設定できない
  • 設計上 lossy。抽出プロンプトが届く内容を決めるため、「ページに書かれていない」という結果はプロンプトが尋ねなかっただけかもしれない
  • HTTP URL は自動的に HTTPS へアップグレードされる
  • 大きなページは処理前に固定の文字数上限で切り詰められる
  • 応答は 15 分キャッシュされる
  • 別ホストへリダイレクトする場合、追わずに元 URL とリダイレクト先を示すテキスト結果を返す。Claude は 2 回目の WebFetch で新 URL を取得する
  • 抽出ステップが過負荷の API に当たった場合はバックオフ付きで再試行し、なお失敗するとエラー結果を返す(v2.1.212 より前は API エラーテキストが抽出内容として Claude に届くことがあった)
  • default と acceptEdits モードでは、新しいドメインに初めて到達するときにプロンプトを出す。ただしプロンプトなしで取得できる組み込みの preapproved なドキュメントドメイン集合がある。事前許可するには WebFetch(domain:example.com) のルールを追加する。autobypassPermissions はプロンプトを完全に飛ばす
  • deny / ask / allow の明示的な WebFetch(domain:...) ルールは preapproved 集合より優先される
  • User-Agent ヘッダーは Claude-User で始まり、Accept ヘッダーは HTML より Markdown を優先する
  • sandbox のネットワークルールは別に設定する

WebSearch ツール

  • Anthropic の web search バックエンドにクエリを投げ、結果のタイトルと URL を返す。ページ自体は取得しない
  • 1 回の呼び出しで最大 8 回のバックエンド検索を行い、内部で絞り込んでから結果を返す
  • allowed_domains で特定ホストのみに、blocked_domains で除外に絞れる。1 回の呼び出しで両方は使えない
  • permission ルールは specifier を取らない。allow / deny の素の WebSearch エントリのみ
  • 検索バックエンドは設定できない。別のプロバイダで検索するには検索ツールを公開する MCP サーバーを追加する
  • Claude API と Claude Platform on AWS で利用できる。Microsoft Foundry では Anthropic ホストのデプロイが必要(Azure ホストのデプロイは server-side ツール非対応で呼び出しが失敗する)。Google Cloud's Agent Platform では Claude 4 以降のモデルで動く。Amazon Bedrock は server-side の web search ツールを公開していない
  • 1 セッションあたり最大 200 回。メイン会話と生成した全 subagent を通じて数える。v2.1.212 以降が必要。上限に達すると、エラーではなく「既に集めた情報で続けるように」という通知を返す。CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION で上限を変えられる(正の整数のみで、無効化はできない)。/clear でカウントがリセットされる。ただし clear 後も subagent を生成しうる作業(実行中の workflow など)が残っている場合はカウントが引き継がれる

Write ツール

  • 与えられた内容でファイルを新規作成、または全体を上書きする。追記もマージもしない
  • 対象パスが既に存在する場合、同じ会話で少なくとも 1 回読んでいなければ上書きに失敗する。新規ファイルにはこの制約は無い
  • Bash でのファイル閲覧も Edit と同じルールでこの要件を満たす
  • 既存ファイルの部分変更には Write ではなく Edit を使う

設定

PowerShell ツールを有効にする(環境変数として設定するか settings.jsonenv に書く):

{
  "env": {
    "CLAUDE_CODE_USE_POWERSHELL_TOOL": "1"
  }
}

Windows では 0 を設定すると段階展開から外れる。Linux / macOS / WSL では PowerShell 7 以降が必要で、pwshPATH に置く。

制約・注意点

  • 利用できるツール集合はプロバイダ・プラットフォーム・設定で変わる。実行中のセッションで確認するには Claude に直接尋ねる。MCP の正確なツール名は /mcp
  • advisor tool は API 側が実行する server tool であり、Claude Code が実装するツールではない。permission ルールや hook matcher で参照できる名前は無い

関連

  • facts/claude-code/permissions.md
  • facts/claude-code/hooks.md
  • facts/claude-code/sub-agents.md
  • facts/claude-code/mcp.md
  • facts/claude-code/skills.md
  • facts/claude-code/sandboxing.md
  • facts/claude-code/env-vars.md
  • facts/claude-code/settings.md
  • facts/claude-code/worktrees.md