計劃模式
解釋 VS Code Plan agent 如何在寫程式碼前研究任務、提出計劃、追問開放問題並交給 implementation agent。
Plan agent 的價值是把“馬上改程式碼”變成“先看清任務”。VS Code 官方文件說明,Plan agent 可以在實現前建立詳細的實施計劃(implementation plan),並用 todo lists 跟蹤目標和進度。
GitHub IDE Chat 文件也強調:Plan mode 會用只讀工具和程式碼庫分析研究任務,拆成可執行步驟,列出開放問題;在你 review 和批准前,不會直接改程式碼。
閱讀目標:讀完本章,你應該能在複雜任務裡先讓 Copilot 計劃,再決定是否交給 Agent 執行。
1. 什麼時候先 Plan
適合 Plan:
- 新功能影響多個模組。
- 重構涉及架構或公共 API。
- bug 原因不明確。
- 需要先找測試入口。
- 需要團隊先審方案再改檔案。
- 任務涉及鑑權、支付、資料模型、部署指令碼。
不需要 Plan:
- 單檔案小改。
- 你已經明確要改哪幾行。
- 只是解釋程式碼或查概念。
flowchart TD
Task["複雜任務"] --> Plan["Plan agent"]
Plan --> Research["只讀研究程式碼庫"]
Research --> Questions["提出開放問題"]
Questions --> Draft["計劃草稿"]
Draft --> Review{"計劃是否合格?"}
Review -->|否| Iterate["補約束 / 縮範圍 / 回答問題"]
Iterate --> Research
Review -->|是| Implement["Start Implementation"]
Implement --> Agent["Implementation agent"]
style Plan fill:#dbeafe,stroke:#2563eb,stroke-width:2px
style Draft fill:#fef3c7,stroke:#d97706,stroke-width:2px
style Implement fill:#dcfce7,stroke:#16a34a,stroke-width:2px
2. 官方使用路徑
VS Code 官方 Planning 頁面給出的路徑可以收斂為:
- 開啟 Chat view。
- 從 agents dropdown 裡選擇 Plan。
- 輸入高層任務,例如 feature、refactoring、bug。
- 回答 agent 提出的澄清問題。
- 審查 plan summary、implementation steps 和 verification steps。
- 反覆追問和調整,直到計劃滿足要求。
- 最後選擇 start implementation,或把 plan 開啟到 editor 裡繼續審。
也可以用 /plan slash command 直接開始規劃。
3. 一個好計劃應該包含什麼
商業專案裡的計劃至少要覆蓋:
- 任務目標和非目標。
- 影響檔案和目錄。
- 關鍵風險和開放問題。
- 分步驟實施路徑。
- 每一步的驗證方式。
- 失敗時的回復方式。
- 是否需要人工 review gate。
如果 plan 只寫“修改相關檔案、執行測試”,說明它還沒有真正理解專案。
4. Plan memory 的邊界
VS Code 官方文件說明,Plan agent 會把 implementation plan 儲存到 session memory file:/memories/session/plan.md。可以透過 Chat: Show Memory Files 命令檢視 plan.md。
注意:session memory 會在 conversation 結束後清除。需要長期保留的計劃應該放進 issue、PR description、專案文件或專門的設計記錄。
5. Customize planning
官方頁面還提到可以定製 planning:
- 建立 custom planning agent,加入團隊架構規則或交付物要求。
- 用設定選擇 planning 和 implementation 使用的模型。
- 給 plan agent 增加額外工具,例如透過 MCP 接入內部資料來源。
這些能力適合成熟團隊,但不要在沒有基本審查流程前過早複雜化。
6. 推薦 prompt
使用 Plan agent。
任务:重构登录错误处理。
要求:
先只读分析,不改文件。
列出影响模块和测试入口。
指出开放问题。
给出分步计划和回滚方式。深讀:Plan 不是拖慢速度,而是降低返工
Agent 直接動手的速度很快,但如果方向錯了,後續 review 會變成拆錯 diff。Plan 把需求、檔案範圍、風險和測試入口提前暴露出來,尤其適合商業專案裡的多人協作。
計劃階段不追求華麗,而追求可執行、可審查、可回復。
本章自檢
完成本章後,用這 4 個問題檢查:
- Plan 是否說明了目標、非目標和影響範圍?
- 是否列出了開放問題,而不是假設一切都清楚?
- 是否包含 verification steps 和回復方式?
- 是否決定了繼續本地 Agent、Copilot CLI 還是 Cloud agent?
透過標準:計劃能被另一個人拿去 review,並能指導後續 implementation。
官方來源
- Planning with agents in VS Code —— VS Code 官方 Plan agent 文件。
- Asking GitHub Copilot questions in your IDE —— GitHub 官方 IDE Chat 文件,說明 Plan mode 不會在計劃批准前改程式碼。
- Using agents in Visual Studio Code —— VS Code 官方 agents 總覽,用於理解 Plan 與 Agent 的關係。