Skip to content

GitHub Copilot CLI 是一款终端原生的 AI 编程助手,支持 npm / WinGet / Homebrew 安装,安装后在项目目录运行 copilot 即可进入交互界面。和 Copilot 插件相比,CLI 更适合不想离开终端的开发者,以及 CI/CD 和脚本自动化场景。

GitHub Copilot CLI 快速入门:终端里的 AI 编程助手

安装

根据你的操作系统选择安装方式:

bash
# npm(跨平台,推荐)
npm install -g @github/copilot

# WinGet(Windows)
winget install GitHub.Copilot

# Homebrew(macOS / Linux)
brew install copilot-cli

安装完成后确认版本:

bash
copilot --version

首次使用:登录认证

进入项目目录,启动 Copilot CLI:

bash
cd your-project
copilot

在交互界面输入 /login 完成 GitHub 账号认证。认证成功后 CLI 会将 token 保存在本地,后续使用无需重复登录。

基础交互

启动后进入交互式 REPL 界面,直接输入自然语言提问即可:

Give me an overview of this project.
What does the authentication module do?
How do I add a new API endpoint to this Express app?

Copilot CLI 会读取当前目录的文件(通过 @ 引用)作为上下文。

快捷键速查

快捷键功能
Esc取消当前操作
Ctrl+C取消 / 清空输入 / 退出
Ctrl+L清屏
@文件名引用文件作为上下文
/显示可用命令列表
?帮助
/ 浏览历史命令

查看完整快捷键列表:

bash
/help

引用文件

在提问时用 @ 引用具体文件,让 Copilot 聚焦在相关代码上:

@src/auth/login.ts 这个文件的认证流程是什么?
@package.json 我应该添加哪个测试框架?

slash commands

/explain    解释指定代码
/fix        修复问题
/test       生成测试
/new        创建新文件或目录结构
/help       帮助
/login      重新登录
/logout     退出认证

非交互模式(脚本调用)

适合在 CI/CD 流水线或脚本中使用:

bash
# 直接运行后退出
copilot -p "In Git, how can I apply a commit from another branch?"

# 仅输出 Copilot 的回复(不含界面元素,方便管道处理)
copilot -sp "Explain what this script does: $(cat deploy.sh)"

非交互模式的完整选项:

bash
copilot help

和 Copilot IDE 插件的对比

维度Copilot CLICopilot IDE 插件
使用场景终端、脚本、CI/CDIDE 内编码
交互方式命令行 REPL + 非交互模式内联建议 + Chat 面板
上下文来源@文件名 显式引用IDE 自动感知当前文件
Agent 功能支持 Copilot CLI Agent(自主执行任务)Chat Agent 模式
适合人群Vim/终端用户、自动化工程师VS Code / JetBrains 用户

和 Claude Code 对比:两者都是终端 AI 工具,主要区别在于 Copilot CLI 深度集成 GitHub 平台(能查 PR、Issue、仓库信息),而 Claude Code 更强调文件系统级别的自主 Agent 操作(可以直接读写文件、运行命令、执行多步任务)。如果主要工作在 GitHub 上,选 Copilot CLI;如果需要本地文件深度操作,选 Claude Code。

常见问题

Q: 安装后运行 copilot 提示 "command not found",怎么解决?

A: 检查 npm 全局安装路径是否在系统 PATH 中。运行 npm config get prefix 查看 npm 前缀路径,确保 {prefix}/bin 在 PATH 里。Windows 用户推荐用 WinGet 方式安装,自动配置 PATH。

Q: Copilot CLI 的 Agent 模式是什么?

A: Copilot CLI 的 Agent(即 Copilot CLI Agents)可以代替你执行一系列终端操作——读取文件、运行命令、创建 PR 等,类似 Claude Code 的 agentic 工作流但集成了 GitHub 平台。详见 Copilot CLI Agent 使用指南

Q: 非交互模式下如何把 Copilot 的输出用在脚本里?

A: 使用 -sp 选项(仅输出纯文本),结合 shell 管道或变量捕获:ADVICE=$(copilot -sp "your question"),然后正常使用 $ADVICE 变量即可。