AI 程式設計教程中文版
官方教程中文版VS Code Agent Mode

Agent Mode 總覽

說明 VS Code agents 的型別、Ask Plan Agent 分工、許可權級別、handoff 和團隊使用邊界。

VS Code 官方文件把 agent 定義為能自主完成程式設計任務的 AI 助手。你給高層目標,它會拆步驟、跨檔案編輯、執行命令,並在失敗時自我修正。

這和普通 Chat 的差異很大:普通 Chat 主要回答;Agent Mode 會行動。因此第一課不是“怎麼讓它更聰明”,而是“把行動許可權交給誰、交多少、怎麼驗收”。

閱讀目標:讀完本章,你應該能區分 local agent、Copilot CLI、Cloud agent、third-party agent,並知道 Ask、Plan、Agent 的邊界。

1. Agent 型別

VS Code 官方總覽把 agent 型別按執行位置和互動方式分開:

  • Local agent:在 VS Code agent loop 中互動執行,訪問本地 workspace、tools 和 models。
  • Copilot CLI:在本機後臺執行,可用於後臺任務和隔離實驗。
  • Cloud agent:在 GitHub 遠端環境執行,適合 PR 協作和團隊 review。
  • Third-party agent:透過 Anthropic、OpenAI 等 provider 的 harness 或 SDK 執行。
flowchart TD
    Task["任務"] --> Where{"需要哪裡執行?"}
    Where -->|本地編輯器上下文| Local["Local agent"]
    Where -->|本機後臺 / CLI| CLI["Copilot CLI"]
    Where -->|PR / GitHub 協作| Cloud["Cloud agent"]
    Where -->|特定 provider| Third["Third-party agent"]
    Local --> Review["VS Code pending edits"]
    CLI --> Diff["VS Code diff / terminal session"]
    Cloud --> PR["Pull request review"]
    Third --> Policy["團隊自定義策略"]

    style Local fill:#dbeafe,stroke:#2563eb,stroke-width:2px
    style Cloud fill:#dcfce7,stroke:#16a34a,stroke-width:2px
    style Policy fill:#fef3c7,stroke:#d97706,stroke-width:2px

2. Ask、Plan、Agent 怎麼選

VS Code 有三個 built-in agents:

  • Ask:回答程式碼概念、程式碼庫問題或 VS Code 使用問題,不做檔案修改。
  • Plan:在寫程式碼前生成結構化實施計劃,計劃合適後交給 implementation agent。
  • Agent:自主計劃並實施,跨檔案編輯、執行 terminal commands、呼叫工具。

選擇規則:

  • 理解問題、查程式碼、解釋錯誤:先用 Ask。
  • 需求不清、涉及架構、影響多模組:先用 Plan。
  • 範圍清楚、需要真實改檔案和跑測試:用 Agent。
  • 需要後臺執行或 PR:考慮 CLI 或 Cloud agent。

3. 許可權級別

VS Code 官方總覽說明,agent 可以不同程度自主呼叫工具和終端命令。許可權 picker 可以從“每次批准”到“完全自動”之間調整。

常見層級:

  • Default Approvals:按 VS Code 設定執行;預設只有只讀和安全工具不需要顯式批准。
  • Bypass Approvals:自動批准工具呼叫,但 agent 仍可能問澄清問題。
  • Autopilot Preview:自動批准工具呼叫、自動回答問題,並持續執行直到任務完成。

商業專案預設不應直接給 Bypass 或 Autopilot。先讓團隊熟悉工具、diff 和回復,再逐步放開。

4. Handoff 不是失敗

VS Code 官方提到可以把 session hand off 到其他 agent。典型流程:

  1. Local agent 先 Plan。
  2. Copilot CLI 做後臺 proof of concept。
  3. Cloud agent 生成 PR。
  4. 團隊在 GitHub 上 review。

這不是換工具失敗,而是把任務交給最合適的執行面。

5. 適合和不適合

適合 Local Agent:

  • 需要當前編輯器上下文。
  • 要看即時 diagnostics、terminal output 或本地瀏覽器。
  • 你希望逐步批准工具呼叫。

適合 Cloud agent:

  • 任務清晰,能透過 PR review 驗收。
  • 你希望它在後臺執行。
  • 需要團隊協作、分支和 reviewer。

暫時不適合:

  • 生產部署、刪除資料、雲資源修改。
  • 需求不清卻直接讓 agent 寫程式碼。
  • 沒有測試入口、沒有回復路徑的高風險任務。
深讀:為什麼 agent 型別要按驗收面選擇

本地 agent 的驗收面是 VS Code 的 pending edits、terminal 和本地測試;Cloud agent 的驗收面是 branch、session log 和 PR。入口不同,上下文和回復方式也不同。

所以不要只問“哪個 agent 更強”。應該問:這個任務最後在哪裡 review,失敗時在哪裡回退。

本章自檢

完成本章後,用這 4 個問題檢查:

  1. 當前任務需要本地上下文、後臺執行、PR 協作,還是特定 provider?
  2. 當前應該用 Ask、Plan 還是 Agent?
  3. 許可權級別是否匹配任務風險?
  4. 結果應該回到 pending edits、terminal output、PR 還是 session log 驗收?

透過標準:你能先選 agent 型別和許可權,再啟動任務。

官方來源

接下來去哪

本頁目錄