blog
AIブログ
Claude Codeのサブエージェントとは?作り方・設定・活用例をわかりやすく解説【2026年版】
文:クリスタルメソッド編集部 監修:河合 継(代表取締役)
関連記事Claude Code(クロードコード)とは?できること・料金・使い方を初心者にもやさしく解説【2026年版】 / Claude Code 使用量を完全制御する実装ガイド【2026年版】 / Claude Code ログイン方法・できない時の対処法|2026年版ガイド
Claude Codeのサブエージェントとは
Claude Codeのサブエージェントとは、メインのClaudeエージェントが特定の作業を任せるために起動する、独立した子エージェントのことです。作業を分担させることで、大きく複雑なタスクを並列または順番に処理できます。
Claude Codeを使い込むなかで、「サブエージェント」という概念に突き当たったことはないでしょうか。クリスタルメソッドでは、Claude Codeを日常的な開発実務に組み込んでいますが、サブエージェントを正しく理解してから生産性が大幅に向上しました。本記事では、Claude Codeのサブエージェントとは何か、どのような仕組みで動くのか、そして実際の開発現場でどう活かすかを、一次情報を交えながら網羅的に解説します。
サブエージェントを使うメリット
公式ドキュメントは、サブエージェントが役立つ点として次の5つを挙げています(Anthropic公式ドキュメント「カスタムサブエージェントの作成」、2026年10月10日確認)。
| メリット | 内容 |
|---|---|
| メインの会話を軽く保てる | 調査や実装で出る検索結果・ログ・ファイルの中身は、サブエージェント側のコンテキストに入る。メインの会話に戻るのは要約だけ |
| できることを制限できる | サブエージェントごとに使えるツールを絞れる。たとえば読み取り専用にできる |
| 設定を使い回せる | ユーザー単位(~/.claude/agents/)で作ったサブエージェントは、どのプロジェクトでも使える |
| 役割に特化させられる | レビュー役・調査役など、分野を絞ったシステムプロンプトを持たせられる |
| 費用を抑えられる | 軽い作業は、Haikuのような速くて安いモデルに回せる |
向いているのは、あとで見返さない検索結果やログが大量に出る「脇道の作業」です。同じ種類の作業を同じ指示で何度も任せるなら、自作のサブエージェントとして定義しておくと使い回せます。
サブエージェントの仕組み——オーケストレーターとの関係
Claude Codeのサブエージェントとは、メインのClaudeエージェント(オーケストレーター)が特定の作業を委任するために起動する、独立した子エージェントのことです。オーケストレーターがタスク全体を把握・分解し、個々の作業単位をサブエージェントに割り当てることで、大規模・複雑な開発タスクを並列または逐次的に処理できます。
Anthropicの公式ドキュメントでは、Claude Codeにおける「エージェント」を次のように位置づけています。Claude Codeは単なるコード補完ツールではなく、ファイル操作・コマンド実行・Web検索・外部ツール呼び出しなどを自律的に行えるエージェントランタイムとして設計されています。その上でサブエージェントは、メインエージェントの意思決定を受けて特定ツールや特定コンテキストのみにアクセスする「専門化された実行単位」として機能します。
オーケストレーターとサブエージェントの関係
タスク全体の把握・計画・委任・結果の統合
ファイル読み書き
コード生成
テスト実行
バグ検出
Web検索
ドキュメント参照
コードレビュー
リファクタリング
各サブエージェントは独立したコンテキストウィンドウを持ちます。これは非常に重要な特性で、メインエージェントのコンテキスト制限を超えるような大規模コードベースでも、分割して処理できることを意味します。クリスタルメソッドの実務でも、数万行規模のリポジトリを扱う際に、このコンテキスト分散の恩恵を直接感じています。
組み込みサブエージェント:Explore・Plan・general-purpose
Claude Codeには、自分で作らなくても最初から使える組み込みサブエージェントがあり、Claudeが必要に応じて自動で呼び出します。いずれも親の会話の権限を引き継ぎます(Anthropic公式ドキュメント「サブエージェント」2026年10月6日確認)。
| 名前 | 使えるツール | モデル | Claudeが使う場面 |
|---|---|---|---|
| Explore | 読み取り専用(Write・Editは不可) | メイン会話のモデル(Fable利用時は接続方法により異なる) | ファイル検索・コード検索など、変更せずにコードベースを調べるとき。徹底度は quick / medium / very thorough の3段階 |
| Plan | 読み取り専用(Write・Editは不可) | メイン会話から継承 | プランモードで、計画を提示する前にコードベースを調べるとき |
| general-purpose | サブエージェントで使える全ツール | CLAUDE_CODE_SUBAGENT_MODELの設定があればそれ、なければメイン会話のモデル | 調査と変更の両方が要る複雑なマルチステップ作業 |
| statusline-setup | — | Sonnet | /statuslineでステータスラインを設定するとき |
| claude-code-guide | — | Haiku | Claude Codeの機能について質問したとき |
ExploreとPlanは、高速かつ低コストに保つためCLAUDE.mdとgitステータスを読み込みません。CLAUDE.mdに書いたルールを調査時にも守らせたい場合は、カスタムサブエージェントを作るか、指示に明記します。組み込みのExploreとPlanを無効にしたい場合は、環境変数CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS=1を設定します(Claude Code v2.1.198以降)。
サブエージェントの作り方:最初の1体を作成する手順
サブエージェントの実体は、YAMLフロントマター付きのMarkdownファイルです。現行版では/agentsの対話ウィザードは使わず、Claudeに作成を頼むか、ファイルを直接書きます。
手順1:Claudeに作成を依頼する
Claude Codeで「どんなサブエージェントを、どこに保存するか」を伝えます。公式のチュートリアルでは、コードを読んで改善点を提案するレビュー役を例にしています。
~/.claude/agents/ に、ファイルを読んで可読性・性能・ベストプラクティスの改善点を提案する
code-improver という個人用サブエージェントを作って。読み取り専用で、モデルは Sonnet にして。
手順2:生成されたファイルを確認する
Claudeは name・description・tools・model とシステムプロンプトを含むファイルを作ります。依頼どおりになっているかを確認します。
---
name: code-improver
description: Scans files and suggests improvements for readability, performance, and best practices. Use after writing or modifying code.
tools: Read, Grep, Glob
model: sonnet
---
You are a code improvement specialist. For each issue you find, explain
the problem, show the current code, and provide an improved version.
| 項目 | 意味 |
|---|---|
name | サブエージェントの名前。呼び出し時に使う |
description | どんなときに使うかの説明。Claudeはこれを読んで自動で委譲するかを判断する |
tools | 使えるツールの制限。例では読み取り系(Read・Grep・Glob)だけに絞って読み取り専用にしている |
model | 使うモデル。sonnet・haiku など |
手順3:保存場所でスコープを決める
~/.claude/agents/に置くと、そのマシンの全プロジェクトで使えます。特定のプロジェクトだけで使う場合は、プロジェクトの.claude/agents/に置きます。チームで共有するなら、後者をリポジトリにコミットします。
手順4:呼び出して動作を確かめる
「code-improver エージェントでこのプロジェクトの改善点を提案して」のように依頼すると、Claudeが委譲し、画面にはサブエージェント名と短いタスク説明が表示されます。見つからない場合は、Claude Codeを再起動します(セッション開始前に~/.claude/agents/が存在しなかった場合に起こります)。
サブエージェントが持つツールと権限
サブエージェントに与えられるツールセットは、オーケストレーターが明示的に指定します。Claude Codeでサブエージェントが利用できる主要ツールは以下の通りです。
| ツール名 | 主な機能 | 典型的な用途 |
|---|---|---|
| Read/Write | ファイルの読み取り・作成・編集 | コード生成、設定ファイル更新 |
| Bash | シェルコマンドの実行 | テスト実行、ビルド、パッケージインストール |
| WebSearch | Web上の情報取得 | 最新ライブラリ仕様の確認、エラー調査 |
| WebFetch | 特定URLのコンテンツ取得 | APIドキュメント、仕様書の参照 |
| Agent(サブエージェント起動) | さらなる子エージェントの起動 | 階層的なタスク分解(後述) |
| MCP(外部ツール連携) | Model Context Protocol経由の外部連携 | データベース操作、外部API連携 |
重要なのは、サブエージェントに与えるツールを制限することでセキュリティと作業範囲を制御できる点です。例えば「このサブエージェントにはReadとWebSearchのみ許可し、ファイル書き込みは行わせない」という制御が可能です。クリスタルメソッドでは本番環境に近いリポジトリを扱う際、Writeツールのスコープを意図的に絞ることで、意図しないファイル変更を防いでいます。
サブエージェントのセキュリティと許可モデル
Claude Codeはデフォルトで、危険な操作(本番DBへの書き込み、外部ネットワークへの無制限アクセス等)の前に人間の承認(ヒューマン・イン・ザ・ループ)を求める設計になっています。サブエージェントはこの設計を継承しています。
具体的な制御方法として以下があります。
- 使えるツールを絞る:サブエージェントの定義ファイルで
tools(使えるツールの一覧)やdisallowedTools(使わせないツール)を指定します。省略すると、サブエージェントで使える全ツールを引き継ぎます。 - 権限モードを指定する:定義ファイルの
permissionModeで、そのサブエージェントの権限モードを決められます。Claude Codeの権限モードにはdefault(操作のたびに確認)・acceptEdits(ファイル編集は自動承認)・plan・auto・dontAsk・bypassPermissions(確認なし。隔離した環境向け)があります。 - MCPサーバーを個別に指定する:
mcpServersで、そのサブエージェントが使う外部ツール連携を指定できます。
クリスタルメソッドでは開発環境ではacceptEditsモードを使いつつ、本番環境に近いリポジトリへのアクセスが発生する作業では必ずdefaultモードに戻して人間が確認するルールを設けています。この使い分けが、自動化の効率と安全性を両立する上で重要です。

サブエージェントが起動される仕組み
Claude Codeにおけるサブエージェントの起動は、Agentツールの呼び出しによって行われます。オーケストレーターが内部的に「このサブタスクは独立した実行環境で処理すべき」と判断すると、Agentツールを通じてサブエージェントを生成します。
サブエージェント起動の内部フロー
例:「このリポジトリ全体のテストを通しつつ、READMEを更新して」
「テスト実行」「README更新」を独立したサブタスクとして認識
各サブエージェントは独立したコンテキストウィンドウで稼働開始
並列実行が可能な場合は同時進行
ユーザーへ統一された形でフィードバック
並列実行と逐次実行の使い分け
サブエージェントは、タスク間に依存関係がない場合は並列実行、依存関係がある場合は逐次実行されます。例えば「全モジュールのユニットテスト」は各モジュールが独立しているため並列実行が有効です。一方、「コードを生成してからE2Eテストを走らせる」という手順は、前工程の完了を待つ逐次実行になります。
並列実行によりコスト(API呼び出し料金)と時間の両方が最適化されますが、並列度が高すぎるとAPIレート制限に当たる場合があります。クリスタルメソッドでは大規模リポジトリ(ファイル数200以上)を一気に処理する際、並列数が想定を超えてレート制限エラーが発生した経験があります。そのため、CLAUDE.mdに並列サブエージェント数の目安を記載し、オーケストレーターへの暗黙のガイドラインとして活用しています。
コンテキストの継承と独立性
サブエージェントを理解する上で最も重要な概念のひとつが、コンテキストの独立性です。各サブエージェントは起動時に渡されたプロンプトと情報のみをコンテキストとして持ち、オーケストレーターの全会話履歴には直接アクセスできません。
この仕様には以下のようなトレードオフがあります。
- メリット:コンテキストウィンドウの制限を超えた大規模処理が可能。各エージェントが軽量なコンテキストで動作するため、出力精度が上がりやすい。
- デメリット:オーケストレーターが適切な情報を明示的にサブエージェントへ渡す必要がある。情報の渡し漏れが発生すると、サブエージェントが誤った前提で動作するリスクがある。
クリスタルメソッドでの対処法として、CLAUDE.mdにプロジェクト全体の規約・アーキテクチャ概要・よく使うコマンドを記載しています。CLAUDE.mdはオーケストレーターとサブエージェントの双方が自動的に参照する(組み込みのExploreとPlanを除く)ため、「各サブエージェントが共通理解を持って動ける土台」として機能します。これはClaude Codeを実運用する上で最も効果的な工夫のひとつです。
サブエージェントの階層構造(マルチエージェント)
Claude Codeのサブエージェントは、さらにその配下でサブエージェントを起動できます(既定では、メインの会話の下に3階層まで。環境変数 CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH で変更でき、1にすると入れ子を無効にできます)。つまりサブエージェント自身がオーケストレーターとして機能する、階層的なマルチエージェント構成が可能です。
| 階層 | 役割 | 具体例 |
|---|---|---|
| Level 0(ユーザー) | 指示を出す人間 | 「このサービスに認証機能を追加して」 |
| Level 1(オーケストレーター) | 全体計画・タスク分解 | バックエンド担当・フロントエンド担当・テスト担当に分割 |
| Level 2(サブエージェント) | 中間オーケストレーター兼実行 | バックエンド担当がさらにDB設計・API実装・バリデーションに分割 |
| Level 3(孫エージェント) | 個別タスクの実行 | 特定のファイル1つを編集・特定のテストケースを記述 |
ただし、階層を深くしすぎるとコスト・処理時間・デバッグ難易度が急激に上昇します。クリスタルメソッドの経験では、実用上は2〜3階層が上限です。それ以上の階層は、エラーが発生した際の原因追跡が非常に困難になり、かえって非効率です。
Claude Code・AIエージェントの業務導入をご検討の方は、自社での開発実例を公開しているクリスタルメソッドの無料相談をご利用ください。
メインの会話・Skills・Agent Teamsとの使い分け
サブエージェントは万能ではありません。公式ドキュメントは、次のように使い分けを案内しています。
| 手段 | 向いている場面 |
|---|---|
| メインの会話 | 何度もやり取りして詰める作業。計画・実装・テストのように複数の段階で同じ文脈を使う作業。すぐ終わる小さな変更。待ち時間を短くしたいとき(サブエージェントは白紙の状態から始まるため、文脈を集める時間がかかる) |
| サブエージェント | メインの会話には要らない長い出力が出る作業。使えるツールや権限を絞りたい作業。単独で完結し、要約を返せば済む作業 |
| Skills | 再利用したい手順や指示を、メインの会話の文脈の中で動かしたいとき |
| Agent Teams | Claudeが起動して監督する、連携する複数セッションのチームで進めたいとき(サブエージェントは1つのセッションの中で動く) |
/btw | いまの会話にすでにある内容について、ちょっと質問したいとき(会話全体が見えるがツールは使えず、答えは履歴に残らない) |
SkillsについてはClaude Code Skillsの解説、Agent TeamsについてはClaude CodeのAgent(Subagent)とAgent Teamsの解説で詳しく説明しています。
知っておきたい上限
- 同時に動かせる数:既定では、1つのセッションで20個のサブエージェントが動いていると、それ以上の起動は失敗します(環境変数
CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTSで変更可。Claude Code v2.1.217以降)。 - 入れ子の深さ:既定では、メインの会話の下に3階層までです(
CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTHで変更可)。 - 説明文の合計:自作サブエージェントの description の合計が15,000トークンを超えると、起動時に警告が出ます。説明は短くし、詳細はシステムプロンプトに書きます。
- 利用量:サブエージェントが送るリクエストも、メインの会話と同じ利用上限に数えられます。
オーケストレーターモードとサブエージェントモードの違い
Claude Codeを呼び出す際、どのモードで動作しているかを意識することが重要です。
- 通常の対話モード:ユーザーとClaudeが1対1でやりとり。ツールを使いながらタスクを完結させる基本的な動作。
- メインの会話がオーケストレーターになる場合:Claudeが必要に応じてサブエージェントを起動する。複雑な複合タスクに向く。
- サブエージェントとして起動される場合:オーケストレーターから受け取ったプロンプトとツールセットのみで動作する専門実行単位。
claude --agent 名前 のように起動時に指定すると(または設定の agent で指定すると)、メインの会話そのものを特定のサブエージェント定義で動かせます。Claudeが自動でサブエージェントに任せるかどうかは、依頼の内容、各サブエージェントの description、その時点の文脈から判断されます。
サブエージェントが使うモデルは、①呼び出しごとの指定、②定義ファイルの model(inherit はメインの会話と同じ)、③環境変数 CLAUDE_CODE_SUBAGENT_MODEL、④メインの会話のモデル、の順で決まります。model には sonnet・opus・haiku・fable の別名か、モデルIDを書けます。
サブエージェントの実践的な活用パターン
パターン1:大規模リファクタリング
50個のコンポーネントを一括でリファクタリングする場合、1つのエージェントで全コンポーネントを処理しようとするとコンテキスト限界に達します。サブエージェントを活用すると、各コンポーネントを独立したサブエージェントに割り当て、並列処理できます。たとえばレガシーなReactクラスコンポーネント群を関数コンポーネントへ一括移行する際にこのパターンを使うと、手動作業に比べて時間を大きく短縮できます。
パターン2:テスト生成と実行の分離
「コード生成サブエージェント」と「テスト生成サブエージェント」を分けることで、生成物の品質検証を構造的に組み込むことができます。生成エージェントと検証エージェントを分離すると、同じコンテキストを共有するバイアスが減り、テストがより独立した視点で書かれる傾向があります。
パターン3:調査・実装・レビューのパイプライン
最新ライブラリ仕様をWeb検索・整理
調査結果をもとにコードを実装・テスト実行
コーディング規約・セキュリティ観点でレビュー
このパターンはとくに新規ライブラリ導入時や、セキュリティ要件が厳しいコード変更時に有効です。各エージェントが専門的な役割に集中することで、出力の質が向上します。
パターン4:ドキュメント生成の並列化
複数モジュールのAPIドキュメントを同時生成する場合、各モジュールを担当するサブエージェントを並列起動します。クリスタルメソッドではOpenAPI仕様書の自動生成にこのパターンを適用し、20モジュール分のドキュメントを数分で生成した実績があります。
サブエージェントを効果的に使うための設定と工夫

CLAUDE.mdを活用した共通コンテキストの設計
CLAUDE.mdは、カスタムサブエージェントやgeneral-purposeでは自動的に読み込まれる設定ファイルです(組み込みのExploreとPlanは読み込みません。カスタムサブエージェントでも、フロントマターでomitClaudeMd: trueを設定すると読み込まなくなります)。以下の情報を記載することで、全サブエージェントが一貫した前提のもとで動作します。
- プロジェクトのディレクトリ構造とその意味
- コーディング規約(命名規則、インポート順、テストの書き方など)
- よく使うコマンド(テスト実行コマンド、ビルドコマンド、リントコマンド)
- 禁止事項(直接DBを触らない、特定ファイルは編集しない等)
- 依存ライブラリの主要なバージョン情報
クリスタルメソッドのCLAUDE.mdには「サブエージェントは必ずテストを書いてから実装を提出すること」という一文を入れています。これが全サブエージェントへの暗黙のルールとして機能し、テスト漏れが大幅に減りました。
プロンプトで明示する情報の粒度
サブエージェントへの委任プロンプトは、「何をやるか」だけでなく「何をやらないか」も明記すると効果的です。例えば「srcディレクトリ内のuser関連ファイルのみを対象とし、それ以外のファイルには触れないこと」と明示することで、意図しないファイル変更を防げます。
コストとトークン消費の管理
サブエージェントを多用するとAPIトークン消費量が急増します。特に並列サブエージェント数が増えると、並列で動かす数に応じてトークンの消費が増える場合があります。クリスタルメソッドでの管理方法として以下を実践しています。
- 定期的な利用状況の確認(
/usageコマンドで、現在のセッションのトークン使用量やプランの利用状況を確認) - 巨大ファイルを直接渡さず、必要な部分のみをサブエージェントに渡す
- 試験的なタスクはまず小規模のサブセットで実行してから本番適用する
- モデルの使い分け(複雑な推論が不要なサブタスクには、定義ファイルの
modelでhaikuなどの軽量なモデルを指定)
サブエージェントが本当に効く使い方(一次情報)
監修者・河合継はClaude Codeを3.5の時代から1年以上、実務で運用してきた。サブエージェントは便利だが、効く場面を外すと管理だけ増える。実感を補足する。
- いちばん効くのは「調べ物の切り出し」。どこに何があるかを本体で延々と読ませると、その結果が本体の文脈に残り続けて後工程まで重くなる。調査をサブエージェントに任せ、結論だけ受け取ると、本体が軽いまま保てた。
- 独立して進む作業に向く。互いに依存する処理を分けて回すと、後で束ねる手間が利点を上回る。前後関係のない作業を切り出すのが、いちばん素直に効いた。
- 投げっぱなしにせず、戻ってきた結果は確認する。文脈が分かれているぶん、本体の前提と食い違うこともある。受け取った結論をそのまま使わず、一度突き合わせると事故が減った。
サブエージェント利用時のよくある問題と対処法
| 問題 | 原因 | 対処法 |
|---|---|---|
| サブエージェントが関係ないファイルを編集する | 対象スコープの指示が曖昧 | 「src/user/配下のみ対象」と明示する |
| APIレート制限エラーが発生する | 並列サブエージェント数が多すぎる | 並列数を減らす、またはCLAUDE.mdに制限を記載 |
| サブエージェント間で矛盾する変更が生じる | 担当ファイルの境界が不明確 | 各サブエージェントの担当ファイルを排他的に指定 |
| サブエージェントの出力品質がばらつく | 共通ルールが各エージェントに伝わっていない | CLAUDE.mdに規約を集約する |
| コスト予算を超過する | トークン消費の見積もり不足 | 小規模テストを先行させてからスケールアップ |
| エラーの原因がどのサブエージェントか不明 | 実行ログの粒度が粗い | 各サブタスクに識別名を付けてログを整理する |
1年以上の実運用で見えたサブエージェント運用の落とし穴
クリスタルメソッドでは代表の河合継が1年以上、日常業務でClaude Codeとそのサブエージェント機能を使い続けています。ここでは一般的な解説記事には出てこない、実運用だからこそ見えた注意点を紹介します。
1つ目は「モデル指定漏れによるコスト増」です。サブエージェントを多数呼び出す構成では、呼び出し時にモデルを明示しないと、セッションの既定モデル(高性能・高コストなモデル)がそのまま各サブエージェントに引き継がれてしまいます。単純な反復作業や機械的な処理を大量のサブエージェントに任せる場合ほど、この「無自覚な高コストモデルの継承」が積み重なって想定外の費用増につながりやすいという教訓を得ました。対策として、用途に応じて呼び出し側で毎回モデルを明示的に指定し、判断が必要な工程だけ高性能モデルに絞る運用にしています。
2つ目は「ルールは現場の失敗から言語化する」という運用です。クリスタルメソッドではサブエージェントを含むClaude Code運用ルールを一つのドキュメントに蓄積しており、実際に起きた問題(意図しない編集、コンテキストの肥大化、同じ確認漏れの再発など)が起きるたびに、再発防止のルールとして明文化・追記してきました。汎用的な注意点の箇条書きではなく、自社での失敗を都度ルール化して積み上げてきた点が特徴です。
3つ目は「ファイル編集の自動バックアップ」です。サブエージェントやClaude Code本体がファイルを編集する直前に自動でバックアップを取得する仕組み(PreToolUseフックを利用)を導入し、意図しない上書き・デグレードが起きても復元できる状態を用意しています。権限モードやCLAUDE.mdでのルール明文化だけでなく、「万一の失敗を前提にした復旧手段」まで持っておくことが、日常的にサブエージェントを多用する運用では重要だと考えています。
よくある質問
Q. サブエージェントとは何ですか?
A. メインのClaudeエージェント(オーケストレーター)が特定の作業を委任するために起動する、独立した子エージェントです。オーケストレーターがタスク全体を分解し、個々の作業単位をサブエージェントに割り当てることで、大規模・複雑な開発タスクを並列または逐次的に処理できます。
Q. サブエージェントはどうやって起動されますか?
A. Agentツールの呼び出しによって行われます。オーケストレーターが「このサブタスクは独立した実行環境で処理すべき」と判断すると、Agentツールを通じてサブエージェントを生成します。
Q. サブエージェントに与えられるツールにはどんなものがありますか?
A. Read/Write(ファイル読み書き)、Bash(シェルコマンド実行)、WebSearch(Web情報取得)、WebFetch(特定URLのコンテンツ取得)、Agent(さらなる子エージェントの起動)、MCP(外部ツール連携)などがあり、オーケストレーターが明示的に指定します。
Q. 並列実行と逐次実行はどう使い分けられますか?
A. タスク間に依存関係がない場合は並列実行、依存関係がある場合は逐次実行されます。ただし並列度が高すぎるとAPIレート制限に当たる場合があります。
Q. サブエージェントはメインエージェントの会話履歴を見られますか?
A. 見られません。各サブエージェントは起動時に渡されたプロンプトと情報のみをコンテキストとして持ち、オーケストレーターの全会話履歴には直接アクセスできないという「コンテキストの独立性」があります。
Q. サブエージェントは何階層まで起動できますか?
A. サブエージェント自身がオーケストレーターとして機能し、さらに配下でサブエージェントを起動できる階層構造が可能です。ただし階層を深くしすぎるとコスト・処理時間・デバッグ難易度が急激に上昇します。既定ではメインの会話の下に3階層までで、環境変数 CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH で変更できます。
Q. サブエージェントの権限はどう制御できますか?
A. サブエージェントの定義ファイルの tools・disallowedTools で使えるツールを絞り、permissionMode で権限モードを指定できます。mcpServers で、使うMCPサーバーを個別に指定することもできます。
Q. サブエージェント利用時によくある問題は何ですか?
A. 対象スコープの指示が曖昧で関係ないファイルを編集してしまう、並列数が多すぎてAPIレート制限エラーが起きる、担当ファイルの境界が不明確で矛盾する変更が生じる、共通ルールが伝わらず出力品質がばらつく、トークン消費の見積もり不足でコストを超過する、実行ログの粒度が粗くエラー原因のサブエージェントを特定しにくい、といった問題とそれぞれの対処法が挙げられています。
まとめ
Claude Codeのサブエージェントは、複雑な開発タスクを分解・並列化し、コンテキスト制限を超えた大規模処理を可能にする中核的な仕組みです。オーケストレーターがAgentツールを通じて子エージェントを起動し、それぞれが独立したコンテキストで専門的な役割を担う。この構造を理解することが、Claude Codeを単なる補完ツールではなく、真のエンジニアリングパートナーとして活用する第一歩です。
実践上のポイントとして改めて整理します。
- CLAUDE.mdにプロジェクト共通ルールを集約し、全サブエージェントの一貫性を担保する
- 各サブエージェントの担当スコープ(ファイル範囲・ツール制限)を明示的に指定する
- 並列数の上限を意識し、APIレート制限・コストをモニタリングする
- セキュリティ要件に応じてパーミッションモードを使い分ける
- 階層の深さは実用上2〜3段階に留め、複雑化しすぎない設計を心がける
クリスタルメソッドでもサブエージェントの活用度合いを高めるにつれ、単純な作業時間の短縮にとどまらず、「人間が検討すべき本質的な問題」に集中できる時間が増えました。サブエージェントの仕組みを正しく把握することが、Claude Codeを最大限に引き出す鍵です。
関連記事
- Claude Codeとは(全体像)
- Claude CodeのAgent(Subagent)とAgent Teams
- Claude Code Skillsとは?作り方と一覧
- Claude Codeのフック(Hooks)
- Claude Agent SDK
- Claude CodeのAPI料金
- Claude CodeとCodexの比較
- Claude CodeとCursorの比較
監修
河合 継(クリスタルメソッド株式会社 代表取締役)
AI・ディープラーニングに関する特許16件の発明者。過去、国立がん研究センターとの共同研究や、テレビ番組でのAI解説実績を持つAI研究者として、AIの研究開発を主導している。
運営会社について | 編集方針
Claude Code・AIエージェントの業務活用をご検討の方へ
クリスタルメソッドは、Claude Codeを実務投入している開発会社として、AIエージェント・社員AIの導入と開発効率化を支援しています。自社サイトの表示速度をAI社員(Claude Code)で12.89秒→2.03秒に短縮した実例も事例記事として公開しています。「自社の開発・業務にAIをどう組み込むか」といったご相談を承っています。
- 無料相談・お問い合わせ:ご相談はこちら
Read next
あわせて読みたい
-
Claude Code(クロードコード)とは?できること・料金・使い方を初心者にもやさしく解説【2026年版】
ターミナル上で動作するAIエージェント型コーディングツールのイメージ Claude Code(クロードコード)とは、Anthropic社が提供するAIツールです...
-
Claude Code 使用量を完全制御する実装ガイド【2026年版】
最終更新:2026年7月29日 よくある質問:Claudeの使用量・上限について Claudeの使用量上限とは? Claude(Claude.aiのチャット、お...
-
Claude Code ログイン方法・できない時の対処法|2026年版ガイド
Claude(クロード) Codeを使おうとしたら「ログインできない」「認証エラーが出る」「コマンドが通らない」――そんな状況で作業が止まってしまった経験はあり...
