Copilot 下一次编辑建议(预览)
2025 年 2 月 12 日,作者:Brigit Murtaugh、Burke Holland
我们很高兴地宣布,在此版 Visual Studio Code 中,GitHub Copilot 将推出不是一个、不是两个,而是三个预览功能
- 下一步编辑建议
- 适用于 Copilot 编辑的 代理模式
- 视觉
在本文中,我们将深入探讨下一步编辑建议,并了解您的编辑器中 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 有助于纠正拼写错误等小错误——也许您编码很快,处于心流状态,将 const
写成了 conts
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 正在迅速发展,我们迫不及待地希望通过我们的存储库中的问题获取您的反馈——这将对改善体验至关重要。
请务必使用 VS Code Insiders 和GitHub Copilot Chat 扩展的预发布版本,以获取所有最新功能和修复。有关如何安装扩展预发布版本的更多详细信息。
您可以阅读我们的完整 NES 文档,了解更多信息和场景,我们将不断扩展 NES 体验。
我们对 AI 的下一步发展感到兴奋,Copilot 将预测您接下来想要做什么——最好的提示就是您无需编写的提示。我们希望您也同样兴奋,并期待看到您的作品!
代理模式
根据上周发布的 VS Code Insiders 版本,GitHub Copilot Edits 现在提供了代理模式选项。
Copilot Edits 中的代理模式能够迭代自身的代码——自动识别并修复错误,执行完成所请求任务所需的任何终端命令,以及通过自修复能力解决运行时错误。GitHub Copilot 现在不仅能执行用户请求的任务,还能推断出所有未指定但需要完成的其他任务,以使主要请求正常工作。
我们看到 GitHub Copilot 代理模式的巨大潜力。它每天都在变得更好,但我们希望尽快让您体验到它。请关注未来几周的重大变化和改进,我们将不断完善体验,并在您试用时分享您的反馈(今天在 VS Code Insiders 中可用,很快将在 VS Code Stable 中可用)。
您可以在我们的文档中阅读有关代理模式的更多信息。
视觉
此版 VS Code Insiders 还为 GitHub Copilot 带来了视觉支持。
一遍又一遍地将您所看到的内容翻译成 Copilot 的描述可能会令人沮丧。在使用用户界面或询问如何在编辑器中配置某些内容时,尤其如此。现在,您只需将屏幕截图附加到您的提示中,Copilot 就可以准确地看到您所看到的内容。您可以…
- 从剪贴板粘贴
- 从资源管理器视图拖放图像
- 附加当前 VS Code 窗口的屏幕截图(选择 附加 > 屏幕截图窗口)
这将启用各种场景……
- 将模型图提供给 Copilot,以便它生成 UI 代码。
- 提供不正确界面的屏幕截图,以便 Copilot 可以帮助您修复布局。
- 为 HTML 和 Markdown 中的图像生成替代文本
- 提供错误屏幕截图
视觉功能目前在 VS Code Insiders 中可用,并向所有人开放。目前唯一支持的模型是 GPT 4o,对其他模型的支持正在开发中。目前支持的图像类型有 JPEG/JPG、PNG、GIF 和 WEBP。
新年新 Copilot
我们对 Copilot 作为 AI 结对程序员抱有宏伟计划,它不仅向所有人免费提供,而且不断突破 AI 的能力界限,以显著提高您的生产力和幸福感。
我们从未停止改进 VS Code 本身,因此请查看我们的最新发布说明,了解所有全新的优秀内容。我们坚持不懈地确保您拥有最好版本的代码编辑器和最好的 AI 结对程序员。
我们知道 AI 世界发展迅速,因此请务必在 X/Bluesky/领英 上关注我们,我们将让您轻松了解所有最新和最强大的 Copilot 功能。
编程愉快!
Brigit 和 Burke