用語集
『エージェントツール呼び出し: エージェントに実際に行動させる』の用語 76 件。レッスン本文で初出の箇所にホバーすると定義を確認できます。
| 用語 | 定義 | 出典 |
|---|---|---|
| ツール | ホストプログラムがモデルに「あなたのためにできることはこれです」と提示する呼び出し可能な機能の項目。モデルを「話すだけ」から「行動できる」へと変えるもの。 | Define tools — Claude API |
| ホストプログラム | モデルのツール呼び出しリクエストを実際に受け取り、操作を実行し、結果をモデルに返すコード。Claude Codeや自分で書いたエージェントスクリプトがこれにあたる。 | How tool use works — Claude API |
| search_files | コース全体で使われる例のツール名。「何らかの条件でプロジェクトファイルを検索する」という具体的なツール定義のクラスを代表している。 | Define tools — Claude API |
| name | ツール定義の必須フィールド。モデルがそのツールを選ぶときに書く識別子であり、呼び出し時の名前と正確に一致しなければならない。 | Define tools — Claude API |
| description | ツール定義の必須フィールド。そのツールが何をするか、いつ使うべきか、どう動作するかを平文で述べたもので、モデルがツールを選ぶ際に読める唯一の根拠。 | Define tools — Claude API |
| input_schema | ツール定義の必須フィールド。ツール呼び出し時にパラメータが取るべき形をJSON Schemaで規定する。 | Define tools — Claude API |
| クライアントツール | ホストアプリケーションが自分で実行する責任を持つツール。モデルは呼び出しリクエストを生成するだけで、実際の実行コードはホスト側にある。 | Tool use with Claude — Overview |
| サーバーツール | Anthropicのサーバーが代わりに実行してくれるツール。実行ロジックをホストアプリケーションが自分で実装しなければならないクライアントツールと対をなす。 | Tool use with Claude — Overview |
| 構造化データ | モデルのツール呼び出しリクエストが返ってくる形式。自然言語の指示ではなく、ツール名とパラメータを載せた、コードが解析して実行できるデータの塊。 | How tool use works — Claude API |
| required | JSON Schemaのフィールドで、ツール呼び出しが必ず渡さなければならないパラメータ名を列挙する。それを欠いた呼び出しは不正な入力として扱われる。 | Define tools — Claude API |
| Claude Code | 「ホストプログラム」という概念のコース内での具体例。それ自体が多数のツール(ファイルを読む、コードを検索する、コマンドを実行する等)の呼び出しをリクエストするエージェント製品である。 | Tools reference — Claude Code Docs |
| tools | モデルへのリクエストに載せるフィールド。この会話でモデルが呼び出しをリクエストできるツールと、それぞれが必要とするパラメータを並べたマニフェスト。 | Define tools — Claude API |
| stop_reason | モデルのレスポンスに含まれるフィールドで、今回モデルが話すのをやめた理由を示す。値にはtool_useやend_turnなどがあり、あくまでシグナルであって実行記録ではない。 | Tool use with Claude — Overview |
| tool_result | モデルへ送り返すメッセージ内のコンテンツブロック型。ツール実行の完了結果を運び、tool_use_idによって対応するtool_useブロックと照合される。 | Handle tool calls — Claude API |
| tool_use_id | tool_resultブロックのフィールドで、対応するtool_useブロックのidと正確に一致しなければならない。モデルはこれで結果とリクエストを対応づける。 | Handle tool calls — Claude API |
| is_error | tool_resultブロックのオプションフィールドで、そのツール実行自体が失敗したかどうかを示す。trueにすると、この呼び出しが問題に遭遇したことをモデルに伝える。 | Handle tool calls — Claude API |
| finish_reason | OpenAI互換APIにおいてstop_reasonに対応するフィールド名。値がtool_callsであれば、モデルがツール呼び出しをリクエストしていることを意味する。 | Tool Use — LM Studio Docs (OpenAI-compatible API) |
| messages | 会話履歴を運ぶリクエスト内の配列フィールド。毎ターンのレスポンスを逐語的に追記する必要があり、モデルのtool_use応答とそれに続くtool_resultも含まれる。 | How tool use works — Claude API |
| end_turn | stop_reasonの値の1つ。モデルがこのターンの発話を終え、これ以上ツール呼び出しを必要とせず、その内容をユーザーに渡してよいことを意味する。 | Tool use with Claude — Overview |
| tool_useブロック | モデルのレスポンスのcontent配列に現れる、1件のツール呼び出しリクエストを表すコンテンツブロック型。id、name、inputの3フィールドが揃って初めて完全になる。 | Handle tool calls — Claude API |
| 往復 | ツール呼び出しの完全なサイクル。モデルがリクエストを出し、ホストが実行し、結果が送り返され、モデルが次のレスポンスを生成するまで。 | How tool use works — Claude API |
| ループ | 複数ターンのツール呼び出しを扱うホスト側の方法。stop_reasonがtool_useである限り、ツールを実行し、結果を送り返し、再度リクエストすることをend_turnになるまで繰り返す。 | How tool use works — Claude API |
| データ依存関係 | 1つの並列ツール呼び出しバッチの中で、ある呼び出しのパラメータが理論上は別の呼び出しの戻り値と等しくあるべき関係。その値はバッチ生成の時点ではまだ存在しない。 | Parallel tool use — Claude API |
| disable_parallel_tool_use | リクエストのtool_choiceオブジェクトに設定する項目。trueにするとモデルは1レスポンスにつき最大1つのツールしか呼び出さず、並列呼び出しの依存関係が整理できていない段階で動作を絞るために使う。 | Parallel tool use — Claude API |
| 爆発半径 | 1回のツール呼び出しが誤ったときに引き起こしうる被害の範囲。5つのツールカテゴリを並べる際の中核的な基準となる。 | Configure the sandboxed Bash tool - Claude Code Docs |
| read_file | 読み取りカテゴリのツールに対するコース内の例の名前。典型的なパラメータはファイルパスで、ファイルの内容を返す。 | Tools reference — Claude Code Docs |
| write_file | 書き込みカテゴリのツールに対するコース内の例の名前。典型的なパラメータはパスと内容で、実行されると元のファイルを上書きし、通常は元に戻せない。 | Tools reference — Claude Code Docs |
| bash | 実行カテゴリのツールに対するコース内の例の名前。パラメータは任意のシェルコマンドを実行できるオープンエンドなコマンド文字列である。 | Configure the sandboxed Bash tool - Claude Code Docs |
| search_code | 検索カテゴリのツールに対するコース内の例の名前。典型的なパラメータにpatternやmax_resultsを含み、ファイル全体の内容ではなくマッチ場所のリストを返す。 | Introducing advanced tool use on the Claude Developer Platform | Anthropic Engineering |
| send_slack_message | 外部API呼び出しカテゴリのツールに対するコース内の例の名前。典型的なパラメータはチャネルとテキストで、呼び出すとネットワークを越えて自分の管理下にないサービスへ届く。 | The lethal trifecta for AI agents - Simon Willison's Weblog |
| command | 実行カテゴリのツール(bashなど)の中核パラメータフィールド。本質的にオープンエンドなシェルスクリプトであり、その能力はスキーマ構造では縛られない。 | Configure the sandboxed Bash tool - Claude Code Docs |
| max_results | 検索カテゴリのツールによくあるパラメータ。1回の呼び出しで返るマッチ数に上限を設け、結果が多すぎてコンテキストを吹き飛ばすのを防ぐ。 | Introducing advanced tool use on the Claude Developer Platform | Anthropic Engineering |
| 読み取りツールと書き込みツールの非対称性 | 読み取りと書き込みは呼び出しの形が似ているが、読み間違いは読み直せば済むのに対し、書き間違いは元に戻せないことが多い——リスクの結果が等価ではないということ。 | Tools reference — Claude Code Docs |
| retry_after | 外部APIツールが失敗時に返せるフィールドで、どれだけ待ってからリトライすべきかをモデルに伝える。「失敗情報は実行可能な手がかりを運ぶべき」の具体例。 | Tools - Model Context Protocol |
| total_matches | search_codeツールの戻り値に含まれるフィールドで、ヒットの総数を示す。結果が完全なのか、検索を絞るべきなのかをモデルが判断できるようにする。 | Introducing advanced tool use on the Claude Developer Platform | Anthropic Engineering |
| code_search_grep | コースの比較例で書き直された検索ツールの名前。内容で検索することをdescriptionで明示し、ファイル名で探す場合に使うツールとしてcode_search_globを名指しする。 | Writing effective tools for AI agents—using AI agents | Anthropic Engineering |
| code_search_glob | code_search_grepと対になるファイル名検索ツール。descriptionで代替ツールを名指しすると、モデルが誤ったツールを選ぶ確率が目に見えて下がることをコースが示すために使う。 | Writing effective tools for AI agents—using AI agents | Anthropic Engineering |
| enum | パラメータの値を列挙された選択肢のいずれかに絞り込むJSON Schemaのキーワード。単なる注記ではなく、不正な入力を拒否できる実際の制約である。 | Creating your first schema - JSON Schema |
| additionalProperties: false | input_schemaのトップレベルに置く設定で、入力オブジェクトがpropertiesで宣言したキーのみを持つよう要求し、モデルが発明した余分なフィールドが下流のコードに滑り込む隙を塞ぐ。 | Strict tool use — Claude API |
| strictモード | ツール定義にstrict: trueを設定すると、プラットフォームがモデルのサンプリングを制約し、生成される入力がinput_schemaに厳密に一致するようになる。不正なパラメータはそもそも生成されない。 | Strict tool use — Claude API |
| 名前空間 | ツール名にサービス名をプレフィックスとして付ける(github_、slack_など)実践。ツールが増えても、モデルがまずプレフィックスで無関係な選択肢を除外できるようになる。 | How to implement tool use - Claude Platform Docs |
| github_list_prs | 名前空間付きツール名のコース内の例。github_プレフィックスがそのツールをGitHubサービスに属するものとして示し、他サービスの同名操作との区別を助ける。 | How to implement tool use - Claude Platform Docs |
| slack_send_message | 名前空間付きツール名のもう1つのコース内の例。slack_プレフィックスがSlackサービスに属することを示し、他のメッセージ送信ツールと区別する。 | How to implement tool use - Claude Platform Docs |
| title | パラメータに読みやすい見出しを与えるためのJSON Schemaの記述的フィールド。descriptionと同様、説明するだけで強制力のある制約は課さない。 | Creating your first schema - JSON Schema |
| MCP | クライアントとツールサービスがどう相互作用するかを定めるプロトコル。コースは、モデルが自己修正できるようエラーメッセージを提示せよという明示的な要求を引用している。 | Tools - Model Context Protocol |
| 55Kトークン | Anthropicのエンジニアリングチームによる例の数字。58個のツールの定義がコンテキストのおよそ55Kトークンを占めうるという、ツール数がコンテキストのオーバーヘッドに与える実際の影響を示す。 | Introducing advanced tool use on the Claude Developer Platform | Anthropic Engineering |
| 134Kトークン | コースが引用するより極端な例。ツール数が増え続けると、ツール定義だけで消費されるコンテキストが非常に大きな規模まで膨らみうることを示す。 | Introducing advanced tool use on the Claude Developer Platform | Anthropic Engineering |
| file_type | descriptionが制約ではないことを示すためにコースが使う例のパラメータフィールド。descriptionだけではモデルが任意の値を埋めうるが、enumを置いて初めて実際に絞り込まれる。 | Creating your first schema - JSON Schema |
| 粒度 | ツールの責務をどれだけ細かく分けるか。コースは粗ければよいとも細かければよいとも言わず、まず機能で分割し、その後に名前空間とdescriptionで誤選択率を制御せよと強調する。 | Writing effective tools for AI agents—using AI agents | Anthropic Engineering |
| プロンプトインジェクション | エージェントがいずれ読むコンテンツ(issue、ウェブページ)に命令を隠し、そのテキストを従うべき新しい命令だとエージェントに誤認させる攻撃。 | The lethal trifecta for AI agents - Simon Willison's Weblog |
| allow | 3つの権限ルール階層の1つ。読み取り専用で副作用がなく、痕跡を残さず繰り返せる操作に適用され、人間の確認なしに自動承認される。 | Configure permissions - Claude Code Docs |
| ask | 3つの権限ルール階層の1つ。副作用はあるが可逆的で、爆発半径がローカルリポジトリ内にとどまる操作に適用され、実行前に人間の確認を要求する。 | Configure permissions - Claude Code Docs |
| deny | 3つの権限ルール階層の1つ。不可逆的な操作、または爆発半径がローカルを超える操作に適用されて実行を拒否し、askやallowより先に評価される。 | Configure permissions - Claude Code Docs |
| Read(./.env) | コース内の具体的な権限ルールの例。.envファイルを読む操作を直接denyリストに置き、シークレットの内容が会話コンテキストに入るのを防ぐ。 | Configure permissions - Claude Code Docs |
| Bash(git push:*) | コース内の権限ルールの例。Tool(specifier)という形式が、ホストがモデルに公開している正確なツール名と呼び出し範囲に直接対応することを示す。 | Configure permissions - Claude Code Docs |
| excessive agency | モデルの予期しない、曖昧な、または操作された出力によって、決して起こるべきでなかった損害を与えるアクションが引き起こされることを指すOWASPのリスクカテゴリ。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| Excessive functionality | excessive agencyの根本原因の1つ。1つのツールが多くの役割を兼ねる(受信トレイの読み取りとメール送信の両方ができるなど)ため、1回の誤った呼び出しの爆発半径が増幅される。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| Excessive permissions | excessive agencyの根本原因の1つ。ツール自体は1つのことをするが、付与されたアクセス権がタスクの実際の必要を超えている。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| Excessive autonomy | excessive agencyの根本原因の1つ。エージェントが途中の人間のチェックなしに多数のステップを連続実行するため、問題に気づいたときには不可逆的なアクションが既に実行されている可能性がある。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| 致命的な三要素 | プライベートデータへのアクセス、信頼できないコンテンツへの露出、外部と通信する能力の3つが同時に揃ったときに成立するリスクの組み合わせ。プロンプトインジェクションにデータを運び出す経路を与える。 | The lethal trifecta for AI agents - Simon Willison's Weblog |
| 人間の確認 | excessive agencyに対するOWASPの緩和策の1つ。高影響のアクションは実行される前に人間の承認を得なければならないという制御。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| サンドボックス | OSレベルの隔離メカニズム。モデルの判断とは独立にファイルシステムとネットワークの隔離を強制するため、プロンプトインジェクションが成功しても被害が封じ込められる。 | Configure the sandboxed Bash tool - Claude Code Docs |
| TOOLS | 各ツールのスキーマフィールドと実際の実行ハンドラーが1つのテーブルに同居する、コース内の例における単一のオブジェクト。両者が乖離するのを防ぐ。 | Define tools — Claude API |
| toolSchemas | TOOLSテーブルから導出され、モデルに送信されるtoolsパラメータのリスト。name/description/input_schemaのみを保持し、ハンドラーは含まない。 | Define tools — Claude API |
| toolHandlers | TOOLSテーブルから導出される実行時のルックアップテーブル。各ツール名を、実際にそれを実行する関数に対応づける。 | How tool use works — Claude API |
| github_repo_info | コースが実装する3つ目の例のツール。公開GitHubリポジトリの基本情報を照会し、データをプロジェクト外へ送信する唯一のツールである。 | How to implement tool use - Claude Platform Docs |
| SAFE_NAME | owner/repoパラメータのフォーマットを検証するためにコースのコードが使う正規表現。任意の文字列が外部ネットワークへ送られるのを防ぐ。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| MAX_TURNS | コースの実行ループに設定される反復回数の上限。モデルが際限なくツール呼び出しをリクエストしてループが終わらなくなるのを防ぐ。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| PROJECT_ROOT | コースのコードにおけるプロジェクトルートディレクトリの定数。read_fileとsearch_filesが共にこれを使ってパスの境界をチェックし、プロジェクト外のファイルへのアクセスを防ぐ。 | Configure the sandboxed Bash tool - Claude Code Docs |
| recentCalls | 直近数回のツール呼び出しのシグネチャを記録するコース内のコードの配列。「同じツールが同じ引数で3回連続」というパターンを検出するために使う。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| GITHUB_TOKEN | 環境変数から読み取るオプションの資格情報。GitHub API呼び出しのレート制限を緩和するために使い、なくても匿名で呼び出せる。 | Configure permissions - Claude Code Docs |
| 安全弁 | 実行ループに追加する一連のガードのコース内の総称。MAX_TURNS、繰り返し呼び出しの検出、ツール内部のパスとフォーマットのチェックが、それぞれ異なる暴走シナリオを止める。 | LLM06:2025 Excessive Agency - OWASP Gen AI Security Project |
| function walk(dir) | コースのコードが自前で実装するディレクトリ走査関数。grepにシェルアウトする代わりに、searchFilesの内部で再帰的にファイルを列挙するために使う。 | Configure the sandboxed Bash tool - Claude Code Docs |
| JSON Schema | ツールのinput_schemaを定義するために使う仕様。title/descriptionは意図を述べるだけで制約を加えず、enumやrequiredのようなキーワードが実際に値を検証する。 | Creating your first schema - JSON Schema |
| grammar-constrained sampling | strictモードを支える技術。プラットフォームがモデルのトークンサンプリングをスキーマ的に妥当な出力へ制約するため、生成されるツール入力は常にJSON Schemaに一致する。 | Strict tool use — Claude API |
| tool_choice | モデルのツール選択のしかたを制御するリクエスト内のオブジェクト。typeがautoのときにdisable_parallel_tool_use: trueを設定すると、モデルは1レスポンスにつき最大1つのツールしか呼び出さなくなる。 | Parallel tool use — Claude API |