本文根據 GitHub 官方文檔《Getting started with GitHub Copilot CLI》《Installing GitHub Copilot CLI》《Allowing and denying tool use》整理,資料核對於 2026-10-11。注意:這裏說的是新的獨立命令copilot,不是早年的gh copilot擴展。
適用於誰
- 習慣在終端裏幹活,想要一個命令行裏的編程智能體的人;
- 搜「github copilot cli 安裝」「github copilot cli 使用」「github copilot cli 指令」的人;
- 想在腳本里調用 Copilot 的人。
結論先說
- 安裝三選一:
npm install -g @github/copilot(需要 Node.js 22 及以上)、Windows 用winget install GitHub.Copilot、macOS / Linux 用brew install --cask copilot-cli。 - 進入項目目錄運行
copilot,第一次輸入/login按提示登入 GitHub,並確認信任當前目錄。 - 只讀操作自動放行,會改東西的操作要你批准:改文件、有破壞性的命令、訪問網址都會先問。
copilot -p "問題"可以不進交互介面直接拿回答,適合寫進腳本。- CLI 的每次交互消耗 AI credits,官方建議 CLI 版本不低於 1.0.48。
步驟一:安裝
| 方式 | 命令 | 備註 |
|---|---|---|
| npm(全平台) | npm install -g @github/copilot | 需 Node.js 22+ |
| WinGet(Windows) | winget install GitHub.Copilot | Windows 還需要 PowerShell 6 及以上 |
| Homebrew(macOS / Linux) | brew install --cask copilot-cli | — |
| 安裝腳本(macOS / Linux) | curl -fsSL https://gh.io/copilot-install \ | bash |
也可以到 github/copilot-cli 倉庫的 Releases 頁下載對應平台的可執行文件。
一個容易踩的坑:如果你的 ~/.npmrc 裏設定了 ignore-scripts=true,官方要求改用:
bash
npm_config_ignore_scripts=false npm install -g @github/copilot
公司帳號要注意:組織或企業管理員在策略裏禁用了 Copilot CLI 時,你裝了也用不了。
步驟二:第一次啟動
- 在終端裏進入項目目錄;
- 運行
copilot進入交互會話; - 輸入
/login,按螢幕提示用 GitHub 帳號授權(只需要做一次); - 按提示確認「信任當前目錄裏的文件可以交給 AI 工具使用」;
- 試着問一句:
text
給我講講這個項目的整體結構。
官方的說明是:沒有你的明確批准,Copilot 不會修改你的文件。
用令牌登入(適合 CI 或沒有瀏覽器的環境):創建一個細粒度個人訪問令牌,資源所有者選你的個人帳號(不要選組織),在 Account 權限裏加上 Copilot Requests,然後放進環境變量。CLI 按 COPILOT_GITHUB_TOKEN、GH_TOKEN、GITHUB_TOKEN 的順序讀取。令牌是密鑰,只放環境變量或密鑰管理工具裏,不要寫進腳本和倉庫。
步驟三:交互模式的基本操作
| 按鍵 / 輸入 | 作用 |
|---|---|
| Esc | 取消當前操作 |
| Ctrl + C | 思考中則取消;否則清空輸入或退出 |
| Ctrl + L | 清屏 |
@ | 提到文件,把它加入上下文 |
/ | 顯示斜槓命令 |
? | 顯示分頁幫助 |
| ↑ / ↓ | 翻歷史輸入 |
完整的快捷鍵和命令列表輸入 /help 查看。
步驟四:非交互調用(寫腳本用)
bash
# 直接提問,回答打印在終端
copilot -p "在 Git 裏怎麼把另一個分支上的某個提交拿過來"
# 加 -s:只輸出回答,不帶用量資訊
copilot -sp "把上面的問題用一句話回答"
其他可用於腳本的參數,運行 copilot help 或 copilot help 主題 查看。
工具權限:讓它少問,但別全放開
CLI 能執行 shell 命令、讀寫文件、搜尋代碼、抓取網頁、把任務派給子智能體。預設規則:
- 自動允許:搜尋、讀文件、只讀的 shell 命令;
- 需要批准:有破壞性的 shell 命令、編輯文件、訪問 URL。每次詢問時可以選「只允許這一次」或「本次會話內都允許」。
有些選項會把你的同意存下來:對當前倉庫 / 目錄的批准寫進 ~/.copilot/permissions-config.json;對網址的永久批准則把域名加進 ~/.copilot/settings.json 的 allowedUrls,對所有會話生效。
啟動時也可以用參數預先設定(只對當次會話有效):
| 參數示例 | 效果 |
|---|---|
--allow-tool='shell(git commit)' | 允許 git commit |
--allow-tool='shell(git:*)' --deny-tool='shell(git push)' | 允許所有 git 命令,但不許 push |
--deny-tool=write | 禁止一切寫文件 |
--excluded-tools='web_fetch, web_search' | 讓模型根本看不到聯網工具 |
--available-tools='bash,edit,view,grep,glob' | 只保留這幾種工具,其餘全部禁用 |
兩條規則記住:deny 永遠優先於 allow(即使用了 --allow-all 或有已儲存的批准);--available-tools 和 --excluded-tools 是「模型知不知道有這個工具」,--allow-tool / --deny-tool 是「用之前要不要問你」。
官方給的一個受限會話組合很適合日常參考:
bash
copilot --available-tools='bash,edit,view,grep,glob' \
--allow-tool='shell(git:*)' --deny-tool='shell(git push)'
這樣 Copilot 可以看代碼、改文件、提交,但不能聯網、不能隨意起子智能體,也不能推送。
常見問題
Q:怎麼更新?
用安裝時的那個包管理器更新(官方安裝頁的標題就是「Installing or updating」,npm 重新執行安裝命令即可);具體的更新命令列在官方的 CLI command reference 裏。預發佈版分別是 @github/copilot@prerelease、GitHub.Copilot.Prerelease、copilot-cli@prerelease。
Q:和 IDE 裏的 Copilot 是一份額度嗎?
是同一個帳號的同一份 AI credits,官方說明基礎額度和彈性額度在 IDE、GitHub.com 和 CLI 上按相同費率使用。見《GitHub Copilot 免費版與 Pro 區別》。
Q:能讀項目裏的指令文件嗎?
可以,倉庫的 .github/copilot-instructions.md 和 AGENTS.md 都是 Copilot 支持的指令來源,見《copilot-instructions.md 怎麼寫》。
Q:和 Claude Code、Codex CLI 是一類東西嗎?
定位相近,都是終端裏的編程智能體;區別在帳號體系、計費和各自的生態。本站另有《Claude Code 中文入門教學》和《Codex 入門教學》。
參考資料
- Getting started with GitHub Copilot CLI(GitHub 官方):https://docs.github.com/en/copilot/get-started/cli-quickstart
- Installing GitHub Copilot CLI(GitHub 官方):https://docs.github.com/en/copilot/how-tos/copilot-cli/set-up-copilot-cli/install-copilot-cli
- Allowing and denying tool use(GitHub 官方):https://docs.github.com/en/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools
- Usage-based billing for individuals(GitHub 官方):https://docs.github.com/en/copilot/concepts/billing-and-usage/individuals/billing
0 條評論
還沒有評論,來搶沙發~