Copilot 下一步编辑建议(预览版)
2025 年 2 月 12 日,作者:Brigit Murtaugh, Burke Holland
我们很高兴地宣布,在此 Visual Studio Code 版本中,GitHub Copilot 共有三个预览版
- 下一步编辑建议
- Copilot Edits 的 Agent 模式
- Vision
在这篇文章中,我们将深入探讨“下一步编辑建议”,并了解编辑器中 AI 驱动的代码完成功能的下一步发展。
下一步编辑建议 (NES)
GitHub Copilot 代码完成 - 也称为幽灵文本 - 非常擅长自动完成。在使用 GitHub Copilot 时,最令人难以置信的感觉之一是,它会在您甚至没有要求的情况下建议您脑海中的代码。但是,大多数编码活动都涉及编辑现有代码,就像编写新代码一样多。对于完成功能来说,对现有代码也起作用是自然的下一步。
我们称之为下一步编辑建议,或简称 NES。是的 - 当我们看到这个首字母缩写词时,我们也感受到了游戏机的怀旧之情。
NES 入门
要开始使用 Copilot NES,首先启用 VS Code 设置 github.copilot.nextEditSuggestions.enabled。
与代码完成一样,您只需开始编码即可开始从 NES 获取建议!
当您看到编辑建议时,使用 Tab 键导航到它,然后再次使用 Tab 键接受它。忘记手动搜索相关文件或引用吧。Copilot NES 将持续关注您的下一个相关编辑!
装订线中的箭头表示有可用的编辑建议。将鼠标悬停在箭头上以浏览编辑建议菜单,其中包含键盘快捷键和设置配置
滚动浏览了该编辑建议?箭头会提示您下一个编辑建议的位置,根据您在文件中的位置向上或向下指向
建议可以跨越单个符号、整行或多行,具体取决于潜在更改的范围。
重新加载 VS Code 以使更新后的设置生效。
如果您是 Copilot Business 或 Enterprise 用户,除了在编辑器中设置 github.copilot.nextEditSuggestions.enabled 之外,您的组织的管理员还必须选择启用 Copilot“编辑器预览功能”。
您可以了解更多关于在您的组织中管理 Copilot 策略的信息。
示例场景
当您进行可能会在整个文件或项目中级联的更改时,Copilot NES 是您的 AI 助手,您将在各种场景中看到它的闪光点。
捕捉和纠正错误: 犯错是编写代码的自然组成部分,而 Copilot NES 可以帮助您捕捉错误(有时甚至在您意识到错误存在之前!)。
NES 可以帮助解决小错误,例如拼写错误 - 也许您编码速度很快,并且在区域中,您写了 conts
而不是 const
NES 还可以帮助解决逻辑中更具挑战性的错误,例如反转的三元表达式
我们的开发团队一直在 NES 上进行自我托管,我们的一位工程师回忆起他在我们整理这篇博客时,对 NES 的第一个“啊哈!”时刻。他正在编写一个类似于 if (something !== 'a' || something !== 'b')
的条件。NES 捕捉到此语句将始终评估为 true(感谢德摩根定律!),并建议将 ||
替换为 &&
以使代码有效
更改意图: Copilot NES 建议与意图更改相匹配的更改。例如,将类从 Point
更改为 Point3D
会导致建议向类定义和距离计算中添加 z
变量
使用新添加的变量或逻辑: Copilot NES 帮助您使用刚添加的新代码。这可能是一个小的更改,例如在实际方法中调用新的方法参数。
它也可能更复杂:如果您在 VS Code 扩展的 extension.ts
中添加了新命令,NES 将首先建议清理 extension.ts
中的命令。然后,当您打开 package.json
时,NES 建议也注册该命令
重构: 如果您使用新名称或命名模式,Copilot NES 会建议类似地更新后续代码
阅读我们的完整 NES 文档以获取更多信息和场景,因为我们将扩展 NES 体验。
分享您的反馈
Copilot NES 正在快速发展,我们迫不及待地想通过 我们的仓库 中的 issue 获取您的反馈 - 这将有助于改进体验。
请务必使用 VS Code Insiders 和 GitHub Copilot Chat 扩展的预发布版本,以获取所有最新功能和修复。获取有关如何安装扩展预发布版本的更多详细信息。
您可以阅读我们的完整 NES 文档以获取更多信息和场景,因为我们将扩展 NES 体验。
我们对 AI 的下一步发展感到兴奋,Copilot 可以预测您接下来想做什么 - 最好的提示是您不必编写的提示。我们希望您也感到兴奋,并期待看到您构建的内容!
Agent 模式
从上周的 VS Code Insiders 版本开始,GitHub Copilot Edits 现在具有 Agent 模式选项。
Copilot Edits 中的 Agent 模式能够迭代自己的代码 - 自动识别和修复错误,执行完成请求任务所需的任何终端命令,以及通过自我修复功能解决运行时错误。GitHub Copilot 现在不仅可以执行用户请求的任务,还可以推断出所有未指定但为了使主要请求工作也需要完成的其他任务。
我们看到了 GitHub Copilot Agent 模式的巨大潜力。它每天都在变得更好,但我们希望尽快将其交到您手中。请关注这个空间,了解未来几周的重大变化和改进,因为我们将改进体验,并在您试用时(今天在 VS Code Insiders 中,很快将在 VS Code Stable 中)分享您的反馈。
您可以在 我们的文档中阅读有关 Agent 模式的更多信息。
Vision
此版本的 VS Code Insiders 还为 GitHub Copilot 带来了 Vision 支持。
不得不一遍又一遍地将您看到的内容翻译成 Copilot 的描述,这可能会令人沮丧。当处理用户界面或询问如何在编辑器中配置某些内容时,尤其如此。现在,您只需将屏幕截图附加到您的提示中,以便 Copilot 可以准确地看到您所看到的内容。您可以...
- 从剪贴板粘贴
- 从资源管理器视图拖放图像
- 附加当前 VS Code 窗口的屏幕截图(选择“附加”>“屏幕截图窗口”)
这实现了各种场景...
- 向 Copilot 提供模型,以便它可以生成 UI 代码。
- 提供不正确的界面的屏幕截图,以便 Copilot 可以帮助您修复布局。
- 为 HTML 和 Markdown 中的图像生成 alt 文本
- 提供错误的屏幕截图
Vision 今天在 VS Code Insiders 中运行,并且对所有人可用。目前唯一支持的模型是 GPT 4o,对其他模型的支持正在开发中。目前,支持的图像类型为 JPEG/JPG、PNG、GIF 和 WEBP。
新年新气象,新的 Copilot
我们对 Copilot 作为 AI 结对程序员寄予厚望,它不仅免费向所有人开放,而且不断突破 AI 可以做什么的界限,以从根本上提高您的生产力和幸福感。
我们从不停歇地改进 VS Code 本身,因此请查看我们最近的发行说明,了解所有全新的优点。我们坚决确保您拥有代码编辑器的最佳版本和最佳 AI 结对程序员。
我们知道 AI 世界的变化日新月异,因此请务必在 X/Bluesky/LinkedIn 上关注我们,我们将使您轻松了解所有最新和最强大的 Copilot 功能。
祝您编码愉快!
Brigit 和 Burke