尝试以扩展 VS Code 中的代理模式!

VS Code 中的聊天模式

聊天模式是预定义的配置,可让你在 Visual Studio Code 中为特定任务(例如提问、进行代码编辑或执行自主编码任务)定制 AI 聊天行为。你可以随时在“聊天”视图中切换聊天模式,具体取决于你想要完成的任务。

VS Code 附带三种内置聊天模式询问 (Ask)编辑 (Edit)代理 (Agent)。你还可以为特定场景定义自己的聊天模式,例如规划新功能或研究实现方案。

先决条件

切换聊天模式

要切换聊天模式,请打开“聊天”视图 (⌃⌘I (Windows、Linux Ctrl+Alt+I)),然后从聊天模式下拉列表中选择所需的模式。

Screenshot showing the Chat view, highlighting the chat mode dropdown list.

内置聊天模式

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.

创建聊天模式

你可以在工作区或用户配置文件中创建聊天模式文件。

  1. 在命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 中运行“Chat: New Mode File”命令。

  2. 选择在工作区或用户配置文件中创建新的聊天模式文件。

  3. 输入聊天模式的名称。此名称将用于“聊天”视图的聊天模式下拉列表中。

  4. 在新创建的 .chatmode.md 文件中提供聊天模式的详细信息。

    • 在 Front Matter 元数据中提供描述并配置可用工具或工具集列表。
    • 在文件主体中为聊天模式添加指令。

默认情况下,VS Code 会在 .github/chatmodes 文件夹中查找工作区聊天模式文件。你可以使用 chat.modeFilesLocations 设置来配置工作区聊天模式文件的位置。

管理现有聊天模式

要编辑和管理现有聊天模式,请在“聊天”视图中选择“配置聊天”按钮,选择“模式”,然后从列表中选择一个现有聊天模式进行修改。或者,你可以从命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 中使用“Chat: Configure Chat Modes”命令。

Screenshot showing the Chat view, and Configure Chat menu, highlighting the Configure Chat button.

将鼠标悬停在列表中的聊天模式上,然后从可用操作中选择:复制或移动、编辑名称或删除聊天模式。