在 Visual Studio Code 中自定义 AI

Visual Studio Code 提供了多种方式让 AI 了解你的代码库、编码标准和工作流程。本文介绍了这些自定义选项,并帮助你快速入门。

核心概念

了解不同的自定义类型及其适用场景。

要访问自定义设置,请在聊天视图中选择“配置聊天”(齿轮图标),打开聊天自定义编辑器

Screenshot of the Chat Customizations editor, showing the sidebar with customization categories and the main view listing custom agents.

自定义场景

以下章节介绍了常见的自定义场景以及对应的选项。

定义编码标准

使用自定义指令与 AI 分享项目范围内的规则和约定。始终生效的指令适用于所有请求,而基于文件的指令则针对特定文件类型或文件夹。例如,在所有文件中强制执行 ESLint 规则,并仅在 .tsx 文件中应用 React 模式。

自动化任务和工作流程

针对频繁执行的可重复任务创建提示词文件,例如搭建组件框架或准备合并请求。

对于涉及脚本和外部工具的更复杂的、多步骤工作流程,请将其封装为代理技能

AI 专项定制

创建具有特定角色的自定义代理,例如安全审核员、数据库管理员或规划师。每个代理都定义了自己的行为、可用工具和语言模型偏好。为不同任务选择不同的语言模型,或使用你自己的 API 密钥来访问更多模型。

发现并安装插件

安装代理插件(预览版),以从插件市场添加预打包的自定义组件集合。单个插件可以提供斜杠命令、技能、自定义代理、钩子(hooks)和 MCP 服务器。

连接外部工具和数据

添加 MCP 服务器,通过 模型上下文协议 (Model Context Protocol) 让 AI 访问数据库、API 和其他服务。使用钩子 (hooks) 在关键生命周期节点运行 Shell 命令,例如在每次文件编辑后运行格式化程序或强制执行安全策略。

开始使用

建议逐步实施 AI 自定义。从基础开始,根据需要逐步添加更多内容。如需实践演练,请参阅为你的项目自定义 AI 指南。

  1. 初始化你的项目:在聊天中输入 /init,生成一个 .github/copilot-instructions.md 文件,其中包含针对你的代码库量身定制的编码标准。

  2. 添加目标规则:为代码库的特定部分创建基于文件的 *.instructions.md 文件,例如语言约定或框架模式。

  3. 自动化重复性任务:为常见工作流程创建提示词文件,并添加 MCP 服务器以连接外部服务。

  4. 创建专项工作流程:为特定角色构建自定义代理。将可复用的能力封装为代理技能,以便在不同工具间共享。

  5. 用 AI 生成自定义配置:在聊天中输入 /create-prompt/create-instruction/create-skill/create-agent/create-hook,在 AI 辅助下生成自定义文件。

父级仓库发现

在 Monorepo(单体仓库)架构中,你可能在 VS Code 中打开的是仓库的某个子文件夹,而非仓库根目录。默认情况下,Visual Studio Code 仅会发现当前打开的工作区文件夹内的自定义文件。启用 chat.useCustomizationsInParentRepositories 在 VS Code 中打开 在 VS Code Insiders 中打开 设置,以便同时发现来自父级仓库的自定义配置。

启用此设置后,VS Code 会从每个工作区文件夹向上遍历文件夹层级,直到找到一个 .git 文件夹。如果找到,它会收集从工作区文件夹到仓库根目录(包含)之间所有文件夹中的自定义配置。这适用于所有自定义类型:始终生效的指令 (copilot-instructions.md, AGENTS.md, CLAUDE.md)、基于文件的指令、提示词文件、自定义代理、代理技能和钩子。

例如,考虑以下 Monorepo 结构

my-monorepo/              # repo root (has .git folder)
├── .github/
│   ├── copilot-instructions.md
│   ├── instructions/
│   │   └── style.instructions.md
│   ├── prompts/
│   │   └── review.prompt.md
│   └── agents/
│       └── reviewer.agent.md
├── packages/
│   └── frontend/          # opened as workspace folder
│       └── src/

如果你在 VS Code 中仅打开 packages/frontend/ 并启用了该设置,VS Code 将发现仓库根目录下的自定义文件,例如 copilot-instructions.mdstyle.instructions.mdreview.prompt.mdreviewer.agent.md

父级仓库发现的条件

  • 工作区文件夹不包含 .git 文件夹(即它本身不是仓库根目录)。
  • 某个父文件夹包含 .git 文件夹。
  • 父仓库文件夹是受信任的。当工作区打开时,VS Code 会提示你信任父文件夹。
注意

chat.useCustomizationsInParentRepositories 在 VS Code 中打开 在 VS Code Insiders 中打开 设置默认处于禁用状态。

聊天自定义编辑器

注意

聊天自定义编辑器目前处于预览阶段。

聊天自定义编辑器提供了一个集中的 UI,用于在同一个地方创建和管理所有的聊天自定义配置。该编辑器将不同的自定义类型组织在独立的选项卡中,并提供了一个嵌入式代码编辑器,用于编辑带有语法高亮和验证功能的自定义文件。

你可以通过编辑相应的 Markdown 文件从头开始创建新的自定义配置,或者使用 AI 根据你的特定项目生成初始内容。

要添加 MCP 服务器和代理插件,你可以直接在编辑器中浏览相应的市场,安装新项目并管理现有项目。

Screenshot of the Chat Customizations editor, showing the sidebar with customization categories and the main view listing custom agents.

要打开聊天自定义编辑器,请在聊天视图中选择“配置聊天”(齿轮图标),或者通过命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))运行 Chat: Open Chat Customizations

你可以针对不同的代理类型配置自定义:本地代理、Copilot CLI 和 Claude 代理。从编辑器顶部的下拉菜单中选择代理类型,以查看和管理该代理类型的自定义配置。

排查自定义问题

如果你的自定义配置未生效或导致意外行为,请在聊天视图中选择省略号(...)菜单,然后选择 Show Agent Debug Logs排查代理问题

© . This site is unofficial and not affiliated with Microsoft.