---
title: "Copilot CLI 是什麼"
description: "說明 GitHub Copilot CLI 的互動和非互動模式、Plan、自動上下文、定製、模型和安全邊界。"
verifiedAt: "2026-05-06"
---

GitHub Copilot CLI 是終端裡的 AI 程式設計助手。官方概念頁說明，它可以回答問題、寫程式碼和除錯、與 GitHub.com 互動，例如讓 Copilot 修改專案並建立 pull request。

它不是舊版 `gh copilot` 的同義詞，也不只是“命令解釋”。這套 CLI 以 `copilot` 命令啟動，支援 interactive 和 programmatic 兩種介面。

> [!TIP]
> **閱讀目標**：讀完本章，你應該能判斷 Copilot CLI 適合哪些終端任務，以及哪些許可權必須人工控制。

## 1. 支援系統和可用範圍

2026-05-06 核驗時，官方文件說明：

- Copilot CLI 可用於所有 Copilot plans。
- 如果你透過組織獲得 Copilot，組織設定裡必須啟用 Copilot CLI policy。
- 支援 Linux、macOS，以及 Windows 的 PowerShell 和 Windows Subsystem for Linux。

```mermaid
flowchart TD
    CLI["copilot"] --> Interactive["Interactive interface"]
    CLI --> Programmatic["Programmatic interface"]
    Interactive --> Ask["ask / execute"]
    Interactive --> Plan["plan mode"]
    Interactive --> Auto["autopilot"]
    Programmatic --> Prompt["-p / --prompt"]
    Prompt --> Flags["allow / deny tool flags"]
    Ask --> Review["人工 review"]
    Plan --> Review
    Auto --> Review
    Flags --> Review

    style Plan fill:#dbeafe,stroke:#2563eb,stroke-width:2px
    style Auto fill:#fef3c7,stroke:#d97706,stroke-width:2px
    style Review fill:#dcfce7,stroke:#16a34a,stroke-width:2px
```

## 2. Interactive interface

輸入 `copilot` 啟動互動式會話。你可以和 Copilot 對話、讓它執行一個或多個任務，也可以繼續 steer conversation。

官方說明 interactive interface 有預設 ask/execute mode，也有 plan mode。按 `Shift` + `Tab` 可以在模式之間切換。Plan mode 會先分析請求、提出澄清問題、構建計劃，然後再寫程式碼，適合複雜多步驟任務。

適合：

- 需要你邊看邊確認的程式碼改動。
- 需要多輪澄清的任務。
- 需要先 Plan 再執行的高風險變更。

## 3. Programmatic interface

可以用 `-p` 或 `--prompt` 直接把 prompt 傳給 CLI，讓它完成一次任務後退出。

```bash
copilot -p "列出本周 main 分支上的所有 commit" \
  --allow-tool='shell(git)'
```

也可以把指令碼輸出的 CLI options pipe 給 `copilot`。這種方式適合自動化，但必須更謹慎配置工具許可權，因為錯誤命令會在無人盯守時造成副作用。

## 4. 定製能力

官方概念頁列出 Copilot CLI 可定製能力：

- **Custom instructions**：給專案構建、測試、驗證方式補充上下文。
- **MCP servers**：連線外部資料來源和工具。
- **Custom agents**：針對 code review、文件、安全等任務建立專門 agent。
- **Hooks**：在 agent 執行關鍵點執行 shell commands。
- **Skills**：用說明、指令碼和資源增強特定任務能力。
- **Copilot Memory**：讓 Copilot 記住儲存庫裡的 coding conventions、patterns 和 preferences。

這些能力適合成熟團隊，不應在沒有許可權和審查策略前一次性全開。

## 5. 自動上下文管理

官方說明 CLI 會自動管理 conversation context：

- 接近 token limit 時會自動壓縮歷史。
- 可以用 `/compact` 手動壓縮。
- `/context` 會顯示 token usage breakdown。

這讓會話更長，但不代表歷史上下文一定乾淨。無關任務仍然應該開新 session。

## 6. 安全邊界

官方安全說明很明確：Copilot CLI 可以代表你執行任務，包括修改檔案和執行 shell commands。你應該像自己直接在終端執行命令一樣審查。

關鍵規則：

- 只在可信目錄啟動 CLI。
- 不要從 home directory 或含敏感資料的目錄啟動。
- 工具 approval 不要隨手給 session-wide permission。
- 自動 approval 選項會增加資料丟失和破壞性操作風險。
- 需要自動化時，優先放進容器、虛擬機器或受限環境。

<details>
<summary>深讀：預設模型和自帶模型供應商</summary>

官方頁面在 2026-05-06 核驗時寫明：Copilot CLI 預設模型是 Claude Sonnet 4.5，但 GitHub 保留更改預設模型的權利。可以用 `/model` 或 `--model` 切換可用模型。

CLI 還可以透過環境變數接入自己的 model provider，例如 OpenAI-compatible endpoint、Azure OpenAI、Anthropic 或本地 Ollama。模型需要支援 tool calling 和 streaming，官方建議 context window 至少 128k tokens。
</details>

## 本章自檢

完成本章後，用這 4 個問題檢查：

1. 當前任務應該用 interactive、programmatic、plan 還是 autopilot？
2. 當前目錄是否可信，是否含敏感檔案？
3. 需要哪些工具許可權，哪些命令必須拒絕？
4. 輸出是否能透過 diff、測試、PR 或 rollback 驗收？

透過標準：你能把 CLI 當成受控終端 agent，而不是不受限制的 shell 自動執行器。

## 官方來源

- [About GitHub Copilot CLI](https://docs.github.com/en/copilot/concepts/agents/copilot-cli/about-copilot-cli) —— 官方概念頁。
- [Getting started with GitHub Copilot CLI](https://docs.github.com/en/copilot/how-tos/copilot-cli/cli-getting-started) —— 官方快速開始。
- [Responsible use of GitHub Copilot CLI](https://docs.github.com/en/copilot/responsible-use/copilot-cli) —— 官方 responsible use 頁面。

## 接下來去哪

<Cards>
  <Card title="安裝、認證和配置" description="繼續把 CLI 裝好、登入、信任目錄並配置工具許可權。" href="/zh-Hant/docs/github-copilot/official/05-copilot-cli/install-auth-config" />
  <Card title="委派任務" description="繼續區分本地 autopilot 和雲端 /delegate。" href="/zh-Hant/docs/github-copilot/official/05-copilot-cli/delegate-tasks" />
</Cards>
