Claude Codeのサブエージェントを作って呼び出す
公開 2026-04-24 更新 2026-09-15

関連テーマ:繰り返す作業を自動化する
サブエージェントは、親セッションから役割ごとの独立したコンテキストへ作業を委ね、要約結果を受け取る機能です。大量の調査で親コンテキストを埋めたくない時や、レビュー担当を分けたい時に使います。単純な一つの編集なら、通常の依頼の方が追跡しやすいでしょう。
定義
このレビュー例では、子の担当へ書き込みを渡さずに始めます。
- 1親が範囲を渡す対象ファイル、役割、根拠を返す形式を指定。
- 2reviewerが読む独立したコンテキストで、許可した読み取りツールを使う。
- 3親が採用を判断根拠と未確認点を読み、必要な変更へつなぐ。
子の要約をそのまま完成扱いにしません。本文の定義例にはBashがないため、必要なGit差分は親側で用意します。
プロジェクト用の定義は.claude/agents/reviewer.mdに置きます。
---
name: reviewer
description: Review changed files for correctness and missing tests
tools: Read, Grep, Glob
model: sonnet
---
変更を読み、重大度・根拠・修正案を箇条書きで返す。ファイルを変更しない。
frontmatterの項目や利用可能なツールは、専用のサブエージェント仕様を確認してください。定義の説明を狭くし、読み取り専用のレビューなら書き込みツールを与えません。Claudeに「reviewerを使い、対象ファイルを読み取ってレビューして」と依頼します。この例はBashを許可しないため、git diffの実行が必要なら親が差分を用意します。v2.1.198以降のCLIでは、/agentsによる旧作成ウィザードは廃止されているため、ファイル作成または自然言語で作成を依頼します。
disallowedTools に Bash(git push *) のような指定を書いても、サブエージェントではBashツール全体が外れる点に注意します。Bashを残しつつ特定の操作だけを拒否する目的なら、公式は設定の permissions.deny を案内しています。そのルールは親にも適用されるため、対象範囲を確認します。また、子へ必要な背景や対象ファイルを渡し、会話履歴がそのまま引き継がれたと考えないようにします。
2026年9月15日の公式仕様には、v2.1.271以降で使えるomitClaudeMd: trueもあります。子へユーザー・プロジェクト・ローカルのCLAUDE.mdを読み込ませない設定です。管理ポリシーは通常残りますが、管理者配布のサブエージェントには例外があります。--agentで主セッションとして起動した場合には、この指定は適用されません。上のレビュー用定義では省略せず、プロジェクトの決まりを読む構成にしています。省略する場合は「vendorは調べない」など、子にも必要な条件を依頼文へ明記してください。公式の読み込み範囲で確認した仕様で、実機では未検証です。
分担の設計
調査→レビュー→実装の順に直列化するか、独立した調査を並列に行います。サブエージェントの返答は要約なので、重要なURL、ファイル名、未確認点を出力形式へ指定します。親が結果を検証してから書き込みを許可してください。サブエージェントの利用量も含めてコストが増えるため、役割分担で得られる効果がある作業に限定します。
サブエージェントとAgent Teamsは別物です。前者は親セッション内の専門担当、後者は複数の独立セッションを協調させる機能です。サブエージェントとAgent Teamsの公式資料を確認しました。実践時は自動化機能の比較も参照してください。実機検証はしていません。
依頼テンプレート
「reviewerはsrc/だけを読み、型エラーと未テストの分岐を重大度順に、ファイルと行番号付きで返す。変更・commit・外部送信はしない。根拠が不足した項目は未確認と書く」と指定すると、役割と境界が明確になります。親セッションは返答を読み、必要な箇所だけ自分で修正します。
SkillやPluginと役割を分ける場合はSkillsの作成、チームで共有する場合はPluginの最小構成も確認してください。
このテーマを続けて読む
Skills・Hooks・プラグインから、定期処理や外部イベントの扱いへ。
繰り返す作業を自動化するの記事をまとめて見る