🚀 在 VS Code 中

Copilot 下一步编辑建议(预览)

2025 年 2 月 12 日,作者:Brigit Murtaugh, Burke Holland

我们很高兴地宣布,在 Visual Studio Code 的此版本中,GitHub Copilot 不仅有一个,不是两个,而是三个预览版

  1. 下一步编辑建议
  2. Copilot Edits 的 Agent 模式
  3. 愿景

在这篇文章中,我们将深入探讨下一步编辑建议,并了解编辑器中 AI 驱动的代码完成的下一步发展。

下一步编辑建议 (NES)

GitHub Copilot 代码完成 - 也称为幽灵文本 - 非常擅长自动完成。使用 GitHub Copilot 时,最令人难以置信的感觉之一是,它会建议您脑海中的代码,而您甚至不必提出要求。但是,大多数编码活动都涉及编辑现有代码,就像编写新代码一样。完成功能也适用于现有代码是自然而然的下一步。

我们称之为下一步编辑建议,或简称 NES。是的 - 当我们看到这个首字母缩略词时,我们也能感受到游戏机的怀旧感。

NES 入门

要开始使用 Copilot NES,首先启用 VS Code 设置 github.copilot.nextEditSuggestions.enabled

与完成功能一样,您只需开始编码即可开始从 NES 获取建议!

当您看到编辑建议时,使用 Tab 键导航到它,然后再次使用 Tab 键接受它。忘记手动搜索相关文件或引用。Copilot NES 将密切关注您的下一个相关编辑!

装订线中的箭头表示有可用的编辑建议。将鼠标悬停在箭头上以浏览编辑建议菜单,其中包括键盘快捷键和设置配置

NES gutter menu expanded

滚动浏览了该编辑建议?箭头会提示您下一个编辑建议的位置,根据您在文件中的位置向上或向下指向

NES with arrow directions changing

建议可以跨越单个符号、整行或多行,具体取决于潜在更改的范围。

注意

重新加载 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 正在快速发展,我们迫不及待想通过 我们的 repo 中的问题来获取您的反馈 – 这将有助于改进体验。

请务必使用 VS Code InsidersGitHub 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 模式的更多信息。

愿景

此 VS Code Insiders 版本还为 GitHub Copilot 带来了 Vision 支持。

不得不一遍又一遍地将您看到的内容翻译成 Copilot 的描述可能会令人沮丧。当处理用户界面或询问如何在编辑器中配置某些内容时,尤其如此。现在,您只需将屏幕截图附加到您的提示中,以便 Copilot 可以准确地看到您所看到的。您可以...

  • 从剪贴板粘贴
  • 从资源管理器视图拖放图像
  • 附加当前 VS Code 窗口的屏幕截图(选择“附加”>“屏幕截图窗口”)

这使各种场景成为可能...

  • 向 Copilot 提供模型,以便它可以生成 UI 代码。
  • 提供不正确的界面的屏幕截图,以便 Copilot 可以帮助您修复布局。
  • 为 HTML 和 Markdown 中的图像生成替代文本
  • 提供错误的屏幕截图

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