开源 AI 编辑器:第二个里程碑
2025年11月6日,VS Code 团队
在 5月,我们宣布了将 VS Code 打造成开源 AI 编辑器的初步计划;在 6月,我们通过开源 GitHub Copilot Chat 扩展达成了第一个里程碑。
尽管聊天功能是向前迈出的重要一步,但我们 AI 功能中仍有一个重要部分尚未开源:即在你键入时出现的行内建议。今天,我们迎来了旅程中的下一个里程碑:行内建议现已开源。

一个扩展,同样的用户体验
在过去的几年里,VS Code 中的 GitHub Copilot 分散在两个扩展中:GitHub Copilot 扩展(用于幽灵文本建议)和 GitHub Copilot Chat 扩展(用于聊天和下一步编辑建议)。我们正致力于将所有 Copilot 功能整合到一个 VS Code 扩展中:Copilot Chat。
为实现这一点,我们现在正在测试禁用 Copilot 扩展,并将所有行内建议改由 Copilot Chat 提供。我们已经将绝大多数功能移植到了聊天扩展中,因此单扩展体验的逐步推出对每个人来说都应该是一致且透明的。
你的体验不应发生任何改变。你将继续在键入时获得相同的智能代码建议,以及你一直在使用的所有聊天和代理模式功能。如果你遇到任何问题,请报告问题,或者在需要时查看如何使用先前的体验。
作为本次重构的一部分,GitHub Copilot 扩展将在 2026 年初被弃用,这意味着它将从 VS Code Marketplace 中移除。
我们还简化了术语:我们现在使用行内建议来统称在键入时出现的所有 AI 生成的代码建议(包括幽灵文本和下一步编辑建议)。我们也在继续努力统一实际的产品体验,包括各种建议的用户体验(UX)和显示时机。
探索与贡献
随着行内建议已在 vscode-copilot-chat 仓库中开源,你可以探索并为其工作原理做出贡献

- “按建议键入”检测 - 当你键入时,扩展首先会检查你是否在遵循先前的建议,并能够在不发出新请求的情况下继续显示它
- 缓存 - 如果不是按建议键入,扩展会检查是否可以复用缓存的建议以提升性能
- 复用进行中的请求 - 如果没有可用的缓存建议,扩展会检查上一次按键是否有尚未完成流式返回的进行中的 LLM 请求。由于这个进行中的请求可能与当前的请求相似,扩展会复用它,而不是触发新请求并取消当前的请求,这显著提升了性能
- 提示词构建 - 如果没有可复用的进行中请求,扩展会从当前文件、打开的文件和工作区中收集相关的上下文,然后将其格式化为提示词发送给 LLM
- 模型推理 - 扩展从多个提供程序请求行内建议:针对当前光标位置的幽灵文本建议,以及预测你接下来可能在哪里进行编辑的下一步编辑建议。当光标处的幽灵文本建议可用时,会优先使用它们;否则,将使用下一步编辑建议
- 后处理 - 对原始模型输出进行精炼,以确保它们符合你的代码风格、缩进和语法
- 多行智能 - 扩展根据置信度和上下文,决定是显示单行还是多行
性能改进
除了整合为单个扩展外,这次重构还带来了行内建议的技术改进
- 降低延迟 - 我们修复了网络问题以优化建议的交付方式,使聊天扩展能够更快地提供幽灵文本
- 质量验证 - 我们进行了广泛的实验,以确保延迟和建议质量都没有出现回归
疑难解答
与所有变更一样,尽管我们做出了最大努力,仍有可能漏掉某些问题!如果你在统一的扩展体验中遇到任何问题,可以通过取消勾选统一设置,临时恢复到之前的双扩展行为

下一步是什么?
我们开源之旅的下一个阶段是将 Copilot Chat 扩展中的一些 AI 功能和组件重构到 VS Code 核心中。我们很高兴能与社区继续这段旅程,并将开发未来塑造为一个开源的 AI 编辑器。
我们将继续积极改善行内建议体验 —— 一如既往,你可以通过关注我们的迭代计划来了解最新动态

我们欢迎你的反馈和贡献。欢迎随时提交 Pull Request 并提交 Issue。
编码愉快! 💙
VS Code 团队