参加你附近的 ,了解 VS Code 中的 AI 辅助开发。

宣布推出适用于 VS Code 的免费版 GitHub Copilot

2024 年 12 月 18 日,作者:Burke Holland, @burkeholland

我们很高兴地宣布,GitHub Copilot 推出了一个全新的免费计划,现已在 VS Code 中向所有人开放。您只需要一个 GitHub 帐户。无需试用,无需订阅,也无需信用卡。

启用 GitHub Copilot 免费版

您可以点击上方的链接,或者直接在 VS Code 中像这样启用 GitHub Copilot……

通过 GitHub Copilot 免费版,您每月可获得 2000 次代码补全。这大约是每个工作日 80 次——相当可观。您还可以获得每月 50 次聊天请求,以及使用 GPT-4o 和 Claude 3.5 Sonnet 模型的权限。

如果您达到了这些限制,理想情况下,这是因为 Copilot 很好地完成了它的工作,即帮助您完成您的工作!如果您发现需要更多 Copilot,付费的 Pro 计划提供无限制的使用次数,并可使用更多模型,如 o1Gemini(将于新年推出)。

随着这一宣布,GitHub Copilot 成为 VS Code 体验的核心部分。团队一如既往地努力工作,通过全新的 AI 功能和能力来改善这一体验。让我们来看看过去几个月 GitHub Copilot 新增的一些功能。这是您的编辑器,由 AI 重新定义。

使用 Copilot Edits 处理多个文件

Copilot Edits 是一种多文件编辑体验,您可以从聊天侧边栏的顶部打开。给定一个提示,Edits 将会提出跨文件的更改建议,包括在需要时创建新文件。这让您可以将聊天的对话流程与 Copilot 强大的代码生成能力相结合。其结果是您必须亲自尝试才能相信。

试试这个: 使用 Flutter 构建一个原生移动应用。我上周末构建了一个游戏,而我这辈子从没用过 Flutter。

多种模型,任您选择

无论您是使用聊天(Chat)、行内聊天(Inline Chat),还是 Copilot Edits,您都可以决定您的“结对程序员”是谁。

AI model selection menu in VS Code.

试试这个: 使用 4o 为一个新功能生成实施计划,然后将该提示输入到 GitHub Copilot Edits 中的 Claude 来构建它。

自定义指令

通过自定义指令,告诉 GitHub Copilot 您希望事情如何完成。这些指令会在每次请求时传递给模型,让您可以指定您的偏好以及模型需要知道的细节,从而按照您希望的方式编写代码。

您可以在编辑器或项目级别指定这些指令。如果您在项目中包含一个 .github/copilot-instructions.md 文件,我们甚至会自动识别它们。这些指令可以轻松地与您的团队共享,这样每个人(包括 GitHub Copilot)都能保持一致。

例如……

## React 18
* Use functional components
* Use hooks for state management
* Use TypeScript for type safety

## SvelteKit 4
* Use SSR for dynamic content rendering
* Use static site generation (SSG) for pre-rendered static pages.

## TypeScript
* Use consistent object property shorthand: const obj = { name, age }
* Avoid implicit any

试试这个: 让 Copilot 生成将数据库结构转储到文件的命令,然后将该文件设置为您的自定义指令之一。

全面的项目感知能力

GitHub Copilot 拥有由 AI 驱动的领域专家,您可以使用 @ 语法来提及他们。我们称之为“参与者”(participants)。@workspace 参与者是您整个代码库领域的专家。

GitHub Copilot 还会进行意图检测(如视频中所示),如果它发现您在问一个需要完整项目上下文的问题,它会自动包含 @workspace

试试这个: 在聊天提示中输入 /help,查看 GitHub Copilot 中所有参与者及其各自专业领域的列表,以及可以大大减少提示输入的斜杠命令。

命名和其他难题

人们常说,命名是计算机科学中最难的问题之一。按 F2 重命名某个东西,GitHub Copilot 会根据该符号在您代码中的实现和使用方式给出一些建议。

试试这个: 如果您不知道该叫什么,别想太多。就叫它 foo 并实现它。然后按 F2,让 GitHub Copilot 为您建议一个名字。

畅所欲言

选择麦克风图标开始语音聊天。这由免费、跨平台的 VS Code Speech 扩展提供支持,该扩展在本地模型上运行。无需第三方应用程序。

VS Code with file list and voice input active.

试试这个: 结合使用语音和 GitHub Copilot Edits 来为您的下一个应用构建原型。您简直可以“说”出一个可用的演示版。

成为终端专家

通过终端聊天,您几乎可以在终端中做任何事情。在 VS Code 终端中按 Cmd/Ctrl + i,告诉 GitHub Copilot 您想做什么。Copilot 还可以通过分析错误输出来解释如何修复失败的 shell 命令。

例如,我知道我可以使用 ffmpeg 库从视频中提取帧,但我不知道语法和参数。没问题!

Terminal displaying a script to extract video frames.

试试这个: 下次在终端中遇到错误时,注意提示符旁边的闪烁图标。选择它,让 GitHub Copilot 为您修复、解释,甚至自动更正 shell 命令。

无惧提交

告别那些写着“changes”的提交信息。GitHub Copilot 会根据您所做的更改和您最近的几条提交信息,为您建议一条提交信息。您可以使用自定义指令来生成提交信息,使其完全按照您想要的方式格式化。

试试这个: 不止于提交。安装 GitHub Pull Requests and Issues 扩展,您就可以生成拉取请求的描述、获取拉取请求的摘要,甚至获得问题的修复建议。所有这些都无需离开 VS Code。

有扩展就够了

每个 VS Code 扩展都可以直接接入 GitHub Copilot 的 API,并提供定制化的 AI 体验。看看 MongoDB 和他们的扩展,它可以编写非常复杂的查询、使用模糊搜索等等……

试试这个: 使用 GitHub Copilot 为 GitHub Copilot 构建您自己的扩展!我们创建了一些新的教程,向您展示如何构建一个代码导师聊天参与者生成由 AI 驱动的代码注释

未来的愿景

这最后一个是我们即将添加到 GitHub Copilot 的一项功能的预览,但它实在太酷了,不能不现在就向您展示。

安装 Vision Copilot Preview 扩展,让 GitHub Copilot 根据截图或标记生成界面。

或者用它为图片生成替代文本。

试试这个: 使用 Figma 或 Sketch(或者 PowerPoint——如果你这么做也没关系,我也这么做)制作一个 UI 模型。然后使用 @vision 生成 UI。您甚至可以告诉它使用哪个 CSS 框架。

注意: Vision 目前处于预览阶段,需要您拥有自己的 OpenAI、Anthropic 或 Gemini API 密钥。当我们将其作为 GitHub Copilot 的一部分发布时,将不再需要该密钥。敬请期待!

跟上 GitHub Copilot 的步伐

我们还有很多 GitHub Copilot 的功能想向您展示,但没有什么能取代您亲身体验。如果您刚刚开始,我们建议您观看这 3 个简短视频,以快速熟悉 Copilot 的用户界面,并学习一些提示工程的最佳实践。

我们每个月都会为 GitHub Copilot 发布更新和新功能。要了解最新的 AI 编码动态,最好的方法是在 XBlueskyLinkedIn,甚至 TikTok 上关注我们。我们会在更新发布时,以简短精炼的方式,直接在您的信息流中为您送上最新消息。

如果您有任何反馈,我们非常乐意倾听。欢迎在社交媒体上 @ 我们,或者在 GitHub Copilot 扩展问题仓库中提交问题或功能请求。

GitHub Copilot 在其他地方

作为免费套餐的一部分,您还可以在 GitHub.com 上使用 GitHub Copilot。

虽然我们与 GitHub 合作构建 Visual Studio Code 的体验,但 Copilot 本身并非 VS Code 独有。您可能想知道像 Visual Studio 这样的编辑器。这些用户是否也能获得免费的 Copilot 产品?

是的。当然。请查看 VS 团队的这篇博客文章,了解目前可用的功能以及即将推出的功能。

面向所有人的 AI 代码编辑器

2025 年将是 GitHub Copilot 的重要一年,它现在已成为整个 VS Code 体验的核心部分。我们希望您能加入我们,一起重新定义代码编辑器。再一次。

启用 GitHub Copilot 免费版

编码愉快!

Burke Holland @burkeholland