はじめに
GMOコネクトの永田です。
VSCode 1.106で正式リリースされたCopilot Plan mode、もう試しましたか?
「Agentモードで実装したら思ってたのと違う...」そんな手戻りを、Plan modeは対話的な仕様確認で改善してくれます。
実際に同じタスクで比較検証した結果をレポートします。
まとめ
-
VSCode 1.106でCopilot Plan modeが正式版で利用可能に。
- 実装前に詳細設計相当のタスク分解・仕様確認を行い、曖昧さを「Further Considerations」で対話的に解消することで、実装の手戻りや認識ずれを防ぐ。
-
Plan mode導入により開発フローが「計画策定(Plan)→仕様レビュー→実装(Agent)→ソースレビュー」の2段階に進化。
- 大規模・複雑なタスクでは事前の方針レビューで手戻り削減とレビュー負荷軽減が期待でき、簡潔な要件ならAgentモード単独でよい、という使い分けが重要。
-
実例(APIドキュメント作成)では、Plan modeが出力形式・仕様詳細を事前質問で確認し、合意後にOpenAPI YAML形式で正確に実装。
- Agentモード単独に比べ、仕様のすり合わせと成果物の質向上を実現した。
Github Copilot Plan modeとは?
Plan modeの重要機能
VSCodeのリリースノートから重要機能をピックアップします。
| 重要機能 | 原文(英語) | 実務への影響・価値 |
|---|---|---|
| 複雑なタスクのブレイクダウン | A new plan agent helps developers break down complex tasks step-by-step before any code is written. | 実装前に大規模なタスクを小タスクに分割し、全体像・進め方を可視化。従来属人的だったタスク管理が、誰でも分かる形になり、認知負荷や実装ミスを減らす。 |
| 仕様明確化・事前承認 | When tackling a multi-step implementation, VS Code prompts you with clarifying questions and generates a detailed implementation plan that you approve first, ensuring all requirements and context are captured upfront. | Copilotが仕様の曖昧さ・抜け漏れを事前に質問し明らかにする。合意形成を早い段階で完了でき、仕様認識ずれによる実装のやり直しが減少。従来よりスムーズかつ効率的な開発へ。 |
| 承認済みプランの自動実装・プロセス可視化 | Once you approve the plan, Copilot implements it either locally in VS Code or via cloud agents, giving you greater control and visibility into the development process. | 承認された計画がそのまま自動実装され、進捗・内容を一元的に把握可能。従来手作業やチェックが必要だった部分も自動化され、開発プロセスの統制が強化される。 |
通常の開発でも実施している詳細設計相当の専用モードといった感じです。
Agentに実装を依頼して思ったものと違った、という経験がある方にマッチする機能ではないでしょうか。
Plan mode導入によるCopilot開発フローへの影響
Planモードにより、Copilotの使い方がどう変わりそうか?を図示したのが以下になります。
実装者(Agent mode)の作業前に1段、詳細設計相当(Plan mode)が入っています。
これによって、ソースコードレビューでのレビューの難易度低減や工数抑制だったり、大幅な手戻り発生の改善が期待できます。
大量のソースをいきなり見るより、実装の大まかな方針をレビューする方が、レビューする人はやりやすいですよね。
逆にいうと、実装要件が明確・簡潔で、要件と実装とのトレーサビリティがソースコードやコメントを見れば一目瞭然、というものであれば、Planモードを使わず、いきなりAgentモードだけでも十分ですので、使い分けが重要です。
この辺りは生成AI(Copilotなど)だからというわけではなく、開発での詳細設計の必要性、という普遍的なテーマではあります。
上記の記事に書かれている通り、この辺りのポイントはCopilot Plan modeの利点と一致しますね!
(プログラマー = Agent mode)
- 最も重要な役割は、プログラマーが迷わずに実装できる指示書としての機能です。
- 実際のところ、詳細設計書に求められるのは「実装の方針と処理の流れ」であり、コードレベルの詳細ではありません。
- 詳細設計書は、実装前に設計の妥当性を検証するためのレビュー資料としても機能します。設計段階で問題を発見できれば、実装後の手戻りを防げます。
- システムの保守や改修時に、既存の仕組みを理解するための資料として活用されます。
Plan modeの中身
Plan modeの指示内容はpromptとしてgithubでも参照可能です。
promptのうちPlanに重要なポイントは以下になります。
| 要点 | 原文(英語) | 解説 |
|---|---|---|
| 1. 包括的なコンテキスト収集(80%ルール) | Research the user's task comprehensively using read-only tools. Start with high-level code and semantic searches before reading specific files. Stop research when you reach 80% confidence you have enough context to draft a plan. | 実装前に既存コードベース・関連実装を徹底調査することで、実装ミスや設計の不整合を防ぐ。完璧を求めず80%で次へ進むことで効率性を確保。高レベル→詳細の順でアプローチすることで、全体像を把握してから細部に入る合理的な調査プロセスを実現している |
| 2. 実装との厳格な分離(実装開始の禁止) | You are a PLANNING AGENT, NOT an implementation agent. Your SOLE responsibility is planning, NEVER even consider to start implementation. STOP IMMEDIATELY if you consider starting implementation or switching to implementation mode. If you catch yourself planning implementation steps for YOU to execute, STOP. Plans describe steps for the USER or another agent to execute later. | 「考える」と「作る」を完全に分離することで、計画が不十分なまま実装に突入する事態を防ぐ。AIが自己監視して実装モードへの逸脱を防ぐ仕組みにより、計画の質が向上。従来のAgent モードでの「思ったものと違う実装」を防ぐ根本的な対策となっている |
| 3. 簡潔で実行可能な計画スタイル、Open Questions必須 | The user needs an easy to read, concise and focused plan. Steps {3–6 steps, 5–20 words each}: 1. {Succinct action starting with a verb, with file links and symbol references.} Open Questions {1–3, 5–25 words each}: 1. {Clarifying question? Option A / Option B / Option C} IMPORTANT: DON'T show code blocks, but describe changes and link to relevant files and symbols. NO manual testing/validation sections unless explicitly requested. ONLY write the plan, without unnecessary preamble or postamble. | 読みやすく、レビューしやすい構造化された計画書フォーマット。Open Questionsにより仕様の曖昧さを明示的に質問し、選択肢を提示することで早期の合意形成を促進。コードブロックを禁止することで、詳細実装ではなく「何をするか」に焦点を当てた計画に。無駄な前置き・後置きを排除し、必要な情報のみを簡潔に提示する設計 |
前回の記事にて、Agent modeで実装方針策定させた時と同じようなポイント(コードブロック禁止)も入っていますね。また、実装にあたってのOpen Questionsによって、早期に仕様の認識ずれや漏れなどの把握が可能です。
前回の記事:
Plan modeを試してみた(要件→APIドキュメント作成編)
では、早速Plan modeを試してみます。ModelはClaude Sonnet 4.5を利用しています。
試したprompt
まずは、前回の記事と全く同じprompt(APIドキュメント作成)で試してみましょう。
( copilot-instructions.md は未導入の状態 )
5 tuples(src ip/port, dst src/port, protocol)を受け取り、
5 tuplesにマッチするxFlowレコードを集約した結果を返却するAPIドキュメントを新規作成。
既存のプログラムや仕様書とは完全に独立。
返却値は、通過したRouter一覧、next_hopとする。
今回の依頼事項が詳細設計書作成相当ですので、AgentでもPlanでも同じような結果になり効果が分かりにくいかも?😇 と一抹の不安を感じながら、試してみました。
Agent modeの場合
前回の記事の通り、Markdownのみで冗長気味に書いてくれます。
- APIドキュメントだがOpenAPIではなく、Markdownのみ。request/response paramもJSONでのサンプルあり
- API呼び出し方の具体的な手順(curl、Python、JavaScript)など、冗長な記載あり
Plan modeの場合
いきなりMarkdownを出力するのではなく「Further Considerations」で、確認をはさんでくれます。
ドキュメントのフォーマットなども確認してくれていますね。
「Further Considerations」に回答してみましょう。
Documentation format: --> OpenAPI 3.x YAML
Response detail level --> just router IDs and next_hops
Error responses --> Define standard error codes for invalid 5-tuples, no matching records, etc.
仕様の不明瞭な点を追加で聞いてくれています。
追加で回答してみましょう。
IP address format: Accept both IPv4 and IPv6
Protocol field: Use integer (IANA protocol number)
Request limits: Define max array size for 5-tuples (e.g., 100 per request)
Authentication/Authorization: Not support on this PoC
Rate limiting: Not support on this PoC
Plan is ready for implementation. Please confirm to proceed.
とあり「Further Considerations」がなくなっていますね!
Planで十分に仕様の確認が終わったということで、「Start Implementation」ボタンを押してみます。
できました!
OpenAPI yamlで書かれており、事前に確認があった仕様(IPv4/IPv6両方対応とかprotocolのIANA number)も反映されていますね。
曖昧さの残る作業依頼については、Plan modeの利用により作業方針・実装方針を事前にすり合わせてくれることにより、その後のアウトプットの質向上や、レビュー工数の低減に寄与してくれそう、という実感が持てました😊
Plan modeは良さげなので、今後も積極的に使っていきたいと思います!
(再掲)まとめ
-
VSCode 1.106でCopilot Plan modeが正式版で利用可能に。
- 実装前に詳細設計相当のタスク分解・仕様確認を行い、曖昧さを「Further Considerations」で対話的に解消することで、実装の手戻りや認識ずれを防ぐ。
-
Plan mode導入により開発フローが「計画策定(Plan)→仕様レビュー→実装(Agent)→ソースレビュー」の2段階に進化。
- 大規模・複雑なタスクでは事前の方針レビューで手戻り削減とレビュー負荷軽減が期待でき、簡潔な要件ならAgentモード単独でよい、という使い分けが重要。
-
実例(APIドキュメント作成)では、Plan modeが出力形式・仕様詳細を事前質問で確認し、合意後にOpenAPI YAML形式で正確に実装。
- Agentモード単独に比べ、仕様のすり合わせと成果物の質向上を実現した。
最後に、GMOコネクトでは研究開発や国際標準化に関する支援や技術検証をはじめ、幅広い支援を行っておりますので、何かありましたらお気軽にお問合せください。





