サブエージェントは、Claude Code の中で、役割を決めて別に動かす小さな担当者です。
調べ物やレビューをサブエージェントに任せると、メインの会話の文脈(コンテキスト)を汚さずに済みます。
- 置き場所:.claude/agents/名前.md(プロジェクト)、~/.claude/agents/名前.md(自分用)
- 必須は name と description。本文がそのサブエージェントへの指示になる
- model で使うモデルを決められる(haiku にすると軽い作業を安く回せる)
- 組み込みの Explore・Plan・general-purpose もある
この記事は、Claude Code の公式ドキュメント(code.claude.com/docs、2026年9月29日に確認)にもとづいています。
手元の確認は、2026年9月29日に Windows 11 の Claude Code 2.1.284 で、練習用のフォルダー(C:\demo\cc-b)を使って行いました。
自作のサブエージェントを動かした
文の文字数を数えるだけの、Haiku で動くサブエージェントを作りました。
.claude/agents/word-counter.md---
name: word-counter
description: 渡された文の文字数を数える練習用のサブエージェント。文字数を数えるときに使う。
tools: Read
model: haiku
---
渡された文の文字数(空白を含む)を数え、「文字数: N」の1行だけを返す。claude -p "word-counter サブエージェントを使って「こんにちは世界」の文字数を数え、サブエージェントの返事をそのまま返して" --output-format stream-json --verbose出力の記録を調べると、Claude が Agent ツールで word-counter を呼び、使われたモデルにはメインの claude-opus-5 と、サブエージェントの claude-haiku-4-5 の2つが記録されていました。
TOOL Agent {"description": "Count characters", "prompt": "「こんにちは世界」の文字数を数えてください。", "subagent_type": "word-counter"}
RESULT word-counter サブエージェントの返事:
文字数: 7置き場所と優先順位
| 順位 | 場所 |
|---|---|
| 1 | 組織の管理設定 |
| 2 | 起動時の –agents フラグ |
| 3 | .claude/agents/(プロジェクト) |
| 4 | ~/.claude/agents/(自分用) |
| 5 | プラグインの agents/ |
サブフォルダーの中まで読まれ、どのサブエージェントかは name だけで決まります。
主な設定
| 項目 | 働き |
|---|---|
| name(必須) | 名前。: は使えない |
| description(必須) | いつ使うか。Claude はこれを見て任せるかを決める |
| tools | 使えるツール。省略するとすべて |
| model | sonnet・opus・haiku・fable・完全なモデル ID・inherit(メインと同じ) |
| disallowedTools・permissionMode・maxTurns・skills・mcpServers・effort など | 細かい制御 |
description に「use proactively」と書くと、積極的に任されやすくなると書かれています。
組み込みのサブエージェント
| 名前 | 役割 |
|---|---|
| Explore | 読み取り専用でファイルを探す(quick・medium・very thorough の3段階) |
| Plan | プランモード中の調べ物(読み取り専用) |
| general-purpose | 調べて変更もする、複数手順の作業 |
2.1.198 から、Explore は Haiku ではなく、メインの会話のモデルを使うようになりました。
呼び出し方
- 名前を挙げて頼む(上の例)
- @”code-reviewer (agent)” のように @ で指定する
- claude –agent 名前 で、セッション全体をそのエージェントとして動かす
- –agents に JSON(またはファイル)を渡して、そのセッションだけのサブエージェントを作る
2.1.198 から /agents は作成の画面を開かず、Claude に頼むか .claude/agents/ を直接編集するよう案内するだけになりました。
気をつけること
- 自作のサブエージェントの説明の合計が15,000トークンを超えると、起動時に警告が出る
- サブエージェントはメインから3階層下まで子を作れる(CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH で変更)
- 特定のサブエージェントを止めるなら –disallowedTools “Agent(Explore)” など
手順を再利用したいだけなら、Skillsのほうが手軽です。
まとめ
- .claude/agents/名前.md に name・description・本文を書く
- model: haiku で軽い作業を安いモデルに任せられる(実際に Haiku で動いた)
- 名前を挙げて頼むか、@ で指定して呼ぶ
- /agents は 2.1.198 から作成画面を開かない
参考:Claude Code「Subagents」(2026年9月29日に確認)と、Claude Code 2.1.284 での実行結果。
