Claude Codeのサブエージェント(subagents)実践|使い方・自作・使いどころを実例で解説

Claude Code

Claude Code を使い込んでいくと、「1つの会話に色んな作業を詰め込みすぎて、だんだん精度が落ちる・コンテキストがすぐ埋まる」という壁にぶつかります。調べ物・実装・レビューを全部メインの会話でやると、文脈が散らかってトークンも一気に消費する——そんな経験のある人は多いはずです。

その解決策が サブエージェント(subagents) です。ざっくり言うと「別のコンテキストで動く、専門特化したもう一人のClaude」。調査や検索といった重い作業をサブエージェントに丸投げし、結論だけ受け取ることで、メインの会話をきれいなまま保てます。

私自身、このブログの運営作業(記事の調査・競合リサーチ・大量ファイルの確認)で実際にサブエージェントを日常的に使っています。この記事では、サブエージェントとは何か→使いどころ→呼び出し方→自作の手順→使って分かった注意点までを、実体験ベースでまとめます。


結論:サブエージェントの強みは「汚さず・並列で・専門特化」の3点

先に要点だけ。サブエージェントのメリットは次の3つに集約されます。

  • ① メインのコンテキストを汚さない:調査ログや大量の検索結果をサブ側に閉じ込め、メインには結論だけ返す。→ コンテキスト枠を節約でき、精度もコストも安定する。
  • ② 並列で動かせる:独立した作業(複数テーマの調査など)を同時に走らせられる。待ち時間が短い。
  • ③ 専門特化させられる:用途別に「専用の指示(システムプロンプト)」と「使えるツール」を絞ったエージェントを自作できる。レビュー専門・調査専門、といった役割分担ができる。

逆に言うと、「短い単発の作業」にはオーバーヘッドのほうが大きいので不要。重い・独立・繰り返す作業ほど真価を発揮する——これが結論です。


サブエージェントとは?(メインのClaudeとの違い)

サブエージェントは、メインの会話から呼び出される独立したClaudeです。メインとの一番の違いは「自分専用のコンテキストウィンドウを持つ」こと。

メインのClaude サブエージェント
コンテキスト あなたとの会話そのもの 別枠(独立)
あなたへ返すもの 会話 最終結果(結論)だけ
指示(人格) 全体の指示 用途別に絞れる
使えるツール 全部 必要なものだけに制限可

大事なのは、サブエージェントが内部でどれだけファイルを読もうが検索しようが、その作業ログはメインに流れてこないこと。返ってくるのは「調べた結論」だけです。だからメインの会話は散らからず、コンテキストの無駄食いも防げます。

Claude Code には最初から用途別の組み込みエージェントも用意されています(汎用の調べ物用、広く探索する検索用、実装計画を立てる設計用、など)。まずはこれらを使うだけでも十分役に立ちます。


どんな時に役立つか(使いどころ)

実際に使ってみて「これは便利だ」と感じた場面を挙げます。

  • 大量ファイルから探す調査:「この処理どこで定義されてる?」のような、何十ファイルも横断する検索。サブに任せれば、メインには該当箇所だけ返ってくる。読み込んだファイルの中身でコンテキストが埋まらない。
  • 独立した複数テーマの並列リサーチ:たとえば私はブログの競合調査で、調べる対象ごとにサブエージェントを分けて同時に走らせました。1件ずつ順番にやるより圧倒的に速い。
  • コードレビュー・設計レビュー:「レビュー専門」のサブに、観点を決めて見させる。メインの実装の流れを止めずにチェックを挟める。
  • 実装計画を立てる:いきなり書き始めず、設計用エージェントに「手順とリスクを洗い出して」と頼んでから着手する。

共通するのは、「結論だけ欲しい・途中の大量情報はいらない」作業だということ。ここがサブエージェント向きの判断基準です。

コンテキスト枠をどれだけ使っているかは、ステータスラインに表示しておくと判断しやすくなります(やり方は【ステータスラインにコスト・コンテキスト使用率を表示する設定】)。


使ってみる(呼び出し方)

呼び出し方は大きく2通りです。

① 自動で起動される

作業の内容が「調査向き」「検索向き」だとClaudeが判断すると、自動的に適切なサブエージェントに振り分けてくれます。特別な操作は要りません。普段どおり頼むだけで、裏で使われていることも多いです。

② 明示的に頼む

サブエージェントで〇〇を調べて」「並列で複数のエージェントに分けて調査して」とこちらから指定することもできます。重い調査や、複数テーマを同時に進めたいときは、明示したほうが意図どおりに動きます。

管理する(/agents)

用意されているエージェントの一覧確認や、自作エージェントの作成・編集は /agents コマンドから行えます。まずはここで「どんなエージェントが使えるか」を眺めてみるのがおすすめです。


自作サブエージェントの作り方

組み込みだけでなく、自分専用のサブエージェントを作れます。これが本領です。実体は1枚のMarkdownファイルで、置き場所は2種類。

  • プロジェクト用:そのプロジェクトの .claude/agents/ に置く。リポジトリでチーム共有できる。
  • 個人用:ホームの ~/.claude/agents/ に置く。全プロジェクト共通で使える。

ファイルの形はこんなイメージです(フロントマターで設定、本文がそのエージェントへの指示)。

---
name: code-reviewer
description: コードの変更をレビューする。バグ・可読性・規約違反を指摘する専門エージェント。
tools: Read, Grep, Glob          # 使わせるツールを絞れる(省略すると全部)
model: sonnet                    # 速い/安いモデルに固定することも可
---

あなたはコードレビュー専門のエージェントです。
変更点を読み、次の観点で指摘してください。
- バグ・境界条件の見落とし
- 命名・可読性
- プロジェクト規約(CLAUDE.md)との不整合
指摘は「ファイル:行」と理由をセットで、結論を簡潔に返すこと。

ポイントは2つ。

  1. description が肝:Claudeはこの説明文を見て「この作業はこのエージェントに振ろう」と判断します。いつ呼ばれてほしいかが伝わる説明にする。
  2. ツールとモデルを絞れる:レビューや調査なら書き込み系ツールは不要なので外す。軽い作業は速い・安いモデルに固定するとコスト削減になる。

自作エージェントの指示には、CLAUDE.mdと同じく「簡潔に・役割を明確に」が大事です。CLAUDE.mdの考え方は【CLAUDE.mdの書き方・実例テンプレート】も参考にしてください。


実際に使って分かった注意点(一次情報)

便利な一方で、使い込んで気づいた「ハマりどころ」もあります。

  • 乱発するとトークンを食う:サブエージェントは独立して動く分、それぞれが別途トークンを消費します。1行で済む確認までサブに投げると、かえって割高。「重い・独立・繰り返す」作業に絞るのがコツ。コスト感は【Claude Code 1ヶ月のトークンコストを実測】や【ccusageでコストを可視化】で掴んでおくと判断しやすいです。
  • 途中の根拠は残らない:返ってくるのは結論だけなので、レビュー系では「結論+根拠(ファイル:行)をセットで返して」と指示しておかないと、後で確認しづらい。
  • 並列は“独立タスク”だけ:互いに依存する作業を並列に投げると噛み合いません。「Aの結果を使ってB」のような直列の依存があるものは、分けずに順番に。
  • 裏で動くぶん見えにくい:サブの作業はメインに流れてこないので、何をどう調べたかを後から追いにくい。重要な判断に使うときは、結論の根拠を明示的に返させると安心です。

要するに、「結論だけ欲しい重い作業を、役割を決めて渡す」と決めて使えば、サブエージェントはかなり強力です。


まとめ

  • サブエージェント=別コンテキストで動く専門特化したもう一人のClaude。強みは①コンテキストを汚さない②並列③専門特化の3点。
  • 使いどころは大量ファイルの調査・独立テーマの並列リサーチ・レビュー・実装計画など、「結論だけ欲しい重い作業」。
  • 呼び出しは自動 or 明示的に依頼/agents で一覧・管理。
  • 自作は .claude/agents/(共有)or ~/.claude/agents/(個人) にMarkdown1枚。description で振り分け、ツール・モデルを絞れる。
  • 注意は乱発でトークン増/根拠を返させる/並列は独立タスクのみ

「会話が散らかってきた」「調べ物でコンテキストがすぐ埋まる」と感じたら、サブエージェントの出番です。役割を決めて渡すだけで、メインの作業がかなり軽くなります。

あわせて読みたい:
CLAUDE.mdの書き方・実例テンプレート(指示書の書き方=自作エージェントにも応用できる)
ステータスラインにコスト・コンテキスト使用率を表示する設定(コンテキスト枠の見える化)
Claude Code 1ヶ月のトークンコストを実測(コスト感の把握)
ccusageでClaude Codeのコストを可視化する方法(サブエージェント分のコストも追える)
ant CLI 入門|Claude APIをターミナルから使う公式CLIの使い方(API側を直接叩く公式ツール)
Claude Codeのスキル機能(Skills)入門|SKILL.mdで自分専用コマンドを作る(手順を登録する仕組み・サブエージェントとの違いも)


コメント

タイトルとURLをコピーしました