VS Code 中的 GitHub Copilot 速查表
Visual Studio Code 中的 GitHub Copilot 提供自主智能体、行内建议、聊天和智能操作。智能体可在本地、后台或云端并行计划、实现并验证跨多个文件的更改。您可以选择多种 AI 模型,通过 MCP 连接外部工具,并为团队的工作流定制智能体。此速查表为您提供了所有功能的快速概览。
如果您还没有 Copilot 订阅,您可以通过注册 Copilot 免费计划来免费使用 Copilot,并获得每月的内联建议和 AI 配额。
自 2026 年 4 月 20 日起,Copilot Pro、Copilot Pro+、Max 和学生计划的新注册已暂停。
必备快捷键
- ⌃⌘I (Windows, Linux Ctrl+Alt+I) - 打开聊天视图
- ⌘I (Windows, Linux Ctrl+I) - 在聊天视图中输入语音聊天提示词
- ⌘N (Windows, Linux Ctrl+N) - 在聊天视图中开始新的聊天会话
- ⇧⌘I (Windows Ctrl+Shift+I, Linux Ctrl+Shift+Alt+I) - 在聊天视图中切换使用智能体
- ⌘I (Windows, Linux Ctrl+I) - 在编辑器或终端中启动行内聊天
- ⌘I (Windows, Linux Ctrl+I) (按住) - 启动行内语音聊天
- Tab - 接受行内建议或导航到下一个编辑建议
- Escape - 放弃行内建议
在 VS Code 中访问 AI
-
使用自然语言开始聊天对话
- 聊天视图 (⌃⌘I (Windows, Linux Ctrl+Alt+I)):在辅助侧边栏中进行持续的聊天对话
- 编辑器或终端中的行内聊天 (⌘I (Windows, Linux Ctrl+I)):在编码过程中提问
- 快速聊天 (⇧⌥⌘L (Windows, Linux Ctrl+Shift+Alt+L)):无需离开当前任务即可进行快速问答
-
编辑器中的 AI 功能
- 行内建议:在您输入时获取建议,按 Tab 键接受建议
- 编辑上下文菜单操作:访问常见的 AI 操作,例如解释或修复代码、生成测试或审查选定的文本
- 代码操作:获取编辑器代码操作(灯泡图标)以修复 Linting 和编译器错误
-
VS Code 中特定任务的 智能操作
- 生成提交信息以及合并请求的标题和描述
- 修复测试错误
- 语义文件搜索建议
VS Code 聊天体验
发起自然语言聊天对话以获取编码任务帮助。例如,请求解释代码块或编程概念、重构代码或实现新功能。了解更多关于使用 Copilot Chat 的信息。
| 操作 | 描述 |
|---|---|
| ⌃⌘I(Windows、Linux Ctrl+Alt+I) | 在辅助侧边栏中打开 聊天视图。 |
| ⌘I(Windows、Linux Ctrl+I) | 启动 行内聊天以在编辑器或终端中进行对话。 |
| ⇧⌥⌘L(Windows、Linux Ctrl+Shift+Alt+L) | 打开 快速聊天,无需打断您的工作流。 |
| ⌘N (Windows、Linux Ctrl+N) | 在聊天视图中开始新的聊天会话。 |
| 在聊天视图中切换不同的 智能体。 | |
| ⌥⌘. (Windows, Linux Ctrl+Alt+.) | 显示模型选择器,为聊天 选择不同的 AI 模型。 |
| 上下文窗口控制 | 聊天输入框中的视觉指示器,显示 上下文窗口使用情况。悬停可查看令牌 (token) 总数及各分类的详细分布。 |
添加上下文... |
为您的 聊天提示词附加不同类型的上下文。 |
/ 命令 |
使用 斜杠命令处理常见任务,或调用 可重用的聊天提示词。 |
# 提及 |
引用常用工具或聊天变量,在提示词中 提供上下文。 |
@ 提及 |
引用 聊天参与者以处理特定领域的请求。 |
| 编辑 () | 编辑之前的聊天提示词并撤销更改。 |
| 历史记录 () | 访问您的聊天会话历史记录。 |
| 队列或引导 | 在请求运行时发送跟进消息。您可以选择将消息排队、引导当前请求,或停止并立即发送。 |
| 语音 () | 使用语音输入聊天提示词(语音聊天)。聊天响应将被大声读出。 |
| KaTeX | 在聊天响应中渲染数学公式。通过 chat.math.enabled 启用。右键点击数学表达式可复制源表达式。 |
| Mermaid | 在聊天响应中渲染 Mermaid 图表。通过 mermaid-chat.enabled 启用。右键点击图表可复制源代码。 |
提示
- 使用
#提及功能为您的聊天提示词添加更多上下文。- 保持具体和简洁,并通过后续提问获得最佳结果。
- 选择适合您特定任务的内置智能体或自定义智能体。
为提示词添加上下文
通过为 聊天提示词提供上下文,获得更相关的响应。可选择多种上下文类型,例如文件、符号、编辑器选区、源代码管理提交、测试失败等。
| 操作 | 描述 |
|---|---|
| 添加上下文 | 打开“快速选择”以挑选与您聊天提示词相关的上下文。可选择工作区文件、符号、当前编辑器选区、终端选区等。 |
| 拖放文件 | 从资源管理器或搜索视图拖放文件,或将编辑器标签页拖入聊天视图。 |
| 拖放文件夹 | 将文件夹拖入聊天视图以附加其中的文件。 |
| 拖放问题 | 从“问题”面板拖放项目。 |
#<file|folder|symbol> |
输入 #,后跟文件、文件夹或符号名称,将其添加为聊天上下文。 |
# 提及 |
输入 #,后跟 聊天工具以添加特定的上下文类型或工具。 |
聊天工具
在聊天中使用 工具来完成专门任务。例如列出目录中的文件、编辑工作区中的文件、运行终端命令、获取终端输出等。
VS Code 提供内置工具,您还可以使用 MCP 服务器 和 扩展 中的工具扩展聊天功能。了解更多关于 工具类型 的信息。
下表列出了 VS Code 内置工具
| 聊天变量/工具 | 描述 |
|---|---|
#agent (工具集) |
将任务委托给其他 智能体。 |
#agent/runSubagent |
在隔离的 子智能体上下文 中运行任务。有助于改进主智能体线程的上下文管理。 |
#browser (工具集) |
(实验性) 与 集成浏览器 中的页面交互:导航、读取页面内容、截图、点击、输入、悬停、拖动和处理对话框。通过 workbench.browser.enableChatTools 启用。 |
#edit (工具集) |
允许在工作区中进行修改。 |
#edit/createDirectory |
在工作区中创建新目录。 |
#edit/createFile |
在工作区中创建新文件。 |
#edit/editFiles |
对工作区中的文件应用编辑。 |
#edit/editNotebook |
对 Notebook 进行编辑。 |
#execute (工具集) |
在您的机器上执行代码和应用程序。 |
#execute/createAndRunTask |
在工作区中创建并运行新 任务。 |
#execute/getTerminalOutput |
获取在工作区中运行终端命令的输出。 |
#execute/runInTerminal |
在集成终端中运行 Shell 命令。 |
#execute/runNotebookCell |
运行 Notebook 单元格。 |
#execute/testFailure |
获取单元测试失败信息。在运行和诊断 测试 时非常有用。 |
#githubRepo |
对 GitHub 存储库进行语义搜索以查找相关源代码片段。使用 owner/repo 指定存储库。 |
#githubTextSearch |
在 GitHub 存储库或组织中进行文本搜索,查找包含特定关键字或代码模式的文件。 |
#newWorkspace |
创建新工作区。 |
#read (工具集) |
读取您工作区中的文件。 |
#read/getNotebookSummary |
获取 Notebook 单元格列表及其详细信息。 |
#read/problems |
将“问题”面板中的工作区问题添加为上下文。在修复代码或调试时非常有用。 |
#read/readFile |
读取工作区中文件的内容。 |
#read/readNotebookCellOutput |
读取 Notebook 单元格执行的输出。 |
#read/terminalLastCommand |
获取上一次运行的终端命令及其输出。 |
#read/terminalSelection |
获取当前的终端选区。 |
#search (工具集) |
启用在当前工作区中搜索文件。 |
#search/changes |
源代码管理更改列表。 |
#search/codebase |
在当前工作区中执行代码搜索,自动为聊天提示词查找相关上下文。 |
#search/fileSearch |
使用 Glob 模式在工作区中搜索文件,并返回其路径。 |
#search/listDirectory |
列出工作区中目录下的文件。 |
#search/textSearch |
在文件中查找文本。 |
#search/usages |
“查找所有引用”、“查找实现”和“转到定义”的组合。 |
#selection |
获取当前的编辑器选区(仅在选中文字时可用)。 |
#todos |
使用待办事项列表跟踪聊天请求的实现与进度。 |
#vscode/askQuestions |
使智能体能够使用交互式问题轮播组件提出澄清性问题。 |
#vscode/extensions |
搜索并咨询有关 VS Code 扩展的信息。例如,“如何开始使用 Python #extensions?” |
#vscode/getProjectSetupInfo |
提供搭建不同类型项目的说明和配置。 |
#vscode/installExtension |
安装 VS Code 扩展。 |
#vscode/runCommand |
运行 VS Code 命令。例如,“启用禅模式 #runCommand”。 |
#vscode/VSCodeAPI |
咨询有关 VS Code 功能和扩展开发的问题。 |
#web (工具集) |
访问网页内容。 |
#web/fetch |
获取给定网页的内容。例如,“总结 #web/fetch code.visualstudio.com/updates”。 |
斜杠命令
斜杠命令是聊天中特定功能的快捷方式。您可以使用它们快速执行操作,例如修复问题、生成测试或解释代码。
| 斜杠命令 | 描述 |
|---|---|
/doc |
从编辑器行内聊天生成代码文档注释。 |
/explain |
解释代码块、文件或编程概念。 |
/fix |
请求修复代码块或解决编译器/Linting 错误。 |
/tests |
为编辑器中的全部或选定方法和函数生成测试。 |
/setupTests |
获取配置代码测试框架的帮助。获取相关测试框架的推荐、安装和配置步骤,以及 VS Code 测试扩展的建议。 |
/clear |
在聊天视图中开始新的聊天会话。 |
/compact |
通过摘要压缩对话上下文。当对话内容过长超出模型上下文窗口时非常有用。 |
/fork |
将当前聊天会话分叉为一个继承完整对话历史的新独立会话。了解更多关于 分叉聊天会话 的信息。 |
/debug |
显示聊天调试视图以 检查聊天日志进行故障排除。 |
/troubleshoot |
请求 AI 分析当前聊天会话的 智能体调试日志。可选择包含 #session 来选择并诊断之前的聊天会话。例如,/troubleshoot 我使用了多少令牌? 或 /troubleshoot 列出你在 #session 中尝试加载自定义项的所有路径。需要 github.copilot.chat.agentDebugLog.enabled 启用。 |
/new |
搭建一个新的 VS Code 工作区或文件。使用自然语言描述您需要的项目/文件类型,并在创建前预览搭建内容。 |
/newNotebook |
根据您的需求搭建一个新的 Jupyter Notebook。使用自然语言描述 Notebook 应包含的内容。 |
/init |
根据您的项目结构和编码模式生成或更新工作区说明(copilot-instructions.md 或 AGENTS.md)。 |
/plan |
为复杂的编码任务创建详细的实现计划。调研需求、提出澄清问题,并生成包含步骤、验证和决策的结构化计划。 |
/search |
为搜索视图生成搜索查询。使用自然语言描述您想要搜索的内容。 |
/startDebugging |
生成 launch.json 调试配置文件并从聊天视图启动调试会话。 |
/agents |
配置您的 自定义智能体。 |
/hooks |
配置您的 挂钩 (hooks)。 |
/instructions |
配置您的 自定义说明。 |
/prompts |
配置您的 可重用提示词文件。 |
/skills |
配置您的 智能体技能。 |
/create-prompt |
在智能体模式下,通过 AI 协助生成 提示词文件。 |
/create-instruction |
在智能体模式下,通过 AI 协助生成 说明文件。 |
/create-skill |
在智能体模式下,通过 AI 协助生成 智能体技能。 |
/create-agent |
在智能体模式下,通过 AI 协助生成 自定义智能体。 |
/create-hook |
在智能体模式下,通过 AI 协助生成 挂钩配置。 |
/yolo/autoApprove |
启用所有工具调用的 全局自动批准 ( chat.tools.global.autoApprove 启用)。首次使用时会显示警告对话框。 |
/disableYolo/disableAutoApprove |
禁用所有工具调用的 全局自动批准。 |
/<skill name> |
在聊天中运行 智能体技能。例如,如果您有一个名为 webapp-testing.md 的技能文件,可以通过输入 /webapp-testing 来运行它。 |
/<prompt name> |
在聊天中运行 可重用提示词。 |
聊天参与者
使用聊天参与者处理聊天中的领域特定请求。聊天参与者以 @ 为前缀,可用于询问特定主题的问题。VS Code 提供内置的聊天参与者,如 @github、@terminal 和 @vscode,扩展程序也可以提供额外的参与者。
| 聊天参与者 | 描述 |
|---|---|
@github |
使用 @github 参与者咨询有关 GitHub 存储库、问题、合并请求等问题。获取更多关于 可用 GitHub 技能 的信息。示例: @github 分配给我的未结合并请求有哪些?,@github 显示 @dancing-mona 最近合并的 PR |
@terminal |
使用 @terminal 参与者询问有关集成终端或 Shell 命令的问题。示例: @terminal 列出此工作区中最大的 5 个文件 |
@vscode |
使用 @vscode 参与者询问有关 VS Code 功能、设置和 VS Code 扩展 API 的问题。示例: @vscode 如何启用自动换行? |
使用智能体 (Agents)
使用 智能体时,您可以使用自然语言指定高层任务,让 AI 自主推理请求、规划工作并对代码库应用更改。智能体结合了代码编辑和工具调用来完成您指定的任务。在处理请求时,它会监视编辑和工具的结果,并进行迭代以解决出现的任何问题。
| 操作 | 描述 |
|---|---|
| ⇧⌘I (Windows Ctrl+Shift+I, Linux Ctrl+Shift+Alt+I) | 在聊天视图中切换使用智能体 |
| 工具 () | 配置使用智能体时可用的工具。从内置工具、MCP 服务器和扩展提供的工具中进行选择。 |
| 权限级别 | 为当前会话选择 权限级别:默认批准、绕过批准 或 自动驾驶 (预览)。控制工具批准的处理方式。 |
| 自动批准工具 | 使用智能体时,启用 所有工具的自动批准 ( chat.tools.autoApprove 启用)。 |
| 自动批准终端命令 | 使用智能体时,启用 终端命令的自动批准 ( chat.tools.terminal.autoApprove 启用)。 |
| MCP | 配置 MCP 服务器 以扩展智能体功能和工具。 |
| 第三方智能体 | 使用来自外部提供商的智能体,如 Claude Agent (预览版) 和 OpenAI Codex,需绑定您的 Copilot 订阅。 |
| Claude Agent (预览版) | 启动由 Anthropic Claude Agent SDK 提供支持的 Claude Agent 会话。使用 /agents、/hooks 和 /memory 斜杠命令进行高级工作流操作。 |
提示
- 使用智能体时添加额外工具以扩展其功能。
- 配置自定义智能体以定义智能体的操作方式,例如实现只读规划模式。
- 定义自定义说明,指导智能体如何生成和组织代码。
- 尝试 Claude Code 或 OpenAI Codex 等第三方智能体,体验不同的智能编码过程。
规划
在 VS Code 聊天中使用 规划智能体,在开始复杂编码任务前创建详细的实现计划。将批准后的计划移交给实现智能体开始编码。
| 操作 | 描述 |
|---|---|
| 计划 Agent | 从智能体下拉菜单中选择 Plan 智能体,或使用 /plan 斜杠命令为复杂编码任务创建详细的实现计划。 |
| 待办事项列表 | 查看待办事项列表以跟踪复杂任务的进度。通过 chat.tools.todos.showWidget 设置启用。 |
| 内存 | 智能体可在对话中保存并回溯持久化笔记。通过 github.copilot.chat.tools.memory.enabled 启用或禁用。使用 Chat: Show Memory Files 命令查看存储的记忆。 |
自定义您的聊天体验
自定义您的聊天体验,生成符合您编码风格、工具和开发者工作流的响应。在 VS Code 中有多种方法可以自定义您的聊天体验
-
自定义说明:为生成代码、执行代码审查或生成提交信息等任务定义通用指南或规则。自定义说明描述了 AI 运行的条件(即任务如何完成)。
-
可重用提示词文件:为生成代码或进行代码审查等常见任务定义可重用的提示词。提示词文件是可以在聊天中直接运行的独立提示。它们描述了要执行的任务(即做什么)。
-
自定义智能体:定义聊天的操作方式、其可使用的工具以及与代码库的交互方式。每个聊天提示词都在智能体的边界内运行,无需为每个请求配置工具和说明。
使用 智能体自定义编辑器 (预览) 来发现、创建和管理您的所有自定义设置。在聊天视图中选择 Configure Chat(齿轮图标),或从命令面板运行 Chat: Open Customizations。
提示
- 定义特定语言的说明,以获取更精确的代码生成结果。
- 将您的说明存储在工作区中,以便轻松与团队共享。
- 定义常见任务的可重用提示词文件,以节省时间并帮助团队成员快速上手。
编辑器 AI 功能
在编辑器中编码时,您可以使用 Copilot 在输入时生成行内建议。调用行内聊天以提问并获取 Copilot 帮助,同时保持编码流。例如,请求 Copilot 为函数或方法生成单元测试。了解更多关于 行内建议 和 行内聊天 的信息。
| 操作 | 描述 |
|---|---|
| 行内建议 | 在编辑器中开始输入,获取符合您编码风格并考虑现有代码的 行内建议。 |
| 代码注释 | 通过在代码注释中编写说明来提供行内建议提示词。 示例: # 编写一个计算器类,包含加、减、乘方法。使用静态方法。 |
| ⌘I(Windows、Linux Ctrl+I) | 启动编辑器行内聊天,直接从编辑器发送聊天请求。使用自然语言并引用聊天变量和斜杠命令来提供上下文。 |
| F2 | 在重命名代码中的符号时获取 AI 驱动的建议。 |
| 上下文菜单操作 | 使用编辑器上下文菜单访问常见的 AI 操作,例如解释代码、生成测试、审查代码等。在编辑器中右键点击以打开上下文菜单并选择 Generate Code。 |
| 代码操作(灯泡) | 选择编辑器中的代码操作(灯泡)以修复代码中的 Linting 或编译器错误。 |
提示
- 使用有意义的方法或函数名称,以便更快获得更好的行内建议。
- 选择代码块以限定行内聊天提示词的范围,或通过附加文件或符号来添加相关上下文。
- 使用编辑器上下文菜单选项直接从编辑器访问常见的 AI 驱动操作。
源代码管理与问题跟踪
使用 AI 分析提交和合并请求中的更改,并提供提交信息和合并请求描述的建议。
| 操作 | 描述 |
|---|---|
#changes |
将当前的源代码管理更改添加为聊天提示词的上下文。 |
| 提交作为上下文 | 将源代码管理历史记录中的提交添加为聊天提示词的上下文。 |
| 提交信息 | 为源代码管理提交中当前的更改生成提交信息。 |
| 合并冲突(实验性) | 获取 使用 AI 解决 Git 合并冲突 的帮助。 |
| 合并请求描述 | 生成与您合并请求中的更改相符的标题和描述。 |
@github |
在聊天中使用 @github 参与者询问有关存储库中的问题、合并请求等内容。获取更多关于 可用 GitHub 技能 的信息。示例: @github 分配给我的未结合并请求有哪些?,@github 显示 @dancing-mona 最近合并的 PR |
代码审查(实验性)
使用 AI 对代码块进行快速审查或审查工作区中未提交的更改。审查反馈将作为注释显示在编辑器中,您可以在其中应用建议。
| 操作 | 描述 |
|---|---|
| Review Selection (预览) | 选择代码块,并从编辑器上下文菜单中选择 Generate Code > Review 进行快速审查。 |
| 代码审查 | 选择源代码管理视图中的 Code Review 按钮,对所有未提交的更改进行更深入的审查。 |
搜索与设置
在搜索视图中获取语义相关的搜索结果,或获取设置编辑器中搜索设置的帮助。
| 操作 | 描述 |
|---|---|
| 设置搜索 | 在设置编辑器中包含语义搜索结果 ( workbench.settings.showAISearchToggle 启用)。 |
| 语义搜索 (预览) | 在搜索视图中包含语义搜索结果 ( search.searchView.semanticSearchBehavior 启用)。 |
生成测试
VS Code 可以通过聊天中的斜杠命令为代码库中的函数和方法生成测试。斜杠命令是聊天提示词中可用的常见任务简写。输入 / 后跟命令名称即可使用。
| 操作 | 描述 |
|---|---|
/tests |
为编辑器中的全部或选定方法和函数生成测试。生成的测试将附加到现有测试文件中,或创建一个新的测试文件。 |
/setupTests |
获取配置代码测试框架的帮助。获取相关测试框架的推荐、安装和配置步骤,以及 VS Code 测试扩展的建议。 |
/fixTestFailure |
请求 Copilot 提供修复失败测试的建议。 |
| 测试覆盖率 (实验性) | 为尚未被测试覆盖的函数和方法生成测试。获取更多信息。 |
提示
- 提供有关要使用的测试框架或库的详细信息。
调试与修复问题
使用 Copilot 帮助修复编码问题,并获取有关在 VS Code 中配置和启动调试会话的帮助。
| 操作 | 描述 |
|---|---|
/fix |
请求 Copilot 提供修复代码块的建议,或解决代码中的编译器或 Linting 错误。例如,帮助修复未解析的 Node.js 包名称。 |
/fixTestFailure |
请求 Copilot 提供修复失败测试的建议。 |
/startDebugging (实验性) |
生成 launch.json 调试配置文件并从聊天视图 启动调试会话。 |
copilot-debug 命令 |
终端命令,帮助您 调试程序。在运行命令前添加前缀即可为其启动调试会话(例如 copilot-debug python foo.py)。 |
提示
- 提供关于您所需修复类型的附加信息,例如优化内存消耗或性能。
- 留意编辑器中的 Copilot 代码操作,它们会提示修复代码问题的建议。
搭建新项目
Copilot 可以通过生成项目结构的脚手架,或根据您的需求生成 Notebook,来帮助您创建新项目。
| 操作 | 描述 |
|---|---|
| 代理 | 使用 智能体 并通过自然语言提示词创建新项目或文件。例如,创建一个 svelte Web 应用来跟踪我的任务。 |
/new |
在聊天视图中使用 /new 命令搭建新项目或新文件。使用自然语言描述您需要的项目/文件类型,并在创建前预览搭建内容。示例: /new 使用 typescript 和 svelte 的 Express 应用 |
/newNotebook |
在聊天视图中使用 /newNotebook 命令根据您的需求生成新的 Jupyter Notebook。使用自然语言描述 Notebook 应包含的内容。示例: /newNotebook 获取人口普查数据并用 Seaborn 预览关键见解。 |
终端
获取有关 Shell 命令的帮助,以及如何在终端中运行命令时解决错误。
| 操作 | 描述 |
|---|---|
| ⌘I(Windows、Linux Ctrl+I) | 启动终端行内聊天,使用自然语言询问有关 Shell 命令和终端的问题。 示例: 这台机器有多少核心? |
@terminal |
在聊天视图中使用 @terminal 参与者询问有关集成终端或 Shell 命令的问题。示例: @terminal 列出此工作区中最大的 5 个文件 |
@terminal /explain |
在聊天视图中使用 /explain 命令来解释终端中的某些内容。示例: @terminal /explain top shell 命令 |
Python 与 Notebook 支持
您可以使用聊天功能在原生 Python REPL 和 Jupyter Notebook 中协助进行 Python 编程任务。
| 操作 | 描述 |
|---|---|
| Generate ⌘I(Windows、Linux Ctrl+I) |
在 Notebook 中启动行内聊天以生成代码块或 Markdown 块。 |
# |
在您的聊天提示词中附加 Jupyter 内核中的变量,以获得更相关的响应。 |
| 原生 REPL + ⌘I (Windows, Linux Ctrl+I) | 在原生 Python REPL 中启动行内聊天并运行生成的命令。 |
| ⌃⌘I(Windows、Linux Ctrl+Alt+I) | 打开 聊天视图 并使用智能体进行 Notebook 编辑。 |
/newNotebook |
在聊天视图中使用 /newNotebook 命令根据您的需求生成新的 Jupyter Notebook。使用自然语言描述 Notebook 应包含的内容。示例: /newNotebook 获取人口普查数据并用 Seaborn 预览关键见解。 |