Claude Codeに『別の頭』を持たせる——サブエージェントで調査もレビューも並列化する技術

AI活用

結論から言うと、Claude Codeの生産性が伸び悩んでいるなら、サブエージェントとSkillsを覚えるだけで景色が変わる。

Claude Codeを毎日使っているのに、なんとなく「惜しい」と感じている人は多いと思う。指示は通る。コードも出る。でも会話が長くなると精度が落ちる。調べものをさせると本題を忘れる。レビューを頼むと、自分が書いたコードに甘くなる。

全部、1つの会話で何もかもやらせていることが原因だった。

・Claude Codeの会話が長くなると精度が落ちる

・調査させると本題がどこかに行く

・レビューを頼んでも「よさそうです」で終わる

・毎回同じ手順を口頭で説明している

ここで止まってる人ほど読んでほしい。自分も半年間ずっとこの状態だった。

Claude Codeが会話の後半で「ポンコツ化」する仕組み

Claude Codeに限らず、AIチャットには「コンテキストウィンドウ」という作業机がある。ファイルを読ませるたびに机の上に書類が積まれていくイメージだ。

机がいっぱいになると、AIは古い書類を要約して片付け始める。これが「コンパクション」と呼ばれる仕組みで、要約の過程で細かいニュアンスや指示が抜け落ちる。最初に伝えた「テストは必ず通してからコミットして」みたいなルールが、会話の後半で無視されるのはこれが原因。

特に厄介なのが調査系のタスクだ。「認証周りの実装を調べて」と頼むと、Claude Codeは律儀にファイルを10個も20個も読む。調査結果はほしいけど、読んだファイルの中身が全部コンテキストに残る。本題の実装に入る頃には、もう机の半分が調査メモで埋まっている。

これ、助手に調べものを頼んだら、調べた資料を全部あなたの机に広げて帰ってくるようなもの。ほしいのは「調査結果の要約メモ1枚」なのに。

サブエージェントという「別室」——コンテキストを汚さずに仕事を振る

サブエージェント(Subagent)は、Claude Codeの中にある「もう1つのAI」だ。メインの会話とは別のコンテキストウィンドウ(別室)で動き、調査や検証が終わったら結果だけを持って帰ってくる。

つまり、さっきの例で言えば「別室で調べてきて、要約メモだけ持ってきて」ができる。メインの机は綺麗なまま。

Claude Codeには最初からいくつかのサブエージェントタイプが用意されている。コードベースの探索に特化した「Explore」タイプや、実装計画を立てる「Plan」タイプなどだ。使い方はシンプルで、Claude Codeに「サブエージェントを使って認証周りの実装を調査して」と伝えるだけでいい。

自分がサブエージェントを使い始めて最初に感じたのは、「会話が軽い」ということだった。以前は30分も作業すると応答が鈍くなっていたのが、サブエージェントに調査を任せるようにしたら、メインの会話がずっとシャープなまま。試した。軽い。速い。もう戻れない。

サブエージェントが特に効く3つの場面

以下の場面では、サブエージェントの効果が特に大きい。

  • コードベースの調査: 「この機能の実装を追って」「依存関係を洗い出して」のような探索タスク。10ファイル読んでも、メインに返るのは要約だけ
  • 実装後のレビュー: 自分が書いたコードのレビューを、書いた本人(同じコンテキスト)にやらせても甘くなる。別のサブエージェントに渡せば、先入観なしでレビューできる。セカンドオピニオンに近い
  • 並列作業: 複数のサブエージェントを同時に走らせれば、調査Aとリファクタリング案Bを同時進行できる。待ち時間がゼロになる

カスタムエージェント——「自分だけの専門家」を定義する

Claude Codeの.claude/agents/フォルダに設定ファイルを置くと、自分だけのサブエージェントを定義できる。例えばセキュリティレビュー専門のエージェント、依存パッケージの監査エージェント、コンテンツの品質チェックエージェントなど。

それぞれに専用の指示(システムプロンプト)と使えるツールの制限を設定できる。セキュリティレビュー用のエージェントには「ファイルの読み取りと検索だけ許可、編集は不可」のように制限をかければ、誤って本番コードを書き換えるリスクもない。

ぶっちゃけ最初は「わざわざ定義するほど?」と思っていた。でも実際に使ってみると、毎回「セキュリティの観点でレビューして。特にインジェクション系と認証周りを見て。行番号も教えて」と説明する手間がなくなる。定義したエージェントの名前を伝えるだけで、毎回同じ品質のレビューが返ってくる。

自分の場合、記事の品質チェック用にカスタムエージェントを定義している。金額の記載が正確か、NGワードが含まれていないか、構成がルールに沿っているか——こういったチェック項目を毎回口頭で伝えるのは現実的じゃない。エージェントに組み込んでおけば、一言で全チェックが走る。

Skillsで「毎回の説明」をコマンド化する

Skillsは、Claude Codeの.claude/skills/フォルダに保存する再利用可能なワークフローだ。スラッシュコマンド(/fix-issue 1234のような形式)で呼び出せる。

これ、半年前に知ってたら100万回の説明を省略できた(体感)。

CLAUDE.mdとSkillsの使い分け

Claude CodeにはCLAUDE.mdというプロジェクト全体の設定ファイルもある。ここに全部書けばいいじゃん、と思うかもしれない。自分もそう思ってた。

でもCLAUDE.mdに書いた内容は、毎回のセッションで必ず読み込まれる。つまり、コンテキストウィンドウの「固定席」を取る。デプロイ手順やIssue修正フローのように、たまにしか使わないワークフローまでCLAUDE.mdに書くと、それだけで机の一角が常に埋まることになる。

使い分けの基準はシンプルだ。

  • CLAUDE.md: 毎セッション必要なもの。コードスタイル、ブランチ命名規則、テストの実行コマンドなど
  • Skills: 特定の場面でだけ必要なもの。デプロイ手順、PR作成フロー、Issue修正の手順など

「毎回使う辞書はデスクに、たまに使うマニュアルは棚に」という感覚。これだけでコンテキストの消費が目に見えて減る。

自分が実際に定義しているSkillの例

具体的なコードは省略するけど、自分が日常的に使っているSkillの方向性だけ共有する。

  • 記事生成スキル: テーマを渡すと、情報収集→構成→下書きまで一気通貫で走る。手順が10ステップ以上あるので、毎回口頭で説明するのは非現実的
  • レビュースキル: PRの番号を渡すと、差分の取得→レビュー→コメント投稿まで自動で進む
  • デプロイスキル: 環境名を指定するだけで、テスト→ビルド→デプロイ→確認まで走る

どれも「毎回同じことを説明する手間」を消すためのもの。地味だけど、積み重ねると時間の節約が半端じゃない。

マルチセッションで「新鮮な頭」を切り替える

1つのセッションで全部やろうとすると、コンテキストが太る一方だ。マルチセッション——つまり、タスクごとにClaude Codeのセッションを分けるという発想がある。

例えば、機能Aの実装と機能Bの実装を両方やるなら、別々のセッションで並行して進める。それぞれのセッションは自分のタスクだけに集中できるから、コンテキストが綺麗に保たれる。

自分は以前、1つのセッションで「まずこっちを調べて、次にあっちを実装して、ついでにバグも直して」とやっていた。結果、会話が3000行を超えるあたりでClaude Codeが明らかに迷子になる。指示を忘れる。同じファイルを2回読む。効くんですよ、セッションを分けるだけで。

マルチセッションの実践的なパターンをいくつか挙げる。

  • 調査セッション→実装セッション: まず調査専用のセッションでコードベースを把握。結果をメモにまとめてから、新しいセッションで実装に入る
  • 機能別セッション: 独立した機能は別セッションで同時進行。互いに干渉しないから安全
  • 実装セッション→レビューセッション: 書いたコードを新しいセッションでレビュー。書いた本人のバイアスがないから、見落としが減る

自分がこの3つを組み合わせて一番変わったこと

自分はVPSにClaude Codeを入れて、AIエージェントシステムを運用している。サブエージェント・Skills・マルチセッションを組み合わせる前と後で、一番変わったのは「Claude Codeへの信頼感」だった。

以前は、長い会話の後半で明らかに精度が落ちるから、重要な判断は結局自分でやり直していた。AIに任せてるのに、最後は手動。意味あるのかこれ、と思ったこともある。

サブエージェントで調査を分離し、Skillsで手順を固定し、セッションをタスクごとに分けるようにしたら、「任せた結果がそのまま使える」場面が圧倒的に増えた。やまもんさんから「同じコマンドを2回使ったらスクリプト化しろ」と言われたのがきっかけで、繰り返しの手順をSkillsに落とし込むようになったのも大きい。

正直、Claude Codeの「強さ」はモデルの賢さじゃなくて、コンテキストをどう設計するかで決まる。気づいたんですよ。遅すぎたけど。

まとめ

  • サブエージェントは「別の頭」。調査やレビューを別室でやらせて、メインのコンテキストを守る
  • Skillsは「手順書のコマンド化」。毎回の説明コストをゼロにする
  • マルチセッションは「新鮮な頭の使い分け」。タスクごとにセッションを分けてコンテキスト汚染を防ぐ

どれも「Claude Codeを賢くする」技術ではなく、「Claude Codeの賢さを最後まで維持する」技術だ。これが本質。

フリーランスエンジニアにおすすめのツール

独自ドメインでブログやポートフォリオを始めるなら、ゴンベエドメインが取得も管理も手軽でおすすめ。

※この記事にはアフィリエイトリンクを含みます

コメント

タイトルとURLをコピーしました