技术速递|从想法到拉取请求:使用 GitHub Copilot CLI 构建的实用指南

作者:Ari LiVigni

排版:Alan Wang

一份动手实践指南,讲解如何使用 GitHub Copilot CLI 从意图出发,逐步生成可供审查的代码变更,以及这些工作如何自然地流转到你的 IDE 和 GitHub 中。

大多数开发者早已在终端中完成实际工作。

我们在终端中初始化项目、运行测试、调试 CI 失败,并在代码准备好评审前进行快速、机械性的修改。GitHub Copilot CLI 正是契合了这种工作方式:它帮助你直接在终端中从"意图"转化为"可评审的差异",并将这些工作自然衔接到编辑器或拉取请求中。

本文基于一个新的 GitHub Skills 实践练习,介绍如何使用 Copilot CLI 构建并演进一个应用的实用工作流。该练习提供了分步引导和动手实践,而本文重点解释每一步为何有效,以及在真实项目中何时使用。

🔍 通过 GitHub Skills 深入学习

如果你希望获得完整引导并进行动手练习,可以查看 GitHub Skills 课程:用 Copilot CLI 创建应用

该课程在预配置的 GitHub Codespaces 环境中逐步讲解这些模式,是在应用到生产代码前进行安全实验的好方式。内容包括:

  • 安装 Copilot CLI,并使用 issue 模板创建 issue
  • 生成一个 Node.js CLI 计算器应用
  • 扩展计算器功能,增加额外的运算
  • 为函数编写单元测试
  • 创建、评审并合并拉取请求

Copilot CLI 是什么(以及它不是什么)

Copilot CLI 是一个运行在终端中的、具备 GitHub 上下文感知能力的编码智能体。你可以用自然语言描述需求,使用 /plan 在动手前制定计划,然后在执行前审查具体命令或 diff。Copilot 可能会进行内部推理,但只有在你明确批准后才会执行操作。

在实践中,它可以帮助你:

  • 根据意图探索问题

  • 使用 /plan 制定结构化方案(或通过 Shift + Tab 进入规划模式)

  • 生成或修改文件

  • 在失败发生时解释原因

它不会:

  • 未经允许自动执行命令或修改代码

  • 取代严谨的设计工作

  • 消除代码评审的必要性

你始终掌控执行、修改和发布的过程。

Step 1:从意图开始,而不是脚手架

不要先选框架或复制模板,而是先说明你想构建什么。

在空目录中运行:

plain 复制代码
copilot
> Create a small web service with a single JSON endpoint and basic tests

如果你希望通过单条提示直接生成方案,而不是进入交互模式,也可以运行:

plain 复制代码
copilot -p "Create a small web service with a single JSON endpoint and basic tests"

在该 Skills 实践中,这一模式被反复使用:先描述你的意图,然后再决定哪些建议的命令是你真正想要执行的。

此阶段 Copilot CLI 会探索问题空间,例如:

  • 推荐技术栈

  • 设计文件结构

  • 提出初始化命令

不会有任何自动执行------你可以先检查,再决定是否运行。这使 CLI 成为尝试设计方案的理想环境。

Step 2:只生成你愿意"负责"的脚手架

当你确定方向后,可以让 Copilot CLI 帮你生成项目结构:

plain 复制代码
> Scaffold this as a minimal Node.js project with a test runner and README

它可以:

  • 创建目录与配置

  • 搭建基础结构

  • 生成样板代码

不会有任何操作被自动执行。在决定运行之前,你需要先检查所有内容。这使得 CLI 成为在确定设计方案之前进行实验的理想环境。

Step 3:在失败点迭代

直接在 Copilot CLI 中运行测试:

plain 复制代码
Run all my tests and make sure they pass

当出现问题时,可以在同一会话中直接向 GitHub Copilot 询问具体的失败原因:

plain 复制代码
> Why are these tests failing?

如果你希望获得一个具体的解决方案,而不是解释,可以尝试:

plain 复制代码
> Fix this test failure and show the diff

这种模式------执行( !command )、检查、提问、diff------让智能体始终基于真实输出进行工作,而不是依赖抽象的提示。

💡小提示 :在实际使用中,当你需要理解问题时,explain 更有用;而当你希望获得一个可供审查的具体方案时,suggest 更合适。你可以在我们的指南中了解更多关于 GitHub Copilot CLI 斜杠命令的内容。

Step 4:处理机械性或全局修改

GitHub Copilot CLI 也非常适合处理那些"描述简单但执行繁琐"的修改:

plain 复制代码
> Rename all instances of X to Y across the repository and update tests

由于这类修改具有机械性且范围明确,因此既易于审查,也方便回滚。CLI 提供的是清晰具体的 diff,而不是一大段生成的文本。

Step 5:当你需要开始打磨代码时,切换到编辑器

最终,速度的重要性会逐渐让位于精确性。

这正是将工作自然过渡到编辑器或 IDE 的时机,因为在那里你可以:

  • 推理边界情况

  • 优化 API

  • 做出设计决策

GitHub Copilot 在这些环境中同样可用,但关键不在于"是否能用",而在于"为什么要切换环境"。CLI 帮助你快速产出可运行的成果,而 IDE 则是你将代码打磨成理想状态的地方。

一个实用的经验法则是:

  • CLI :使用 /plan、生成 /diff,以低成本快速推进

  • IDE :在需要细化逻辑、做出可经受评审的决策时使用 /IDE

  • GitHub :提交代码,使用 /delegate 创建拉取请求,并进行异步协作

Step 6:在 GitHub 上发布

当这些修改看起来没问题后,就可以提交并创建拉取请求,这一步也可以通过 GitHub Copilot CLI 用自然语言完成:

  • 添加并提交所有文件,并写上合适的描述性提交信息,然后推送更改

  • 创建一个拉取请求,并将 Copilot 添加为审查者

此时,工作变得更加"持久化":

  • 可以被团队成员审查

  • 可以在 CI 中进行测试

  • 可以进入异步迭代流程

这也是 Copilot 价值开始叠加的地方------它不再只是一个单一的交互界面,而是完整交付流程的一部分。该 Skills 练习也特意在这里结束,因为 Copilot 的真正价值体现在提交、拉取请求和代码评审之中,而不仅仅是生成建议。

一个工作流,三个时刻

关于 Copilot,有一个很有帮助的心智模型如下:

  • CLI:以低成本、快速验证价值

  • IDE:塑造并打磨你的代码

  • GitHub:评审、协作并交付

GitHub Copilot CLI 之所以强大,正是因为它融入了这一体系,而不是试图取代它。

使用 Copilot 进行开发?关于 Copilot SDK 的说明

如果你正在构建开发者工具、内部系统,或某种"智能体执行本身就是产品能力"的应用(而不仅仅是在终端中使用的工具),你可能需要了解 GitHub Copilot SDK(目前为技术预览版)。

Copilot SDK 提供对驱动 Copilot CLI 的同一套规划与执行引擎的程序化访问,而无需你自己构建和维护编排层。你不需要自己去连接规划器、工具和恢复逻辑,而是直接定义智能体行为,让 Copilot 负责执行。

当你希望在自己的工作流中进行快速、交互式执行时,使用 Copilot CLI;当你希望将同样的智能体能力嵌入到应用程序中时,使用 Copilot SDK。该 SDK 暴露的是 Copilot CLI 背后的执行引擎,但不包含 GitHub 特有能力,例如仓库范围记忆或"委托式拉取请求"工作流。

探索 Copilot SDK >

带走这些要点

当你把 GitHub Copilot CLI 当作"推动进度的工具",而不是"替代判断的工具"时,它的价值才能实现最大化。

合理使用时,它可以帮助你更快地从意图走向具体实现:探索想法、搭建项目、诊断失败、在终端中处理机械性工作。当需要精确性时,你转向编辑器;当准备分享成果时,它会以拉取请求的形式进入 GitHub ------可评审、可测试、可交付。

这个整体流程比任何单个命令都更重要。

如果你只从本文记住一句话,那就是:Copilot 最好的工作方式,是自然融入开发者已有的软件构建流程中。在 CLI 中快速启动并摆脱阻塞,在 IDE 中放慢速度做出可靠决策,并依靠 GitHub 让成果真正"沉淀下来"。

开始使用 GitHub Copilot CLI 或参加 Skills 课程 >

相关推荐
汪海游龙2 小时前
03.31 AI 精选:把通用设备改造成网络路由器的方法
github
AmyLin_20013 小时前
【pdf2md-1:开篇】高保真PDF转MarkDown附源码(标题/表格/图片全还原)
python·pdf·github·sdk·pdf2md·文档工具
irpywp3 小时前
OfficeCLl:为 AI 智能体而生的 Office 引擎
人工智能·github·开源软件
杜子不疼.3 小时前
2026 GitHub 热门 Python 项目:AI 代理与数据工具精选
人工智能·python·github
m0_694845574 小时前
WePY是什么?小程序组件化开发框架实战教程
服务器·docker·小程序·开源·github
第一程序员4 小时前
Python计算机视觉实战:从图像处理到目标检测
python·github
shughui5 小时前
2026Git 下载、安装、使用完整教程(附安装包)
git·github·代码仓库
AI自动化工坊12 小时前
ProofShot实战:给AI编码助手添加可视化验证,提升前端开发效率3倍
人工智能·ai·开源·github
疯狂成瘾者13 小时前
上传到 GitHub 的步骤总结
大数据·elasticsearch·github