一人の開発者では見落とすことがある。しかし、セキュリティ専門家、コードレビュアー、テスト担当者が同時にレビューしたらどうだろう。Agentsは、その「専門家チーム」をAI上に再現する仕組みだ。
Agentとは何か
Claude Code内で Agent ツールを使うと、サブエージェント(子プロセス)が起動する。メインの会話とは別のコンテキストで、専門的なタスクを独立して実行する。
これは、病院での「コンサルテーション」に似ている。主治医(メインのClaude Code)が専門医(Agent)に特定の問題について意見を求める。専門医は自分の専門領域に集中して分析を行い、結果を主治医に報告する。
組み込みエージェントタイプ
Claude Codeには、あらかじめ定義されたエージェントタイプがある。
読み取り専用エージェント
| タイプ | 用途 | 使えるツール |
|---|---|---|
Explore | コードベースの探索・調査 | Read, Grep, Glob, WebFetch, WebSearch |
Plan | 実装計画の設計 | Read, Grep, Glob |
これらはファイルの読み取りと検索のみ可能。編集やコマンド実行はできない。安全に調査タスクを委任できる。
フルアクセスエージェント
| タイプ | 用途 | 使えるツール |
|---|---|---|
general-purpose | 汎用タスク | すべて |
code-reviewer | コードレビュー | Read, Grep, Glob, Bash |
security-reviewer | セキュリティ分析 | Read, Write, Edit, Bash, Grep, Glob |
build-error-resolver | ビルドエラー修正 | Read, Write, Edit, Bash, Grep, Glob |
tdd-guide | テスト駆動開発 | Read, Write, Edit, Bash, Grep |
エージェントの使い方
自動呼び出し
Claude Codeは状況に応じて自動的にエージェントを呼び出す。例えば、コードベースの広範な調査が必要な場合は Explore エージェントが、ビルドが失敗した場合は build-error-resolver エージェントが起動する。
明示的な指示
ユーザーから明示的に指示することもできる。
> セキュリティレビューをsecurity-reviewerエージェントで実行して
並列実行
複数のエージェントを同時に起動できる。これがAgentの真骨頂である。
> 以下を並列で実行して:
> 1. code-reviewer でコード品質をチェック
> 2. security-reviewer でセキュリティをチェック
> 3. Explore エージェントで類似のパターンがないか調査
3つのエージェントが同時に動き、それぞれの専門観点から分析を行う。一人では数十分かかる作業が、数分で完了する。
カスタムエージェントを作る
~/.claude/agents/ ディレクトリにMarkdownファイルを置くことで、カスタムエージェントを定義できる。
例: 医療コンテンツレビュアー
# Medical Content Reviewer
## Role
医療コンテンツの正確性と適切性をレビューする専門エージェント。
## Instructions
1. コンテンツ内の医学的主張を特定する
2. 各主張のエビデンスレベルを評価する
3. ガイドラインとの整合性を確認する
4. 患者安全に関わるリスクを特定する
5. 改善提案をまとめる
## Output Format
### 評価サマリー
- 全体評価: A-F
- 正確性: ✅/⚠️/❌
- エビデンスレベル: I-V
### 詳細レビュー
各セクションごとの詳細な評価...
### 改善提案
優先度順の改善リスト...
マルチパースペクティブ分析
複雑な問題に対して、異なる視点を持つ複数のエージェントを使い分けることで、より深い分析が可能になる。
パターン: 分割役割サブエージェント
- 事実確認者: コードのロジックが仕様通りかを検証
- シニアエンジニア: アーキテクチャとデザインパターンの妥当性を評価
- セキュリティ専門家: 脆弱性とリスクを特定
- 整合性レビュアー: コードベース全体との一貫性を確認
これは、論文の査読で複数のレビュアーが異なる観点から評価する仕組みと同じだ。一人では見落とす問題も、複数の視点から見れば発見できる。
エージェントのコスト意識
エージェントの起動にはAPIコストがかかる。
- Explore / Plan: 読み取り専用のため、比較的軽量
- general-purpose: フルアクセスのため、複雑なタスクではコストが高くなる
- 並列実行: 同時実行するエージェント数に応じてコストが増加
コスト最適化のコツ:
- 単純な検索には
Exploreを使う(general-purposeは過剰) - エージェントのタスクを明確に絞る(「全部チェックして」より「XSSの脆弱性がないか確認して」)
- 必要な時だけ並列実行する(すべてのタスクで並列が必要なわけではない)
モデル選択によるコスト削減
エージェントにはモデルを指定できる。軽量なタスク(ファイル検索、単純な分析)にはHaikuモデルを使い、複雑なタスク(アーキテクチャ設計、セキュリティ分析)にはSonnetやOpusを使う。これでコストを大幅に削減できる。
この章のポイント
- Agentはメインの会話とは別のコンテキストで動作するサブプロセスである
- 読み取り専用(Explore、Plan)とフルアクセス(general-purpose等)の2カテゴリがある
- 複数エージェントの並列実行で、異なる視点からの同時分析が可能
- ~/.claude/agents/ にMarkdownファイルを置いてカスタムエージェントを定義できる
- コスト最適化のため、タスクの複雑さに応じてモデルを使い分ける