「コードをいきなり書き始めて、途中で設計ミスに気づいて手戻りが発生した」——AIコーディングツールを使っていて、こんな経験はありませんか?
Claude CodeのPlan Modeは、「まず考えてから作る」を自動化する機能です。コードベースを分析し、マークダウン形式の計画書を生成、人間のレビュー・承認を経てから実装に入るという、まるでシニアエンジニアの思考プロセスをなぞるワークフローを実現します。
この記事では、Plan Modeの仕組みから実践的な活用法、サブエージェントやAgent Teamsとの組み合わせまで解説します。
この記事を3秒でまとめると
- Plan Modeは「設計→承認→実装」の3段階ワークフローを自動化する
- Planサブエージェントがコードベースを分析し、構造化された計画書を出力する
- 大規模リファクタリングや新機能開発でのミス・手戻りを大幅に削減できる
Plan Modeとは? — 「考えてから作る」を自動化する機能
通常モードとPlan Modeの違い
Claude Codeの通常モードでは、プロンプトを入力するとすぐにコードの読み取り・編集が始まります。シンプルなタスクには効率的ですが、複雑な変更では以下の問題が起きがちです。
- 全体像を把握せずに部分的な変更を始めてしまう
- 依存関係のあるファイルの変更漏れ
- 途中で方針が変わり、それまでの変更が無駄になる
Plan Modeはこれらの問題を解決します。
| 項目 | 通常モード | Plan Mode |
|---|---|---|
| 実行フロー | プロンプト → 即座にコード変更 | プロンプト → 計画作成 → 承認 → コード変更 |
| 適したタスク | 小規模修正、バグ修正 | 大規模変更、新機能、リファクタリング |
| コスト | 手戻りが発生すると増加 | 計画段階でミスを検出できる |
| 人間の関与 | 結果のレビュー | 計画段階でのレビュー+承認 |
Planサブエージェントの仕組み
Plan Modeを起動すると、Claude Codeは内部でPlanサブエージェントを生成します。このサブエージェントは以下の手順で動作します。
- コードベースの分析: 関連するファイル・依存関係・アーキテクチャを調査
- 影響範囲の特定: 変更が影響する全ファイル・関数・テストを洗い出し
- 計画マークダウンの生成: 変更手順を構造化されたマークダウン形式で出力
- リスクの明示: 破壊的変更や注意が必要な箇所をハイライト
この一連のプロセスは、コードを変更せずに読み取り専用で行われるため、安全に計画立案できます。

Plan Modeの起動方法と基本設定
CLIでの起動コマンド・フラグ
Plan Modeの起動にはいくつかの方法があります。
方法1: インタラクティブモードで切り替え
Claude Codeのインタラクティブモード中に、キーバインド Shift+Tab を押すことでPlan Modeに切り替えられます。プロンプト入力欄の表示が Plan> に変わります。
# 通常起動後、Shift+Tabで切り替え
claude
# プロンプトが変わる
Plan> 認証モジュールをOAuth2.0からPasskeysに移行する計画を立てて
方法2: フラグ指定で起動
# --planフラグでPlan Mode起動
claude --plan "認証モジュールをOAuth2.0からPasskeysに移行して"
方法3: API/SDK経由
import { Claude } from '@anthropic-ai/claude-code';
const result = await Claude.plan({
prompt: '認証モジュールの移行計画',
workDir: '/path/to/project',
autoApprove: false, // 手動承認
});
CLAUDE.mdでのデフォルト設定
プロジェクトルートのCLAUDE.mdファイルで、特定の条件でPlan Modeを自動起動する設定が可能です。
# Plan Mode設定
## 自動Plan Mode
以下の条件に該当するタスクは、自動的にPlan Modeで実行してください:
- 3ファイル以上の変更が予想されるタスク
- アーキテクチャ変更を伴うタスク
- データベーススキーマの変更
- 外部APIの追加・変更
## 計画フォーマット
計画書は以下の構造で出力してください:
1. 変更の概要(1-2文)
2. 影響範囲の一覧
3. 変更手順(ファイル単位)
4. テスト計画
5. リスク・注意点
Plan Modeの実践ワークフロー
①コードベース分析 → 計画マークダウン生成
Plan Modeでプロンプトを送信すると、まずコードベースの分析が始まります。
Plan> ユーザー認証をセッションベースからJWTベースに移行して
Claude Codeは以下のような計画マークダウンを生成します。
# 認証方式のJWT移行計画
## 概要
セッションベース認証をJWTベースに移行する。
アクセストークン(15分)+ リフレッシュトークン(7日)の構成。
## 影響範囲
- `src/auth/session.ts` → 削除
- `src/auth/jwt.ts` → 新規作成
- `src/middleware/auth.ts` → 大幅修正
- `src/routes/login.ts` → 修正
- `src/routes/refresh.ts` → 新規作成
- `tests/auth/` → 全テスト書き換え
- `package.json` → jsonwebtoken追加
## 変更手順
### Step 1: JWT基盤の構築
- jwt.tsを作成(トークン生成・検証・リフレッシュロジック)
### Step 2: ミドルウェアの更新
- auth.tsをJWT検証に書き換え
### Step 3: ルートの更新
- login.tsでJWT発行に変更
- refresh.tsを新規作成
### Step 4: 旧セッション関連の削除
- session.ts、Redis設定を削除
### Step 5: テストの更新
- 全認証テストをJWTベースに書き換え
## リスク
- ⚠️ 既存のログイン済みユーザーは再ログインが必要
- ⚠️ フロントエンド側のトークン管理も要修正
②計画のレビューと承認フロー
計画が生成されたら、人間がレビューを行います。
y(承認): 計画通りに実装を開始n(却下): 計画を破棄し、新しいプロンプトを入力- 修正指示: 「Step 2のミドルウェア変更で、rate limitingも追加して」のように追加指示を出す
修正指示を出すと、計画が更新されて再度レビュー待ちになります。このイテレーションを何度でも繰り返せるため、実装に入る前に設計の精度を高められるのが大きなメリットです。
③承認後の自動実装
承認後は、計画書のステップに従って自動的にコード変更が実行されます。各ステップの完了時にプログレスが表示されるため、進捗を追跡できます。
Plan Modeの特徴として、計画書自体がコンテキストとして保持されるため、通常モードよりも一貫性のある実装になりやすい点が挙げられます。
Plan Modeが特に有効なユースケース5選
大規模リファクタリング / 新機能設計 / アーキテクチャ変更 等
1. レガシーコードのリファクタリング 影響範囲が広く、変更漏れが致命的になりうるタスク。Plan Modeで全体の変更計画を可視化してから着手することで、手戻りを最小限に抑えられます。
2. 新機能の追加 複数のレイヤー(DB・API・UI)にまたがる機能追加。計画段階でファイル構成やAPI設計を確定させてから実装に入ることで、途中の方針変更を防げます。
3. フレームワーク・ライブラリの移行 React → Next.js、Express → Fastifyのようなフレームワーク移行。依存関係の全体像を把握した上で段階的な移行計画を立てるのに最適です。
4. テストカバレッジの大幅改善 テストがないコードベースに一気にテストを追加する場合。どのモジュールから優先的にテストを書くか、計画を立ててから着手できます。
5. データベーススキーマの変更 マイグレーションの順序、既存データの変換処理、ダウンタイムの最小化——これらの考慮が必要なDB変更は、Plan Modeとの相性が抜群です。
Plan Mode × サブエージェント / Agent Teamsの組み合わせ
Plan Modeの真価は、サブエージェントやAgent Teamsと組み合わせたときに発揮されます。
パターン1: Plan Mode → サブエージェントに分配
Plan Modeで全体計画を立てる
↓
計画をステップごとにサブエージェントに割り当て
↓
並列実行で高速に実装
↓
親エージェントが結果を統合・レビュー
パターン2: Agent Teams内でPlannerロールを設定
// Agent Teamsの設定例
{
"team": [
{ "role": "planner", "mode": "plan", "task": "全体設計" },
{ "role": "implementer", "mode": "normal", "task": "実装" },
{ "role": "reviewer", "mode": "normal", "task": "コードレビュー" }
]
}
この組み合わせにより、「設計→実装→レビュー」のサイクルを1つのコマンドで回すことができます。
詳しくはClaude Code SDK&サブエージェントガイドおよびAgent Teamsガイドを参照してください。
Plan Modeの注意点とベストプラクティス
Plan Modeを効果的に使うためのベストプラクティスを紹介します。
✅ Do:
- 複雑なタスクでは必ずPlan Modeを使う
- 計画の承認前に「見落としがないか」を確認する質問をする
- 計画マークダウンをGitにコミットして記録を残す
- CLAUDE.mdでPlan Mode起動条件を定義しておく
❌ Don’t:
- 1行のバグ修正にPlan Modeを使う(オーバーヘッドが大きい)
- 計画を読まずに自動承認する
- 計画の修正を何十回も繰り返す(3回程度で収束させる)
Anthropic公式ドキュメントでもPlan Modeのベストプラクティスが紹介されています。
コスト面の注意: Plan Modeでは計画立案フェーズで追加のトークンを消費します。ただし、手戻りによる無駄な変更が減るため、トータルコストは通常モードと同等か、むしろ少なくなるケースが多いです。
まとめ — 「いきなりコードを書かない」開発スタイルへ
Plan Modeは、AIコーディングの「とりあえず書いてみる」スタイルから**「設計してから書く」スタイルへの転換**を実現する機能です。
- 計画の可視化: 変更前に影響範囲と手順を把握できる
- レビューポイントの追加: 実装前に人間が設計をチェックできる
- 一貫性のある実装: 計画書がコンテキストとなり、ブレない実装になる
- チーム開発との親和性: 計画マークダウンをレビューに使える
特に、SES案件のように要件の正確な理解と確実な実装が求められる現場では、Plan Modeの価値は大きいと言えます。
まだ使ったことがない方は、次の複雑なタスクでぜひPlan Modeを試してみてください。「いきなりコードを書かない」開発スタイルの効果を実感できるはずです。
SES BASEでは、AIコーディングツールを活かせる開発案件も多数掲載しています。
関連記事: