Bible Network Crypto DeFi Onchain RWA AI Agent Stablecoin Chain SAFU CryptoTax DeFAI AGI Claude Me Claude Skill Claude Design Claude Cowork
独立メディア
いかなるプロジェクトとも無提携
Claudeスキルを学んで、すべてをもっとうまくやろう
claudeskill-me.com
最新
インストールしたSkillがトリガーされない理由:15,000文字の予算超過をClaudeCodeは警告なしで静かに処理する  ·  EffortとTemperatureはどちらも「出力を調整する」パラメータだが、何が違う?新モデルでは片方がすでに機能しない  ·  公式anthropics/skillsリポジトリレビュー:スター168kで内容の質は問題ないが、そもそも見つけられないという問題がある  ·  Subagentはより賢い小さなClaudeではない——それが解決するのは隔離の問題であり、能力の問題ではない  ·  SKILL.mdの適切な長さとは?公式が示す500行の目安と3層の段階的開示ロジック  ·  XMLタグの正しい使い方:プレーンテキストとの違いを示す3つの実例
用語解説 · Tools Integration

Agent Tool

Agentツール
Tools Integration advanced

30秒バージョン · 忙しい方へ
ClaudeCodeがSubagentを起動するために使う組み込みツール。v2.1.63でTaskから改名され、旧名は現在もエイリアスとして機能する。
詳しく読む +
01 · これは何?

Agentツールとは何ですか?通常のツール呼び出しとどう違いますか?

Agentツールは、Subagent——独自の隔離されたコンテキストウィンドウを持つ新しいClaudeインスタンス——を起動するための、ClaudeCodeに組み込まれた特殊なツールだ。通常のツール(ファイル読み込みやコマンド実行など)との違いは、通常のツール呼び出しは実行して終わり、結果が現在のコンテキストに直接返るのに対し、Agentツールの呼び出しは独自のシステムプロンプト、ツールリスト、権限設定を持つ完全に別の対話フローを起動し、完了後に結果の要約だけを呼び出し元に返す点にある。

このツールはもともとTaskという名前だったが、ClaudeCode v2.1.63で正式にAgentへと改名された。改名の理由は、元の名前が別の内部タスク追跡システム(Task*系機能)と混同されやすかったためだ。公式ドキュメントと現行バージョンは現在Agentという名称で統一されているが、既存の設定ファイルやフックスクリプトにあるTask(...)という記述は、エイリアスとして引き続き機能し、改名によって動作しなくなることはない。

02 · なぜ存在する?

Agentツールはなぜ存在するのですか?どんな問題を解決していますか?

標準的な対話は固定サイズのコンテキストウィンドウを持ち、長時間・複数ステップのタスクでは、探索的なファイル読み込みやコード検索から蓄積される出力が継続的にコンテキスト領域を消費し、本当に重要な情報を薄めてしまう。Agentツールは、こうしたノイズを隔離するための仕組みを提供する——大量の中間プロセスを生む作業をSubagentに委ね、独立したコンテキスト内で完了させ、メイン対話は精製された結果だけを受け取る。

これは、このツールがなぜ通常のツールとは別に設計され、専用の名前を与えられているのかも説明する。このツールが行うのは単純な情報取得ではなく、独立した実行ブランチ全体を起動することだからだ。そのブランチには独自の権限制御(例えば特定のSubagentを読み取り専用に制限する)や独自のモデル選択(探索的なタスクに安価なモデルを割り当てる)が必要であり、これらは通常のツールにはない能力だ。

03 · 意思決定にどう影響する?

Agentツールは実際にはどのように動作し、どんな制限がありますか?

メインAgentがAgentツールを呼び出す際は、起動するSubagentの種類(general-purposeやカスタムSubagentの名前など)とタスク記述テキストを指定する。起動されたSubagentは自分だけのクリーンなコンテキストを持ち、メイン対話の履歴を継承せず、タスク完了後に結果の要約を返す。

Subagentは自身もAgentツールを呼び出して、さらに次の層のSubagentを起動できるが、この入れ子能力には深さの制限がある——現在のデフォルトはメイン対話から数えて最大3層までだ。深さの上限に達すると、そのSubagentのツールリストからAgentツールが取り除かれ、それ以上の委任はできず自分自身で残りの作業を完了させて要約を返すしかなくなり、無限に下へと延びることはない。この深さの上限は環境変数で調整でき、1に設定すると入れ子機能を完全に無効化できる。また「fork」と呼ばれる特殊な形態もあり、これはクリーンなコンテキストから始まるのではなく、メイン対話の完全な履歴をそのまま継承するが、fork自体はAgentツールを呼び出してさらに次の層を生成することはできない。

04 · どうすればいい?

Agentツールの仕組みを理解することは、実際のClaudeCode利用にどう役立ちますか?

設定ファイルやsettings.json、カスタムフックスクリプトの中でTask(...)という記述を見かけても、それが古くなったものだと心配する必要はない——これは公式に保持されているエイリアスであり、Agent(...)と書くのと同じ効果を持ち、そのまま使い続けても問題は起きない。ただし、新しく書く設定については、今後ドキュメントと食い違わないよう、現行名称であるAgentを直接使うことが推奨される。

カスタムSubagentを設計したり、ツール呼び出しを傍受するフックスクリプトを書いたりする場合には、一点注意が必要だ。tool_nameフィールドをチェックする際に文字列"Task"とハードコードして比較しているスクリプトは、改名後に動作しなくなる可能性がある。実際に渡される値がすでに"Agent"に変わっているためだ。こうしたスクリプトは両方の名称をチェックするか、自前で文字列比較ロジックを組む代わりに、現行の公式な権限ルール構文(Agent(agent_type)など)を使ってどのSubagent種類を起動できるかを制限する方がよい。

出典:Create custom subagents - Claude Code DocsTask→Agent tool rename in v2.1.63 breaks hook payloads · Issue #29677 · anthropics/claude-code
具体例 +

GitHubのissue #29677には実際の事例が記録されている:ClaudeCode v2.1.63でTaskツールがAgentに改名された後、あるコミュニティ開発者が自作のPreToolUse/PostToolUseフックスクリプトが静かに壊れていることに気づいた。原因は、これらのスクリプトがtool_nameフィールドを文字列"Task"とハードコードして比較していたためで、改名後はフィールドの実際の値が"Agent"に変わり、スクリプトの照合ロジックが一致しなくなっていた。この事例がきっかけとなり、公式ドキュメントには「バージョン2.1.63でTaskツールはAgentに改名された。設定やエージェント定義内の既存のTask(...)参照は、引き続きエイリアスとして機能する」という説明が明記されるようになった。

よくある誤解 +
✕ 誤解 1
× 誤解:古い設定ファイル内のTask(...)という記述はすでに機能しなくなっており、すべて手動でAgent(...)に書き換える必要がある、実際は:AnthropicはTask(...)をAgent(...)と完全に同じ動作をするエイリアスとして明示的に保持しており、既存の設定を更新する必要はない。ただし、設定構文そのものではなく実際に渡される値をチェックする自作のフックスクリプトは、その値がすでに文字列"Agent"に変わっているため、照合ロジックの調整が必要になる場合がある
✕ 誤解 2
× 誤解:Agentツールは通常のツールと同じで、呼び出し後すぐに結果がメイン対話に返る、実際は:Agentツールは独自のコンテキスト、システムプロンプト、権限設定を持つ完全に別の対話フローを起動するものであり、完了するまでメイン対話はそのプロセスをまったく見ることができず、終了後に要約だけを受け取る
The Missing Link +
直接的な影響

利点は探索的なノイズを独立したコンテキストに隔離し、メイン対話をクリーンに保てること、またSubagentごとに異なるツール権限やモデルを設定できることだ。欠点はSubagentの起動がコンテキストをゼロから再構築することを意味し、背景情報への依存度が高くメイン対話との頻繁なやり取りが必要なタスクではむしろ遅延コストが増える点であり、すべてのタスクが委任に適しているわけではない。

質問する
10文字以上入力してください
関連トピック
Claude Code Remote Controlにライブストリーミングが追加:フォアグラウンドsubagentのすべてのツール呼び出しがスマホで見られる
Claude Me
バックグラウンドのsubagentが今もステータスのみを表示するのは、見落としではなく意図的なものだ——そもそもバックグラウンドに送ったのは、それによって邪魔されたくなかったからだ。
#claude-code#subagent
エージェント権限を安全に設定する方法:Claude CodeからMCPまでの実例解説
Claude Me
サンドボックスなしの権限規則は、迂回されるかもしれない一枚の扉に過ぎない。二層を重ねて初めて、本当の境界線になる。
#claude-code#permission-mode
Claude Codeの請求額はなぜ増えるのか:同じタスクでトークンコストを半分にする3つの習慣
Claude Me
トークン節約の要点は質問を減らすことではなく、毎回のラウンドでもう不要な古いデータを引きずらないことだ。
#claude-code#context-window
Claude Codeの--worktreeがGitLabのマージリクエストURLを直接受け取れるように、番号への変換は不要
Claude Me
「番号を調べて、手動でフォーマットを組み立てる」というステップが一つ減る——小さなことに聞こえるが、1日に複数のworktreeを別々のMRのために開く場合、積み重なると地味に面倒だった作業から解放される。
#claude-code