
GitHub Copilot X 是一个由 GitHub 开发的人工智能编程助手,它可以在你编写代码的过程中,根据你的输入提供代码建议。
GitHub Copilot X 目前刚刚推出不久,需要申请加入等待名单队列中,成功排上队之后就可以体验了。这里的“X”代表一个占位符,表示希望 GitHub Copilot 可用的位置,目前有以下服务,可以进行申请:
- Copilot Chat: 申请链接,在编辑器中集成与 VS Code 和 Visual Studio 的聊天界面,帮助开发者深入分析代码、生成单元测试和修复 bug,让你可以边写代码边聊天(摸鱼)。
- Copilot Voice: 申请链接,允许开发者通过口头指令进行自然语言陈述意图,然后让 Copilot Voice 完成生成代码片段的繁重工作。
- Copilot for Docs: 申请链接,能够回答有关软件文档的问题,使开发人员免于搜索大量文档。初步支持 React、Azure Docs 和 Mozilla Developer Network (MDN) 文档查询。
- Copilot for PRs: 申请链接,帮助开发者更好的编写 PR 描述,并帮助团队更快地审查和合并 PR。
- Copilot CLI: 申请链接,将自然语言翻译成终端命令。

你知道的,最近 ChatGPT 在我们的技术圈子里火得一塌糊涂,而看来,GitHub Copilot 也没打算落后,居然也跟风推出了 Chat 模式!这还不得马上尝尝鲜?
GitHub Copilot Chat 安装
目前还处于 beta 版,使用起来有几个条件:
- 有 Chat 模式的权限,没有可以先加入候补:GitHub Copilot chat waitlist
- 使用 VSCode Insiders 版本
- 安装 GitHub Copilot 插件
别被这些“Insiders”和“Nightly”吓到,这些只是开发者用来尝鲜的版本,并不适合生产环境使用。

安装完后,你会发现 VSCode 的侧边栏多出了一个对话图标,这就是 Copilot 的 Chat 模式的入口。整个界面干净利落,聊天框内既可以输入普通的文本,也可以用斜杠 "/" 触发特定的指令。当有对话内容后,聊天框上方会出现一条推荐问题。
GitHub Copilot Chat 使用场景
你可以把 Copilot 当作简化版的 ChatGPT 来使用。它默认用英文回答问题,但你也可以让它用中文回答。只是当你问一些它答不上来或者非技术相关的问题时,它会拒绝回答,或者虽然回答了,但会提示说:“我作为一个编程助手,xxx”(翻译:我主要还是写代码的...)
我测试了一下,发现它对于一些常识类或者数理逻辑的问题还是可以回答的,但创作类的问题就难倒它了。所以,我们还是来看看它真正擅长的部分:编程助手。
GitHub Copilot Chat 对话编码
有点像结对编程啊,一边聊天一边编程。生成的代码,可以复制到剪切板,可以直接插入到右侧编辑区域的光标所在处,还可以 Insert Into New File、Run in Terminal(入口在代码区域的右上角)。

亦可赛艇!
行内对话模式:以上是在对话框里面生成大段代码,如果是想在现有代码中新增代码,则可以在光标处使用快捷键
command + I
唤出内置对话框,输入代码任务。
我综合测试了一下 GitHub Copilot Chat 生成的代码和 Google Bard、ChatGPT 4、ChatGPT 3.5 生成的代码,整体来说,和 ChatGPT 4 非常接近,代码逻辑基本一致。
微软诚不我欺,相比之前的版本,GitHub Copilot X 简直就是变魔术一般,让我可以自由地指定代码段,指定 Prompt 和任务。再也不是那种一味地按 Tab 等待代码出现的日子了,让我在编程的世界里自由涂鸦,随心所欲。
我可以自信地说:这个工具改变了一切,我们编写代码的方式将在未来一两年发生根本性的变化,游戏规则发生改变了。
GitHub Copilot Chat 内置命令
在聊天框内输入斜杠 "/",你就可以针对当前鼠标的位置、选择的代码、当前文件或项目做一些操作,比如:
/explain
- Step by Step 的解释选中代码逻辑
/tests
- 为选中代码生成单元测试
/simplify
- 简化选中代码
/fix
- 修复选中代码可能存在的bug
/vscode
- 关于 VS code 的问题
/ext
- 关于 VS Code 扩展开发的问题
/help
- 帮助
如果有段代码不理解了,可以使用
/explain
命令,Copilot Chat 会开始解释这个函数,前提是你将鼠标放在函数里面。以后再也没有看不懂的代码了🤔
再来写个单元测试,
/tests
哇哈哈哈,直接 Insert Into New File,生成单元测试文件。
代码简化和 Fix Bug 功能都是类似的,就不演示了,都很简单。
思考 GitHub Copilot Chat
说到这里,我们不得不讨论一下 Chat 模式的重要性。对我来说,原来的 Copilot 更像是在特定场景下被动触发的工具。比如,当你输入了一些代码或注释后,Copilot 会根据上下文自动生成接下来的文字。但是 Chat 模式的 Copilot 毋庸置疑功能肯定是更强大,更灵活,更自然,因为现在的主导权完全在用户手中。
在我们日常的开发过程中,我们遇到的问题通常可以用自然语言描述,比如:“这段代码怎么优化?”、“我需要一个从 URL 中提取参数的方法。”使用对话,非常便捷解决这些问题。
新版的 Copilot 更符合我们解决问题的流程:开发者主动定位代码 -> 提出问题 -> Copilot 解决问题。
首先,是编码效率的极大提升
看看 GitHub 的数据。

然后,大幅降低变成门槛,对编程新手也很友好
软件开发人员不再需要非常熟悉编程语言本身和 API,新手也能快速上手进进行编程工作。诚然,这对我们普通的程序员来说,或许是一种“威胁”。因为这个工作很多人都能做了,比如产品经理(可能比程序员更理解需求)、应届毕业生。这种趋势是不可阻挡的。可能几年之后,编程工作就像现在的 Office 一样了,人人唾手可得。
如何应对?
普通的编码工作、调试工作、变得很简单了,那么什么会变得更重要呢?
系统设计能力?软件开发思想?设计模式?业务能力?我认为都这都是答案的一部分!
我们现在需要思考的是,如何将这类产品变成我们的得力助手,从而为我们自身带来更多的价值。
以上就是我的体验分享,希望能帮到你。不管是新手还是老手,都可以试试这个新功能,也许会有惊喜哦!