マギのクロゼミ
応用 #Claude#SubAgent 公開 2026.04.29

Claude SubAgent とは何か。コンテキストを汚さない別働隊

SubAgent は、Claude Code に組み込まれた「別働隊」です。メイン会話のコンテキストを汚さずに、独立した別の Claude を走らせ、結果のサマリだけを受け取れる——これがコードベース調査や大規模タスクで効きます。Skills や MCP とはまったく違う角度の拡張機構を、いちから整理します。

はじめに

Step 3 最後のテーマ、SubAgent(サブエージェント) に入ります。Skills、Plugins、MCP、Hooks と続けてきた拡張機構の 最後のひと品 です。

SubAgent はひと言でいうと、「メイン会話とは別のコンテキストで、独立した Claude を走らせるしくみ」 です。Web 制作で例えるなら、

  • メイン Claude = ディレクター(あなたと直接話している人)
  • SubAgent = ディレクターが「これを調べてきて」と部下に振った人

という関係になります。部下は独立して動き、結果のサマリだけをディレクターに戻してくる——その振る舞いが、Claude Code の中で実現されています。

本記事では、

  1. SubAgent とは何か(仕組み)
  2. なぜ必要だったか(解決している問題)
  3. 何が嬉しいか(3つの利点)
  4. 内蔵 SubAgent の代表例
  5. 起動の仕方(明示・自動)
  6. 「使うべきとき/使わないべきとき」
  7. 自作 SubAgent への入り口
  8. Hooks との関係

を順に整理します。具体的な活用例と自作の最小構成は、次の記事「Claude SubAgent の活用例」で扱います。

SubAgent の正体

SubAgent の動きをひと目で説明すると、

[あなた]
   ↓ 「このコードベースを調査して」
[メイン Claude]
   ↓ SubAgent を起動
[SubAgent]            ← 独立したコンテキストで、別の Claude が走る
   ↓ 大量のファイル読み込み・調査
   ↓ 終わったらサマリだけ返す
[メイン Claude]       ← サマリだけを受け取る(生のファイル内容は受け取らない)
   ↓ 「○○が分かりました」と要約してあなたに返す
[あなた]

という流れです。SubAgent が読んだ膨大なファイル内容は、メイン Claude には流れ込みません。流れ込むのは 「結果のサマリ」だけ。これが SubAgent の核心です。

なぜ SubAgent が必要だったか

Claude Code を本格的に使うと、ある時点で 「コンテキストの汚染」 という問題に必ずぶつかります。

たとえば、こんなケースを想像してください。

  • LP の改修案件で、Claude に「ヘッダーの再設計をして」と頼んだ
  • まずコードベース全体を調べないと判断できないので、Claude が 30 ファイルを Read する
  • 30 ファイル分の中身がメイン会話のコンテキストにすべて詰め込まれる
  • そのあと「では、ヘッダーをこう直そう」となったときには、すでに コンテキストが半分埋まっている
  • 続く実装のやり取りで、メイン Claude が 過去の参照ファイル全部を引きずったまま 動くので、判断が鈍くなる

これが「コンテキストの汚染」です。読まなくてもいい情報まで全部覚えている状態 で会話を続けると、Claude の判断は地味に劣化していきます。

SubAgent は、この問題を 「重い調査は別 Claude に投げて、要約だけ受け取る」 という発想で解いています。30 ファイル読んだのは SubAgent、メイン Claude が受け取るのは 「ヘッダーは Header.astro と nav.css の2ファイルに分かれていて、ナビ項目は配列定義から動的生成されている」 といった要約だけ。コンテキストはほとんど汚れません。

CSS で例えると、長くなりすぎた1つの style.css を @import で別ファイルに分割する のと似ています。本体は軽く保ちつつ、必要なときだけ重い処理を別ファイルに切り出す——同じ思想です。

SubAgent の3つの利点

整理すると、SubAgent には3つのはっきりした利点があります。

利点効くシーン
コンテキストを汚さない大量のファイルを読む調査タスク
専門特化させられる特定領域に最適化したエージェント(コードレビュー専用、ドキュメント執筆専用)
並列で動かせる複数の調査を同時に進めて結果を集める

特に 並列実行 は強力です。「ファイル A の調査」と「ファイル B の調査」を同時に始めて、両方の結果を待つ——という動きが、メイン会話を止めずにできます。Web ページで「画像を順番に1枚ずつではなく、全部並行して読み込む」のと似た効率の出し方です。

内蔵 SubAgent の代表例

Claude Code には 最初から組み込まれている SubAgent があります。代表的なものは(記事公開時点)、

SubAgent担当使われるシーン
Exploreコードベースを素早く調査するファイルパターン検索、キーワード検索、構造把握
Plan実装計画を設計する大きなタスクの設計フェーズ、トレードオフの検討
general-purpose自由形式の長尺タスク「複雑な調査と多段階タスク」の汎用枠

それぞれが 異なる得意領域 を持っていて、メイン Claude が「この依頼にはどの SubAgent が向いているか」を判断して呼び出します。

Explore:コードベース調査の専門家

「このコードベースで認証はどう実装されている?」と聞いたとき、メイン Claude が直接調べると 30 ファイル読み込みます。代わりに Explore に投げると、

  • ファイルパターン検索(src/auth/**/*.ts
  • キーワード検索(signInsession
  • 該当箇所の周辺だけ読み込み

を Explore が独立コンテキストで実行し、「認証は src/auth/index.ts に集約されており、JWT を使用、有効期限は7日」 といった要約だけ返してきます。

Plan:実装計画の設計

「ヘッダーを刷新したい」のような大きなタスクのとき、いきなり実装に入る前に Plan に「どう進めるべきか」を設計してもらえます。Plan は、

  • 影響範囲の調査
  • 実装順序の検討
  • トレードオフの整理
  • 最後に推奨アプローチの提示

までをまとめて担当します。「キーボードショートカット」で紹介した Plan モード とは別物で、こちらは SubAgent としての Plan。混同しやすいので注意してください。

general-purpose:何でも屋

ExploreでもPlanでも収まらない、自由形式で複数ステップのタスクを丸ごと任せたいときに使います。複数ステップが絡む調査、長文の執筆、複雑なフィルタリングなど、「何ができるか分からないけど、とにかく重い」 タスクの受け皿になります。

起動の仕方は2種類

SubAgent も Skills と同じく、起動の仕方が2種類あります。

方法 A:自然言語で頼む(自動起動)

メイン Claude が「これは SubAgent を使ったほうがいい」と判断したら、自分で勝手に SubAgent を起動 します。明示的に「SubAgent を使って」と言わなくても動きます。

> このコードベースで認証まわりの実装を調べて
(メイン Claude が Explore を起動 → 結果を要約して返す)

方法 B:明示的に指示する

Explore を使って」「SubAgent に並列で2つ走らせて」と明示すれば、確実にその通りに動きます。

> Explore を使って、auth/ と payments/ の実装を並列で調べて

「自動だと使ってくれないけど、自分は使ってほしい」というときに、明示指示が効きます。

SubAgent を「使うべきとき/使わないべきとき」

これが最重要です。SubAgent は強力ですが、いつでも使うべき道具ではありません。判断軸を整理します。

使うべきとき

シーン理由
大量のファイルを読む調査コンテキストが汚れる前に Explore に逃がす
複雑な実装計画の検討Plan に専門特化させて密度の高い設計を出してもらう
複数の調査を同時に進めたい並列起動で時間短縮
メイン会話を綺麗に保ちたい長尺タスク重い処理だけ general-purpose に逃がす

使わないべきとき

シーン理由
既に対象ファイルが分かっているメインで Read するほうが速い・安い
小さな修正タスクSubAgent 起動のオーバーヘッドのほうが大きい
メイン会話の文脈を共有してほしい仕事SubAgent は文脈を引き継がない(独立コンテキストなので)
対話的に進めたいタスクSubAgent は1ショットで結果を返す。途中介入できない

特に 「ファイルが分かっているなら直接 Read」 は重要です。「README を要約して」と頼むのに SubAgent を起動するのは過剰で、メインで Read するほうが3倍速くて3倍安いです。SubAgent は 「対象が広すぎる/重すぎる」 ときの選択肢、と覚えておいてください。

自作 SubAgent への入り口

内蔵の3つに加えて、自分の用途に特化した SubAgent を自作 することもできます。最小構成は、

~/.claude/agents/                   ← 自作 SubAgent を置くフォルダ(ユーザー全体用)
└── code-reviewer.md                ← SubAgent 1つ = Markdown ファイル1枚

中身は frontmatter + 本文(プロンプト)の2階建て。

---
name: code-reviewer
description: コードレビューに特化したサブエージェント。実装ファイルを渡されたとき、可読性・命名・型・エラーハンドリング・テスト容易性の観点でフィードバックを返す
tools: Read, Grep, Glob
---

あなたはコードレビューに特化した Claude です。
渡されたファイルに対して、以下の5つの観点でフィードバックを返してください。

1. 可読性(命名・分割・コメント)
2. 型の妥当性
3. エラーハンドリング
4. テスト容易性
5. パフォーマンス上の懸念

指摘は具体的に、行番号とともに返してください。

Skills の自作と非常に似ています。違いは、

違いSkillsSubAgent
配置場所~/.claude/skills/<name>/SKILL.md~/.claude/agents/<name>.md
動きメイン Claude のコンテキスト内で参照される独立した Claude として走る
ツール制限なしtools で使えるツールを絞れる

最大の違いは「独立コンテキスト」と「ツール制限」。SubAgent は文字通り「別の Claude を立ち上げる」ので、何ができるかをきっちり絞れます。詳しい自作手順は次の記事「活用例編」で扱います。

Hooks との関係

ここで前章の Hooks と SubAgent の関係を整理しておきます。Hooks には SubagentStop という、SubAgent が終了したときに発火するイベントがあります。

{
  "hooks": {
    "SubagentStop": [
      {
        "hooks": [
          { "type": "command", "command": "echo \"$(date) subagent finished\" >> ~/.claude/agents.log" }
        ]
      }
    ]
  }
}

「SubAgent を起動したかログを取りたい」「終わったら通知を出したい」というときに使えます。Hooks と SubAgent は 干渉せず独立して動く ので、SubAgent の挙動を Hooks で監視する、という組み合わせが成立します。

SubAgent を使い始めるときの順序

最後に、SubAgent との付き合い方の順序を提案しておきます。

  1. まずは Explore を意識して使う:コードベース調査で「Explore でやって」と頼んでみる
  2. 次に Plan を試す:大きなタスクの前に「Plan で設計を出して」と頼む
  3. 慣れたら並列起動:「Explore を2つ並列で、A と B を同時に調べて」と頼む
  4. 最後に自作:自分の用途に特化したエージェントを書く

無理に最初から自作に入る必要はありません。内蔵の3つを使い倒すだけでも、Claude Code の使い心地は明確に変わります

まとめ

SubAgent の要点を整理します。

  1. SubAgent はメイン会話とは別のコンテキストで走る独立した Claude
  2. 解決する問題はコンテキストの汚染:重い調査をメインに引き込まない
  3. 3つの利点:コンテキスト保護/専門特化/並列実行
  4. 内蔵3つ:Explore(調査)/Plan(設計)/general-purpose(汎用)
  5. 起動は自動と明示の2種類:自然言語で勝手に起動/「Explore で」と明示も可
  6. 使うべきとき:大量ファイル調査/複雑な計画/並列/メインを汚したくない長尺
  7. 使わないべきとき:対象が分かっている/小さい修正/対話的に進めたいタスク
  8. 自作は ~/.claude/agents/<name>.md:Skills より強力(独立コンテキスト+ツール制限)
  9. Hooks の SubagentStop でログや通知に連携できる
  10. 慣れる順序:Explore → Plan → 並列 → 自作

これで Step 3「機能を使いこなす」の最後のひと品の 概念編 が読み終わりました。次の記事「Claude SubAgent の活用例」では、Explore / Plan / general-purpose の使い分け、自作 SubAgent の最小構成、そしてマギのクロゼミの運用での使いどころを、具体的な依頼文とセットで紹介します。続けて読むと、SubAgent が「なんとなく便利そうな機能」から「毎日の依頼の出し方が変わる転機」になる体験が得られます。

WordPressを実際に動かしてきたサーバー:ロリポップ

Claude Code でWordPressサイトを組み立てるとき、最初に置く先として無理のないレンタルサーバー。月数百円から始められ、WordPressの自動インストールにも対応しています。設定で詰まりがちな初期段階の時間をかなり減らせます。

🌱
ロリポップ!レンタルサーバー
GMOペパボ運営 / 月額¥220〜
ロリポップを見る →
Roadmap 学習マップでこの記事の位置を見る
Step 1 →