在 VS Code 中使用聊天模式
聊天模式是一種建立專業 AI 代理的方法,它使您能夠為特定任務或角色定製 Visual Studio Code 中的聊天行為。VS Code 自帶三種內建聊天模式:提問 (Ask)、編輯 (Edit) 和 代理 (Agent)。您可以為特定工作流程建立自定義聊天模式,例如規劃功能、進行程式碼審查或研究實現方案。
切換聊天模式
要切換聊天模式,請開啟聊天檢視(⌃⌘I (Windows, Linux Ctrl+Alt+I)),然後從聊天模式下拉列表中選擇所需的模式。
內建聊天模式
VS Code 中的聊天可以在不同模式下執行,每種模式都針對特定的用例進行了最佳化。您可以隨時在聊天檢視中切換不同的聊天模式。
聊天模式 | 描述 |
---|---|
提問模式 (Ask mode) | 提問模式經過最佳化,可用於回答有關您的程式碼庫、程式設計和通用技術概念的問題。使用提問模式來理解一段程式碼的工作原理、進行軟體設計構思或探索新技術。在 穩定版 | Insiders 版中開啟提問模式。 |
編輯模式 (Edit mode) | 編輯模式經過最佳化,可用於在專案中跨多個檔案進行程式碼編輯。VS Code 會將程式碼更改直接應用在編輯器中,您可以在原處進行審查。當您對要進行的更改以及要編輯的檔案有清晰的瞭解時,可以使用編輯模式來執行編碼任務。在 穩定版 | Insiders 版中開啟編輯模式。 |
代理模式 | 代理模式經過最佳化,可用於在專案中跨多個檔案進行自主編輯。當您的任務定義不太明確,可能還需要執行終端命令和工具時,可以使用代理模式來執行編碼任務。在 穩定版 | Insiders 版中開啟代理模式。 |
自定義聊天模式
自定義聊天模式自 VS Code 1.101 版本起可用,目前處於預覽階段。
內建的聊天模式為 VS Code 中的聊天提供了通用配置。為了獲得更量身定製的聊天體驗,您可以建立自己的聊天模式。
自定義聊天模式由一組指令和工具組成,當您切換到該模式時會應用這些指令和工具。例如,“規劃”聊天模式可以包含生成實現計劃的指令,並且只使用只讀工具。透過建立自定義聊天模式,您可以快速切換到該特定配置,而無需每次都手動選擇相關的工具和指令。
自定義聊天模式在 .chatmode.md
Markdown 檔案中定義,可以儲存在您的工作區中供他人使用,也可以儲存在您的使用者配置檔案中,以便在不同工作區中重複使用。
您可以在自定義聊天模式檔案中引用指令檔案和工具(集)。
聊天模式檔案結構
聊天模式檔案是 Markdown 檔案,使用 .chatmode.md
副檔名,並具有以下結構
-
頭部(可選):YAML frontmatter
description
: 聊天模式的簡要描述。此描述會作為佔位符文字顯示在聊天輸入欄位中,以及當您將滑鼠懸停在聊天模式下拉列表中的模式上時顯示。tools
: 此聊天模式可用的工具或工具集名稱列表。這可以包括內建工具、工具集、MCP 工具或由擴充套件貢獻的工具。使用“配置工具”操作從工作區中的可用工具列表中選擇工具。model
: 執行提示時要使用的 AI 模型。如果未指定,則使用模型選擇器中當前選擇的模型。
-
正文 (Body): Markdown 格式的聊天模式詳細資訊和指令
您可以在這裡提供具體的提示、指南或任何其他您希望 AI 在此聊天模式下遵循的相關資訊。
透過使用 Markdown 連結來引用指令檔案。聊天模式指令將補充聊天提示中指定的任何內容。
聊天模式檔案示例
以下程式碼片段展示了一個“規劃”聊天模式檔案的示例,該檔案用於生成實現計劃,並且不進行任何程式碼編輯。更多社群貢獻的示例,請參閱 Awesome Copilot 倉庫。
---
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 命令。
-
選擇應建立聊天模式檔案的位置。
-
工作區:預設情況下,工作區聊天模式檔案儲存在工作區的
.github/chatmodes
資料夾中。您可以使用 chat.modeFilesLocations 設定為您的工作區新增更多提示資料夾。 -
使用者配置檔案:使用者聊天模式檔案儲存在當前配置檔案資料夾中。您可以使用設定同步在多個裝置間同步您的使用者聊天模式檔案。
-
-
輸入聊天模式的名稱。此名稱將用於聊天檢視中的聊天模式下拉列表。
-
在新建立的
.chatmode.md
檔案中提供聊天模式的詳細資訊。- 在 Front Matter 元資料中提供描述並配置可用工具或工具集列表。
- 在檔案正文中新增聊天模式的指令。
要編輯和管理現有聊天模式,請在聊天檢視中選擇配置聊天 > 模式,然後從列表中選擇一個現有聊天模式進行修改。或者,您可以使用命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))中的 Chat: Configure Chat Modes 命令。