コンテンツにスキップ

Claude Code 完全ガイド

Claude Codeサブエージェント機能:実際に手を動かして学ぶ実践チュートリアル

はじめに

「サブエージェントの作り方は分かったけど、実際にいつ、どうやって使うの?」

この疑問を解決するため、本記事では実際のプロジェクトでサブエージェント機能を使った具体的なワークフローを、step by stepで実践していきます。

サブエージェントの動作原理

重要な理解:手動トリガー方式

サブエージェントは定期実行ではありません。以下の方式で動作します:

sequenceDiagram
    participant User as 開発者
    participant Main as メインClaude
    participant Analysis as 分析エンジン

    User->>Main: "この作業を3つの観点から構造化分析して"
    Main->>Analysis: 1. セキュリティ観点での分析開始
    Analysis-->>Main: セキュリティ分析結果

    Main->>Analysis: 2. パフォーマンス観点での分析開始
    Analysis-->>Main: パフォーマンス分析結果

    Main->>Analysis: 3. コード品質観点での分析開始
    Analysis-->>Main: 品質分析結果

    Main->>Main: 結果統合・包括的レポート生成
    Main->>User: 統合された改善提案

実践チュートリアル1: プルリクエストレビュー

Step 1: 基本的な並列レビューを試す

実際に試せるコマンド:

# Claude Codeを起動した状態で、以下を実行
"このプルリクエストを3つの観点から並列でレビューして:
1. セキュリティの観点
2. パフォーマンスの観点  
3. コード品質の観点"

期待される出力:

Task(Performing task: セキュリティレビュー中...)
Task(Performing task: パフォーマンス分析中...)
Task(Performing task: コード品質チェック中...)

Step 2: 動作確認方法

各タスクの実行中は以下が表示されます:

Task(Performing task: セキュリティ脆弱性をチェックしています...)
└── 現在 auth.js を分析中
└── XSS脆弱性の可能性を検出
└── CSRF対策の確認中

Task(Performing task: パフォーマンス分析を実行中...)  
└── バンドルサイズを測定中
└── 不要な依存関係を特定中
└── 最適化の提案を準備中

Step 3: 結果の活用

各エージェントから以下のような具体的な結果が返ってきます:

## セキュリティ分析結果
- ❌ auth.js:42 - ユーザー入力の未サニタイズ
- ❌ api/login.js:28 - SQLインジェクション脆弱性
- ✅ HTTPS強制は適切に実装済み

## パフォーマンス分析結果  
- ⚠️ bundle.js (2.3MB) - サイズが大きすぎる
- ⚠️ lodash全体をインポート - 必要な関数のみに変更推奨
- ✅ 画像最適化は適切

## コード品質分析結果
- ❌ 複雑度が高い関数が12個検出
- ❌ テストカバレッジ 45% (目標: 80%)
- ✅ ESLintルールは適切に適用済み

実践チュートリアル2: 新機能開発時の設計レビュー

実際のシナリオ

新しいユーザー認証機能を開発する際の実践例です。

Step 1: 設計段階での並列検討

"新しいOAuth認証機能の実装を検討しています。以下の観点から並列で分析してください:
1. セキュリティアーキテクチャの検証
2. データベース設計の妥当性確認
3. フロントエンド統合の複雑さ評価
4. テスト戦略の策定"

Step 2: 具体的な指示例

# より具体的に役割を指定する場合
"OAuth実装について、以下の専門エージェントで並列分析して:

エージェント1: セキュリティ専門家として
- OAuthフローの脆弱性チェック
- トークン管理のベストプラクティス確認
- PKCE実装の必要性評価

エージェント2: データベース専門家として  
- ユーザーテーブル設計の妥当性
- セッション管理の最適化
- インデックス戦略の提案

エージェント3: フロントエンド専門家として
- React統合の複雑さ評価
- UX観点での改善提案
- エラーハンドリング戦略"

Step 3: 実行時の画面表示

🤖 3つのタスクを並列実行します...

Task(Performing task: OAuth セキュリティ分析中...)
├── PKCE フローの検証中
├── トークンライフサイクルの確認中
└── 脆弱性データベースとの照合中

Task(Performing task: データベース設計レビュー中...)
├── テーブル関係の整合性チェック中
├── パフォーマンス影響の評価中  
└── スケーラビリティの検証中

Task(Performing task: フロントエンド統合分析中...)
├── React Router 統合の複雑さ評価中
├── 状態管理パターンの検討中
└── エラー画面設計の提案作成中

✅ 全タスク完了 - 統合レポートを生成中...

実践チュートリアル3: 大規模リファクタリング

実際に使える具体的指示

# レガシーコードの構造化分析
"このレガシーなJavaScriptコードベースを現代化したいです。
以下の作業を6つの観点から構造化分析してください:

1. TypeScript移行の優先度評価
2. テストコード不足箇所の特定
3. セキュリティ脆弱性の全数調査
4. パフォーマンスボトルネックの特定
5. 依存関係の最新化影響調査
6. アーキテクチャ改善提案の作成

各エージェントは独立して作業し、最終的に統合された移行計画を提示してください。"

実行中の詳細表示

🔄 大規模並列分析を開始...

Task(Performing task: TypeScript移行優先度評価...)
├── 📁 src/utils/ - 型エラー 23件検出
├── 📁 src/components/ - JSDoc から型定義変換可能
├── 📁 src/api/ - 外部API型定義が必要
└── 🎯 優先度: utils  components  api の順で実行推奨

Task(Performing task: テスト不足箇所特定中...)
├── 📊 現在のカバレッジ: 34% (目標: 80%)
├── 🚨 未テスト: 認証関連機能 (高リスク)
├── 🚨 未テスト: 決済処理 (高リスク)
└── 📝 優先テスト対象リストを作成中

Task(Performing task: セキュリティ監査実行中...)
├── 🔍 依存関係の既知脆弱性スキャン中
├── 🔍 ハードコードされた認証情報の検索中
├── 🔍 XSS/CSRF脆弱性の静的解析中
└── ⚠️ 高危険度の問題を3件発見

日常開発での実践的な使い方

1. 朝のコードレビュー

# 毎朝のルーティン
"昨日のコミットを3つの観点から並列レビューして:
- セキュリティチェック
- パフォーマンス影響評価  
- コード品質とベストプラクティス準拠"

2. 機能実装前の事前検討

# 新機能開発前
"〇〇機能の実装を予定しています。以下を並列で検討してください:
- 技術的実装難易度の評価
- 既存システムへの影響分析
- 必要なテストケースの洗い出し
- セキュリティ考慮事項の整理"

3. バグ修正時の影響範囲確認

# バグ修正時
"このバグ修正が以下に与える影響を並列で調査してください:
- 他の機能への副作用
- パフォーマンスへの影響
- テストケースの更新要否
- ドキュメント更新の必要性"

よくあるトラブルとその解決方法

問題1: エージェントが期待通りに動かない

症状:

# 曖昧な指示の例(うまく動かない)
"コードをチェックして"

解決方法:

# 具体的で明確な指示(うまく動く)
"以下3つの観点から、src/auth.jsファイルを並列でチェックしてください:
1. セキュリティ脆弱性の検出
2. ESLintルール違反の確認  
3. パフォーマンス改善点の特定"

問題2: 並列実行されているか分からない

確認方法: - Task(Performing task: ...) の表示を確認 - 複数のタスクが同時に表示されていれば並列実行中 - 各タスクの進行状況が個別に表示される

問題3: 結果が統合されない

症状:

# バラバラな結果が返ってくる
エージェント1: "セキュリティは問題なし"
エージェント2: "パフォーマンスに問題あり"  
エージェント3: "コード品質は良好"

解決方法:

# 統合を明示的に指示
"結果を統合して、優先度付きのアクションプランを作成してください"

実際のプロジェクトでの導入方法

Phase 1: 小さく始める

# 最初は簡単なタスクから
"この関数を2つの観点からレビューして:
- バグの可能性
- 可読性の改善点"

Phase 2: 段階的に拡張

# 慣れてきたら範囲を拡大
"このモジュール全体を4つの観点から分析して:
- セキュリティ
- パフォーマンス
- 保守性
- テスタビリティ"

Phase 3: チーム全体での活用

# チーム標準として定着
"プルリクエスト〇〇番を標準レビュー項目で並列チェックして:
- コーディング規約準拠
- セキュリティベストプラクティス
- パフォーマンス影響
- テストカバレッジ十分性
- ドキュメント更新要否"

成功のコツ

1. 明確で具体的な指示

❌ 悪い例: "コードをチェックして" ✅ 良い例: "auth.jsを3つの観点(セキュリティ、パフォーマンス、品質)から並列分析して"

2. 適切な並列度の設定

  • 2-3タスク: 日常的なレビュー
  • 4-5タスク: 機能開発時の事前検討
  • 6-8タスク: 大規模リファクタリング
  • 9-10タスク: 緊急時の全面調査

3. 結果の活用方法

# 結果を受けて次のアクションを指示
"分析結果を受けて、最も重要な3つの改善点を実装してください。
優先度の高い順に、具体的な修正コードも提示してください。"

まとめ

Claude Codeサブエージェント機能は、その場その場の判断で複数の視点から並列分析するツールです。

  • 定期実行ではなく手動トリガー
  • 具体的で明確な指示が重要
  • 日常の開発ワークフローに組み込み可能
  • 段階的な導入がおすすめ

実際に手を動かして、あなたのプロジェクトで試してみてください!


次のステップ

  1. 今すぐ試す: 上記の具体例をそのまま実行
  2. カスタマイズ: 自分のプロジェクトに合わせて指示を調整
  3. チーム導入: 成功パターンをチームで共有
  4. 継続改善: 効果的な指示パターンを蓄積

タグ

ClaudeCode #サブエージェント #実践チュートリアル #ハンズオン #並列処理 #開発効率化 #実例