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

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 标题栏中显示 Copilot 菜单。
true
workbench.commandPalette.experimental.askChatLocation (实验性)
控制命令面板应该在何处询问聊天问题。
"chatView"
search.searchView.semanticSearchBehavior (预览)
配置何时在搜索视图中运行语义搜索:手动(默认)、未找到文本搜索结果时或始终运行。
"manual"
search.searchView.keywordSuggestions (预览)
控制是否在搜索视图中显示关键字建议。
false
workbench.settings.showAISearchToggle (实验性)
在设置编辑器中启用使用 AI 搜索设置。
true

代码编辑设置

设置和描述 默认值
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.chat.localeOverride
为聊天响应指定区域设置,例如 enfr
"auto"
github.copilot.chat.useProjectTemplates
在使用 /new 时,使用相关的 GitHub 项目作为启动项目。
true
github.copilot.chat.scopeSelection
如果您使用 /explain 且活动编辑器中没有选择,是否提示指定符号范围。
false
github.copilot.chat.terminalChatLocation
控制来自终端的聊天查询应该在哪里打开。
"chatView"
chat.detectParticipant.enabled
在聊天视图中启用聊天参与者检测。
true
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.notifyWindowOnConfirmation
启用或禁用在需要用户输入时显示操作系统通知窗口。
true
chat.math.enabled (预览)
在聊天中启用或禁用使用 KaTeX 进行数学渲染。
false
chat.checkpoints.enabled (预览)
启用或禁用聊天中的检查点。
true
chat.checkpoints.showFileChanges (预览)
在每次聊天请求结束时显示文件更改摘要。
true
github.copilot.chat.codesearch.enabled (预览)
在提示中使用 #codebase 时,Copilot 会自动发现需要编辑的相关文件。
false
chat.editRequests (实验性)
启用或禁用编辑之前的聊天请求
"inline"
github.copilot.chat.edits.suggestRelatedFilesFromGitHistory (实验性)
在聊天上下文中根据 git 历史记录建议相关文件。
true
chat.sendElementsToChat.enabled (实验性)
启用将简单浏览器中的元素作为上下文发送到聊天视图。
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.enabled
在 VS Code 中启用模型上下文协议 (MCP) 支持。这允许在代理模式下从 MCP 服务器添加工具。
true
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.mcp.autoStart (实验性)
检测到 MCP 配置更改时自动启动 MCP 服务器。
never
chat.tools.autoApprove (实验性)
自动批准所有工具。
false
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.experimental.generate (实验性)
启用生成操作以使用笔记本内联聊天创建代码单元。
true
github.copilot.chat.edits.newNotebook.enabled (实验性)
在编辑模式下启用笔记本工具以创建新的笔记本文件。
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