Claude Code をインストールして「で、次どうすれば…?」となっていないだろうか。導入は単なる入口に過ぎない。フックカスタムコマンドサブエージェントの3つを使いこなすことで、Claude Code は「1人のAIアシスタント」から「自分専用の開発チーム」へと変わる。

この記事では、X で話題になった @wad0427 氏の記事「Claude Code、インストールしたけど「で、次どうすれば…?」ってなってない?」をベースに、それぞれの機能の概要と実践的な使い方を解説する。

フック(Hooks)— 自動化ルールを仕込む

フックとは、「AIが〇〇したら、自動で△△を実行するルール」のことだ。

料理に例えると、「盛り付けたら、最後に必ずパセリを振る」と自分ルールを決めておく感じに近い。Claude Code では以下のような自動化が可能になる。

  • AIがファイルを保存したら → 自動でコードの見た目を整える(フォーマッター実行)
  • AIがコードを書き換えたら → 自動でテスト(動作チェック)を走らせる
  • AIの作業が終わったら → 自動で変更履歴を記録する(コミット)

つまり、毎回「フォーマットして」「テストして」と指示しなくていい。フックを設定するには Claude Code のターミナルで /hooks と打つと設定画面が出る。選択肢を選んでいくだけなので、コードを書かなくても OK だ。

フックの設定例

プロジェクトルートの .claude/settings.json(またはユーザー設定の ~/.claude/settings.json)に以下のように定義する:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
          }
        ]
      }
    ]
  }
}

この例では、AI がファイルを書き換えるたびに Prettier が自動実行され、コードスタイルが統一される。

カスタムコマンド(Custom Slash Commands)— よく使う指示をワンタッチ化

Claude Code には /test のような組み込みコマンドがあるが、自分だけのオリジナルコマンドも作れる。

やり方は簡単で、プロジェクトの .claude/commands/ フォルダにテキストファイル(Markdown)を1つ置くだけだ。たとえば .claude/commands/review.md というファイルを作ると、Claude Code で /review と打つだけでそのファイルに書いた指示が実行される。

居酒屋でいう「いつもの」ボタンのようなもので、一回設定しておけば毎回同じ指示を打ち込まなくてよくなる。

実例1: /review コマンド

1
2
3
4
5
6
7
8
変更されたファイルをすべて確認して、以下の観点でレビューしてください:

① 型安全性(データの型が正しいか)
② エラーハンドリング(エラー時の処理があるか)
③ パフォーマンス(処理が重くないか)
④ セキュリティ(安全上の問題がないか)

指摘事項はファイルごとにまとめてください。

実例2: /test-gen コマンド(ファイル指定あり)

1
2
3
$ARGUMENTS のテストを作成してください。
テストフレームワークはVitestを使用。
正常系・異常系・境界値テストをそれぞれ含めてください。

使い方: /test-gen src/utils/auth.ts$ARGUMENTS の部分に指定したファイル名が入る。

実例3: /doc コマンド

1
2
3
$ARGUMENTS の説明コメントを生成してください。
関数の目的、パラメータ、戻り値、使用例を含めてください。
既存のコメントがある場合は更新してください。

チームの誰が使っても同じフォーマットで揃うのがポイントだ。

サブエージェント(Sub-agents)— 専門家チームを組む

ここが Claude Code の「本当のすごさ」だ。

サブエージェントは、Claude Code の中に「専門家チーム」を持てる仕組みだ。普通に Claude Code を使うと1つの AI が全部やるが、サブエージェントを使うと役割分担ができる:

  • コード分析専門の AI
  • テスト設計専門の AI
  • セキュリティチェック専門の AI
  • ドキュメント作成専門の AI

RPG で例えるなら、勇者が一人で全部やるんじゃなくて、戦士・魔法使い・僧侶のパーティーを組む感覚だ。

サブエージェントのメリット

  1. 精度が上がる — 大量のコードを1つの AI に読ませると情報が多すぎて精度が落ちる。分割すれば各 AI が自分の領域に集中できる
  2. 同時並行で動ける — 複数のサブエージェントが同時に作業できる。コードレビューしながらテスト作成、みたいなことが可能
  3. コストを最適化できる — 軽い作業には軽量モデル、重い分析には高性能モデルと、タスクの難易度に応じて AI を使い分けられる(API 経由の場合)

サブエージェントの仕組み

各サブエージェント(専門 AI)には以下が設定できる:

  • 専用の作業スペース(ほかの AI の情報と混ざらない)
  • 専用の役割定義(「あなたはテスト専門」みたいな指示)
  • アクセス範囲の制限(見ていいファイルを絞れる)
  • 独立した権限設定

つまり「テスト専門の AI」にはテスト関連のファイルだけ触らせて、本番のコードは一切触らせない、みたいな制御ができる。

3つを組み合わせるとどうなるか

フック × カスタムコマンド × サブエージェント。この3つを全部使うと、以下のような開発フローが実現する:

  1. /architect コマンドで「設計書作成 AI」が動く
  2. 設計書をもとに /implement コマンドで「実装 AI」がコードを書く
  3. フックで自動テスト & コード整形が走る
  4. /review コマンドで「レビュー専門 AI」がチェック
  5. 問題があれば自動修正して変更を記録

この一連の流れが、最初のコマンド1つから全部つながる。「開発チーム、自分1人だけど実質4人分の戦力」という状態だ。

まとめ

Claude Code は「インストールして使う」だけが入口に過ぎない。

  • フックで自動化のルールを仕込む
  • カスタムコマンドでよく使う指示をワンタッチ化する
  • サブエージェントで専門チームを組む

ここまで来ると、Claude Code は「1人の開発パートナー」から「自分専用の開発チーム」に変わる。まだ基本機能だけで使っている人は、今日からカスタムコマンドを1つ作ってみよう。.claude/commands/ にテキストファイルを1つ置くだけ、5分で終わる。