VS Code 中的聊天模式
聊天模式是预定义的配置,可让你在 Visual Studio Code 中为特定任务(例如提问、进行代码编辑或执行自主编码任务)定制 AI 聊天行为。你可以随时在“聊天”视图中切换聊天模式,具体取决于你想要完成的任务。
VS Code 附带三种内置聊天模式:询问 (Ask)、编辑 (Edit) 和代理 (Agent)。你还可以为特定场景定义自己的聊天模式,例如规划新功能或研究实现方案。
先决条件
- 安装最新版本的 Visual Studio Code
- 访问 Copilot。Copilot 免费计划并获得每月补全和聊天交互的限制。
切换聊天模式
要切换聊天模式,请打开“聊天”视图 (⌃⌘I (Windows、Linux Ctrl+Alt+I)),然后从聊天模式下拉列表中选择所需的模式。
内置聊天模式
VS Code 中的聊天可以在不同模式下运行,每种模式都针对特定的用例进行了优化。你可以随时在“聊天”视图中更改不同的聊天模式。
聊天模式 | 描述 |
---|---|
询问模式 (Ask mode) | 询问模式经过优化,可用于回答有关你的代码库、编码和一般技术概念的问题。 使用询问模式来理解一段代码的工作原理、进行软件设计思想的头脑风暴或探索新技术。 在 Stable | Insiders 中打开询问模式。 |
编辑模式 (Edit mode) | 编辑模式经过优化,可用于对项目中的多个文件进行代码编辑。VS Code 会直接在编辑器中应用代码更改,你可以在原处进行审查。 当你对要进行的更改以及要编辑的文件有很好的理解时,请使用编辑模式进行编码任务。 在 Stable | Insiders 中打开编辑模式。 |
代理模式 | 代理模式经过优化,可用于对项目中的多个文件进行自主编辑。 当你的任务定义不太明确,可能还需要运行终端命令和工具时,请使用代理模式进行编码任务。 在 Stable | Insiders 中打开代理模式。 |
自定义聊天模式
自定义聊天模式自 VS Code 1.101 版本起可用,目前处于预览阶段。
内置聊天模式为 VS Code 中的聊天提供了通用配置。为了获得更量身定制的聊天体验,你可以创建自己的聊天模式。
自定义聊天模式由一组指令和工具组成,当你切换到该模式时会应用这些指令和工具。例如,“计划”聊天模式可以包含生成实施计划的指令,并且只使用只读工具。通过创建自定义聊天模式,你可以快速切换到该特定配置,而无需每次都手动选择相关的工具和指令。
自定义聊天模式在 .chatmode.md
Markdown 文件中定义,可以存储在你的工作区中供他人使用,也可以存储在你的用户配置文件中,以便在不同的工作区中重用。
你可以在自定义聊天模式文件中引用指令文件和工具(集)。
聊天模式文件结构
聊天模式文件是带有 .chatmode.md
后缀的 Markdown 文件。它有两个主要部分:
-
Front Matter 元数据头部
description
:聊天模式的简短描述。此描述会显示在聊天输入字段的占位符文本中,以及当你将鼠标悬停在聊天模式下拉列表中的模式上时显示。tools
:此聊天模式可用的工具或工具集名称列表。这可以包括内置工具、工具集、MCP 工具或由扩展贡献的工具。使用“配置工具”操作从工作区中可用工具列表中选择工具。model
:运行提示时使用的 AI 模型。如果未指定,则使用模型选择器中当前选择的模型。
-
带有聊天模式指令的主体
你可以在此处提供希望 AI 在此聊天模式下遵循的特定提示、指南或任何其他相关信息。你还可以使用 Markdown 链接引用指令文件。聊天模式指令将补充聊天提示中指定的任何内容。
聊天模式文件示例
以下代码片段显示了一个“计划”聊天模式文件的示例,该文件会生成实施计划并且不进行任何代码编辑。
---
description: Generate an implementation plan for new features or refactoring existing code.
tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages']
model: Claude Sonnet 4
---
# Planning mode instructions
You are in planning mode. Your task is to generate an implementation plan for a new feature or for refactoring existing code.
Don't make any code edits, just generate a plan.
The plan consists of a Markdown document that describes the implementation plan, including the following sections:
* Overview: A brief description of the feature or refactoring task.
* Requirements: A list of requirements for the feature or refactoring task.
* Implementation Steps: A detailed list of steps to implement the feature or refactoring task.
* Testing: A list of tests that need to be implemented to verify the feature or refactoring task.
创建聊天模式
你可以在工作区或用户配置文件中创建聊天模式文件。
-
在命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 中运行“Chat: New Mode File”命令。
-
选择在工作区或用户配置文件中创建新的聊天模式文件。
-
输入聊天模式的名称。此名称将用于“聊天”视图的聊天模式下拉列表中。
-
在新创建的
.chatmode.md
文件中提供聊天模式的详细信息。- 在 Front Matter 元数据中提供描述并配置可用工具或工具集列表。
- 在文件主体中为聊天模式添加指令。
默认情况下,VS Code 会在 .github/chatmodes
文件夹中查找工作区聊天模式文件。你可以使用 chat.modeFilesLocations 设置来配置工作区聊天模式文件的位置。
管理现有聊天模式
要编辑和管理现有聊天模式,请在“聊天”视图中选择“配置聊天”按钮,选择“模式”,然后从列表中选择一个现有聊天模式进行修改。或者,你可以从命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 中使用“Chat: Configure Chat Modes”命令。
将鼠标悬停在列表中的聊天模式上,然后从可用操作中选择:复制或移动、编辑名称或删除聊天模式。