---
title: "Agent Mode 总览"
description: "说明 VS Code agents 的类型、Ask Plan Agent 分工、权限级别、handoff 和团队使用边界。"
verifiedAt: "2026-05-06"
---

VS Code 官方文档把 agent 定义为能自主完成编程任务的 AI 助手。你给高层目标，它会拆步骤、跨文件编辑、运行命令，并在失败时自我修正。

这和普通 Chat 的差异很大：普通 Chat 主要回答；Agent Mode 会行动。因此第一课不是“怎么让它更聪明”，而是“把行动权限交给谁、交多少、怎么验收”。

> [!TIP]
> **阅读目标**：读完本章，你应该能区分 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 运行。

```mermaid
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 写代码。
- 没有测试入口、没有回滚路径的高风险任务。

<details>
<summary>深读：为什么 agent 类型要按验收面选择</summary>

本地 agent 的验收面是 VS Code 的 pending edits、terminal 和本地测试；Cloud agent 的验收面是 branch、session log 和 PR。入口不同，上下文和回滚方式也不同。

所以不要只问“哪个 agent 更强”。应该问：这个任务最后在哪里 review，失败时在哪里回退。
</details>

## 本章自检

完成本章后，用这 4 个问题检查：

1. 当前任务需要本地上下文、后台执行、PR 协作，还是特定 provider？
2. 当前应该用 Ask、Plan 还是 Agent？
3. 权限级别是否匹配任务风险？
4. 结果应该回到 pending edits、terminal output、PR 还是 session log 验收？

通过标准：你能先选 agent 类型和权限，再启动任务。

## 官方来源

- [Using agents in Visual Studio Code](https://code.visualstudio.com/docs/copilot/agents/overview) —— VS Code 官方 agents 总览。
- [Asking GitHub Copilot questions in your IDE](https://docs.github.com/en/copilot/how-tos/chat-with-copilot/chat-in-ide) —— GitHub 官方 IDE Chat 文档，覆盖 Plan mode 和 Agent mode。
- [Managing cloud agents](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/manage-agents) —— GitHub 官方 cloud agent session 管理文档。

## 接下来去哪

<Cards>
  <Card title="计划模式" description="复杂任务先学会让 agent 研究和出计划。" href="/docs/github-copilot/official/03-vscode-agent-mode/planning" />
  <Card title="Agent 工具" description="继续理解工具类型、工具选择和批准机制。" href="/docs/github-copilot/official/03-vscode-agent-mode/agent-tools" />
</Cards>
