VS Code 中的 GitHub Copilot 设置参考
本文列出了 Visual Studio Code 中 GitHub Copilot 的配置设置。有关在 VS Code 中使用设置的常规信息,请参阅用户和工作区设置。
团队正在持续改进 VS Code 中的 Copilot 并添加新功能。一些功能仍处于实验阶段。欢迎试用并在我们的 issues中分享您的反馈。获取更多关于VS Code 中功能生命周期的信息。
提示
如果你还没有 Copilot 订阅,可以通过注册 Copilot 免费计划 免费使用 Copilot,并获得每月限量的补全和聊天交互次数。
常规设置
设置与描述 | 默认值 |
---|---|
chat.commandCenter.enabled 控制是否在 VS Code 标题栏中显示聊天菜单。 |
true |
workbench.settings.showAISearchToggle 在设置编辑器中启用 AI 搜索设置。 |
true |
workbench.commandPalette.experimental.askChatLocation (实验性功能) 控制命令面板应在何处提出聊天问题。 |
"chatView" |
search.searchView.semanticSearchBehavior (预览功能) 配置何时在搜索视图中运行语义搜索:手动(默认)、未找到文本搜索结果时,或始终运行。 |
"manual" |
search.searchView.keywordSuggestions (预览功能) 控制是否在搜索视图中显示关键字建议。 |
false |
代码编辑设置
设置与描述 | 默认值 |
---|---|
github.copilot.editor.enableCodeActions 控制当 Copilot 命令可用时,是否将其显示为代码操作。 |
true |
github.copilot.renameSuggestions.triggerAutomatically 生成符号重命名建议。 |
true |
github.copilot.enable 为指定的语言启用或禁用代码补全。 |
{ "*": true, "plaintext": false, "markdown": false, "scminput": false } |
github.copilot.nextEditSuggestions.enabled 启用后续编辑建议 (NES)。 |
true |
editor.inlineSuggest.edits.allowCodeShifting 配置 NES 是否能够移动您的代码以显示建议。 |
"always" |
editor.inlineSuggest.edits.renderSideBySide 配置 NES 是否可以在可能的情况下并排显示较大的建议,或者 Copilot NES 是否应始终在相关代码下方显示较大的建议。 |
"auto" |
github.copilot.nextEditSuggestions.fixes 基于诊断信息(波浪线)启用后续编辑建议。例如,缺少导入。 |
true |
editor.inlineSuggest.minShowDelay 显示内联建议前等待的时间(毫秒)。 |
0 |
聊天设置
设置与描述 | 默认值 |
---|---|
github.copilot.chat.localeOverride 为聊天响应指定区域设置,例如 en 或 fr 。 |
"auto" |
github.copilot.chat.useProjectTemplates 在使用 /new 时,使用相关的 GitHub 项目作为启动项目。 |
true |
github.copilot.chat.scopeSelection 当您使用 /explain 且活动编辑器中没有选区时,是否提示指定符号范围。 |
false |
github.copilot.chat.terminalChatLocation 控制来自终端的聊天查询应在何处打开。 |
"chatView" |
chat.detectParticipant.enabled 在聊天视图中启用聊天参与者检测。 |
true |
chat.checkpoints.enabled 在聊天中启用或禁用检查点。 |
true |
chat.checkpoints.showFileChanges 在每次聊天请求结束时显示文件更改的摘要。 |
false |
chat.editRequests 启用或禁用编辑先前的聊天请求。 |
"inline" |
chat.editor.fontFamily 聊天代码块中的字体系列。 |
"default" |
chat.editor.fontSize 聊天代码块中的字体大小(像素)。 |
14 |
chat.editor.fontWeight 聊天代码块中的字体粗细。 |
"default" |
chat.editor.lineHeight 聊天代码块中的行高(像素)。 |
0 |
chat.editor.wordWrap 切换聊天代码块中的换行。 |
"off" |
chat.editing.confirmEditRequestRemoval 在撤销编辑前请求确认。 |
true |
chat.editing.confirmEditRequestRetry 在重做上次编辑前请求确认。 |
true |
chat.editing.autoAcceptDelay 配置一个延迟时间,在此之后建议的编辑将自动被接受,使用零来禁用自动接受。 |
0 |
chat.fontFamily 聊天中 Markdown 内容的字体系列。 |
"default" |
chat.fontSize 聊天中 Markdown 内容的字体大小(像素)。 |
13 |
chat.notifyWindowOnConfirmation 启用或禁用在需要用户输入时显示操作系统通知窗口。 |
true |
chat.math.enabled (预览功能) 在聊天中启用或禁用使用KaTeX进行数学公式渲染。 |
false |
github.copilot.chat.codesearch.enabled (预览功能) 在提示中使用 #codebase 时,Copilot 会自动发现需要编辑的相关文件。 |
false |
github.copilot.chat.edits.suggestRelatedFilesFromGitHistory (实验性功能) 在聊天上下文中从 git 历史记录中建议相关文件。 |
true |
chat.sendElementsToChat.enabled (实验性功能) 启用将简单浏览器中的元素作为上下文发送到聊天视图。 |
true |
chat.useAgentsMdFile (实验性功能) 启用或禁用使用工作区根目录下的 AGENTS.md 文件作为聊天请求的上下文。 |
true |
代理模式设置
设置与描述 | 默认值 |
---|---|
chat.agent.enabled 启用或禁用代理模式(需要 VS Code 1.99 或更高版本)。 |
true |
chat.agent.maxRequests Copilot 在代理模式下可以发出的最大请求数。 |
25 |
github.copilot.chat.agent.autoFix 自动诊断并修复生成的代码更改中的问题。 |
true |
github.copilot.chat.agent.runTasks 使用代理模式时运行工作区任务。 |
true |
chat.mcp.access 管理可以在 VS Code 中使用的模型上下文协议(MCP)服务器。 |
true |
chat.mcp.discovery.enabled 配置从其他应用程序自动发现 MCP 服务器配置。 |
false |
chat.tools.terminal.autoApprove 控制哪些终端命令在代理模式下自动批准。命令可以设置为 true (自动批准)或 false (需要批准)。可以通过将模式包装在 / 字符中来使用正则表达式。 |
{ "rm": false, "rmdir": false, "del": false, "kill": false, "curl": false, "wget": false, "eval": false, "chmod": false, "chown": false, "/^Remove-Item\\b/i": false } |
chat.tools.global.autoApprove 自动批准所有工具 - 此设置会禁用关键的安全保护措施。 |
false |
chat.mcp.autoStart (实验性功能) 检测到 MCP 配置更改时自动启动 MCP 服务器。 |
never |
chat.todoListTool.enabled (实验性功能) 在聊天中启用待办事项列表工具。 |
false |
github.copilot.chat.newWorkspaceCreation.enabled (实验性功能) 启用代理模式工具,以便在聊天中搭建新工作区。 |
true |
github.copilot.chat.agent.thinkingTool (实验性功能) 在代理模式下启用思考工具。 |
false |
github.copilot.chat.virtualTools.threshold (实验性功能) 工具数量的阈值,超过此阈值应使用虚拟工具。虚拟工具将相似的工具集组合在一起,并使模型能够按需激活它们。这使您能够突破聊天请求中 128 个工具的限制。 |
128 |
内联聊天设置
设置与描述 | 默认值 |
---|---|
inlineChat.finishOnType 当在已更改区域之外键入时,结束编辑器内联聊天会话。 |
false |
inlineChat.holdToSpeech 按住编辑器内联聊天键盘快捷键(⌘I (Windows、Linux 为 Ctrl+I))可自动启用语音识别。 |
true |
editor.inlineSuggest.syntaxHighlightingEnabled 为代码补全显示语法高亮。 |
true |
inlineChat.lineEmptyHint (实验性功能) 在空行上显示编辑器内联聊天的提示。 |
false |
inlineChat.lineNaturalLanguageHint (实验性功能) 当一行主要由单词组成时,立即触发编辑器内联聊天。 |
true |
github.copilot.chat.editor.temporalContext.enabled (实验性功能) 将最近查看和编辑过的文件包含在编辑器内联聊天的上下文中。 |
false |
代码审查设置
设置与描述 | 默认值 |
---|---|
github.copilot.chat.reviewSelection.enabled (预览功能) 为编辑器文本选区启用 AI 代码审查。 |
true |
github.copilot.chat.reviewSelection.instructions (预览功能) 添加到请求中的自定义指令,用于通过 AI 审查当前编辑器选区。 |
[] |
自定义指令设置
设置与描述 | 默认值 |
---|---|
github.copilot.chat.codeGeneration.useInstructionFiles 自动将 .github/copilot-instructions.md 中的自定义指令添加到聊天请求中。 |
true |
chat.instructionsFilesLocations (实验性功能) 搜索自定义指令文件的位置。相对路径从工作区的根文件夹解析。支持文件路径的 glob 模式。 |
{ ".github/instructions": true } |
github.copilot.chat.commitMessageGeneration.instructions (实验性功能) 使用 AI 生成提交消息的自定义指令。 |
[] |
github.copilot.chat.pullRequestDescriptionGeneration.instructions (实验性功能) 使用 AI 生成拉取请求标题和描述的自定义指令。 |
[] |
可重用提示文件设置
设置与描述 | 默认值 |
---|---|
chat.promptFiles (实验性功能) 启用或禁用可重用提示文件。 |
true |
chat.promptFilesLocations (实验性功能) 搜索提示文件的位置。相对路径从工作区的根文件夹解析。支持文件路径的 glob 模式。 |
{ ".github/prompts": true } |
聊天模式设置
设置与描述 | 默认值 |
---|---|
chat.modeFilesLocations (实验性功能) 搜索聊天模式文件的位置。相对路径从工作区的根文件夹解析。支持文件路径的 glob 模式。 |
{ ".github/chatmodes": true } |
调试设置
设置与描述 | 默认值 |
---|---|
github.copilot.chat.startDebugging.enabled (预览功能) 在聊天视图中启用实验性的 /startDebugging 意图以生成调试配置。 |
true |
github.copilot.chat.copilotDebugCommand.enabled (预览功能) 启用 copilot-debug 终端命令。 |
true |
测试设置
设置与描述 | 默认值 |
---|---|
github.copilot.chat.generateTests.codeLens (实验性功能) 为当前测试覆盖率信息未覆盖的符号显示生成测试代码镜头。 |
false |
github.copilot.chat.setupTests.enabled (实验性功能) 启用实验性的 /setupTests 意图并在 /tests 生成中进行提示。 |
true |
Notebook 设置
设置与描述 | 默认值 |
---|---|
notebook.experimental.generate (实验性功能) 启用生成操作,以通过 notebook 内联聊天创建代码单元格。 |
true |
github.copilot.chat.edits.newNotebook.enabled (实验性功能) 在编辑模式下启用 notebook 工具以创建新的 notebook 文件。 |
true |
github.copilot.chat.notebook.followCellExecution.enabled (实验性功能) 在编辑器中显示当前正在执行的单元格。 |
false |
辅助功能设置
设置与描述 | 默认值 |
---|---|
inlineChat.accessibleDiffView 内联聊天是否也为其更改渲染一个可访问的差异查看器。 |
"auto" |
accessibility.signals.chatRequestSent 当发出聊天请求时播放一个信号 - 声音(音频提示)和/或通告(警报)。 |
{ "sound": "auto", "announcement": "auto" } |
accessibility.signals.chatResponseReceived 当收到响应时播放声音/音频提示。 |
{ "sound": "auto" } |
accessibility.signals.chatEditModifiedFile 当文件被聊天编辑修改时播放声音/音频提示。 |
{ "sound": "auto" } |
accessibility.signals.chatUserActionRequired 当用户需要在聊天中执行操作时播放声音/音频提示。 |
{ "sound": "auto", "announcement": "auto" } |
accessibility.signals.lineHasInlineSuggestion 当光标位于有内联建议的行上时播放声音/音频提示。 |
{ "sound": "auto" } |
accessibility.signals.nextEditSuggestion 当有后续编辑建议可用时播放声音/音频提示。 |
{ "sound": "auto", "announcement": "auto" } |
accessibility.verbosity.inlineChat 提供有关如何访问内联编辑器聊天辅助功能帮助菜单的信息,并在输入框获得焦点时通过提示进行提醒,描述如何使用该功能。 |
true |
accessibility.verbosity.inlineCompletions 提供有关如何访问内联补全悬停提示和可访问视图的信息。 |
true |
accessibility.verbosity.panelChat 提供有关在聊天输入框获得焦点时如何访问聊天帮助菜单的信息。 |
true |
accessibility.voice.keywordActivation 控制是否识别关键字短语“Hey Code”以启动语音聊天会话。 |
"off" |
accessibility.voice.autoSynthesize 控制当使用语音作为输入时,文本响应是否应自动大声朗读。 |
"off" |
accessibility.voice.speechTimeout 在您停止说话后,语音识别保持活动状态的持续时间(毫秒)。 |
1200 |