Planモードとは

Planモードって普通のモードと何が違うの?

Planモードでは、Claude Codeがコードを書かずに「計画だけ」を立ててくれるんだ。設計図を描いてから建築するのと同じ考え方だね。
Planモードは、Claude Codeの実行モードのひとつ。通常モードではコードの読み書きやコマンド実行を行うが、Planモードではコードベースの読み取りと分析のみを行い、実装計画を立てる。
計画なしで実装を始めると、以下のような手戻りが発生しやすい。
- 前提の認識ズレで根本から作り直し
- 影響範囲の見落としで後から修正
- 複数ファイルの変更が中途半端な状態で止まる
Planモードで「何を」「なぜ」「どうやって」を事前に整理することで、これらの問題を防げる。
他の上級機能については上級者ガイドを参照してほしい。
3つのモードの違い
Claude Codeには3つの実行モードがある。
| モード | できること | ファイル編集 | 主な用途 |
|---|---|---|---|
| 通常モード | 全操作 | 許可制 | 一般的な作業 |
| Auto-Acceptモード | 全操作 | 自動許可 | 信頼できるタスクの自動実行 |
| Planモード | 読み取りのみ | 不可 | 設計・調査・計画 |
モードの切り替え
Shift+Tabで3つのモードを順に切り替えられる。
通常モード → Auto-Acceptモード → Planモード → 通常モード
また、コマンドラインオプションでも指定可能。
# Planモードで起動
claude --plan
Planモードの基本的な使い方

どういうときにPlanモードを使えばいいの?

目安は「2つ以上のファイルに影響する変更」のとき。1ファイルの小さな修正ならPlanモードは不要だけど、複雑な変更では計画を立てたほうが圧倒的に効率的だよ。
Planモードが効果的な場面
- 新機能の追加(複数ファイルにまたがる実装)
- 大規模なリファクタリング
- アーキテクチャの変更
- バグの原因調査(まず調査してから修正)
- 既存コードの理解(新しいプロジェクトへの参加時)
Planモードが不要な場面
- 1ファイル内の小さな修正
- 明確なバグの修正(原因が分かっている場合)
- ドキュメントの更新
- 定型的な作業(テスト追加など)
使い方の流れ
- Shift+TabでPlanモードに切り替え
- 「ユーザー認証機能を追加する計画を立てて」のように指示
- Claude Codeがコードベースを分析し、計画を提示
- 計画を確認し、質問や修正があれば対話で調整
- 計画に納得したら、通常モードに切り替えて実装開始
効果的な計画の立て方

いい計画を立てるにはどう指示すればいいの?

ポイントは「成果物」と「制約」を明確にすることだよ。
計画を依頼するプロンプトの例
ユーザー認証機能を追加する計画を立ててください。
要件:
- メールアドレス + パスワードでのログイン
- JWTトークンによるセッション管理
- パスワードリセット機能
制約:
- 既存のUserモデルを拡張する(新規テーブルは最小限)
- 既存のAPIエンドポイントに影響を与えない
- テストも計画に含める
以下の形式で計画を出力してください:
1. 変更が必要なファイルの一覧
2. 各ファイルの変更内容
3. 実装の順序(依存関係を考慮)
4. テスト計画
5. リスクと対策
計画に含めるべき要素
| 要素 | 説明 |
|---|---|
| 変更ファイル一覧 | 影響を受けるすべてのファイル |
| 変更内容 | 各ファイルで何を変えるか |
| 実装順序 | 依存関係を考慮した作業順 |
| テスト計画 | どのテストを追加するか |
| リスク | 想定されるリスクと対策 |
SPEC.mdへの書き出し

計画が決まったら、ファイルに書き出しておくのがおすすめだよ。
Planモードで立てた計画は、SPEC.mdやplans/ディレクトリにファイルとして保存しておくと以下のメリットがある。
- コンテキストウィンドウを節約できる(長い会話履歴を保持しなくてよい)
- 実装中にいつでも計画を参照できる
- 新しいセッションでも計画を引き継げる
- チームメンバーとの共有が容易
書き出しの指示例
この計画をSPEC.mdに書き出してください。
以下を含めてください:
- 目的
- 変更ファイル一覧
- 実装手順(チェックリスト形式)
- テスト計画
- 完了条件
実装時の参照方法
計画を書き出した後、通常モードに切り替えて以下のように指示する。
SPEC.mdの計画に従って、ステップ1から実装を開始してください。
各ステップが完了したらチェックリストを更新してください。
この方法により、Claude Codeが計画に沿って体系的に作業を進めてくれる。
計画→実装の実践パターン
パターン1:小規模な機能追加
- Planモードで計画を口頭確認(ファイル書き出し不要)
- 通常モードに切り替えて実装
- 計画は会話の文脈として保持
パターン2:中規模な機能追加
- Planモードで計画をSPEC.mdに書き出し
- 通常モードで計画に沿って実装
- 進捗をチェックリストで管理
パターン3:大規模なリファクタリング
- Planモードで全体計画をSPEC.mdに書き出し
- 計画をフェーズに分割
- 各フェーズをWorktreeやマルチエージェントで並列実行
- フェーズごとにレビューしてからマージ

パターン3はかなり高度だね。

そうだね。でもPlanモードで全体像を把握してから分割するのが、大規模タスクを安全に進めるコツなんだ。
プロンプトでのPlanモード風の使い方
Planモードに切り替えなくても、プロンプトの書き方で計画的な進め方を促すことができる。
以下のタスクについて、まず計画を立ててください。
計画を見せてもらってから、実装に進んでください。
実装前に必ず確認を取ってください。
タスク: ユーザープロフィール画面の追加
ただし、この方法はプロンプトでの「お願い」であるため、Planモードほど厳密に読み取り専用が保証されるわけではない。確実に計画だけを行いたい場合は、Planモードを使うことを推奨する。
注意点
- Planモードでも読み取り操作(ファイル読み込み、grep検索など)はトークンを消費する
- 計画が長くなりすぎると、コンテキストウィンドウを圧迫するため、SPEC.mdへの書き出しが有効
- 計画は完璧を目指す必要はない。80%程度の精度で実装を開始し、途中で調整するのが現実的
- 小さなタスクにPlanモードを使うと、オーバーヘッドが大きくなるため注意
まとめ
Planモードは、複雑なタスクを安全かつ効率的に進めるための設計ファースト手法。主なポイントは以下の通り。
- 2つ以上のファイルに影響する変更ではPlanモードを検討する
- Shift+TabまたはCLIオプションで切り替え可能
- 計画はSPEC.mdに書き出してコンテキストを節約する
- タスクの規模に応じて計画の詳細度を調整する
- 大規模タスクでは計画→分割→並列実行のパターンが効果的
まずは次の機能追加やリファクタリングで、実装前にPlanモードで計画を立てるところから試してみてほしい。


コメント