AI 编程教程中文版
官方教程中文版Copilot CLI

Copilot CLI

按 GitHub 官方文档梳理 Copilot CLI 的安装认证、权限配置、任务委派、回滚和 PR 工作流。

GitHub Copilot CLI 把 Copilot 放进终端。它可以回答问题、写代码、调试、与 GitHub.com 互动,也可以用程序化(programmatic)方式接入脚本。

这组页面不把 CLI 当"命令解释器"轻描淡写。官方文档已经把它描述成"原生于终端的 AI 编程助手":它能读写文件、运行 shell commands、调用工具、管理 PR,也能进入 autopilot 自动模式——能力越靠近终端,越需要权限、审查和回滚这条配套链。

阅读目标:读完本组索引,你应该能把 Copilot CLI 放进可回滚、可审查、可限制工具权限的终端工作流。

1. 工作流地图

  • 安装认证:用 npm、Homebrew、WinGet 或安装脚本安装;首次启动用 /login
  • 配置边界:确认 trusted directories、allowed tools、path permissions、URL permissions。
  • 交互使用:输入 copilot 启动 session,用 Ask / Plan / Execute 处理任务。
  • 非交互使用:用 -p--prompt 从命令行传入一次性 prompt。
  • 委派任务:用 autopilot 在本地执行,或用 /delegate 交给 cloud agent。
  • 回滚:用双击 Esc/undo 回到某个 prompt 前的 snapshot。
flowchart TD
    Install["安装 Copilot CLI"] --> Login["/login 认证"]
    Login --> Trust["确认 trusted directory"]
    Trust --> Mode{"使用方式"}
    Mode --> Interactive["Interactive session"]
    Mode --> Programmatic["-p / --prompt"]
    Interactive --> Tools["工具批准 / allow-deny"]
    Programmatic --> Tools
    Tools --> Work["读写文件 / shell / GitHub"]
    Work --> Review["diff / test / PR"]
    Review --> Rollback{"需要回滚?"}
    Rollback -->|是| Undo["Esc Esc / /undo"]
    Rollback -->|否| Done["提交或 PR review"]

    style Trust fill:#fef3c7,stroke:#d97706,stroke-width:2px
    style Review fill:#dcfce7,stroke:#16a34a,stroke-width:2px
    style Undo fill:#fee2e2,stroke:#dc2626,stroke-width:2px

2. 本组页面

3. 团队默认策略

建议把 Copilot CLI 作为受控终端 agent,而不是默认全自动:

  • 不从 home directory 启动。
  • 不在含敏感数据或未知可执行文件的目录里信任 workspace。
  • 默认不使用 --allow-all-tools
  • 禁止自动执行 rmgit push、部署、云资源修改。
  • 允许工具时优先 --allow-tool 精确授权。
  • 每次写入后看 git diff 和测试结果。
  • 会话失败时先回滚,再重新缩小任务。

4. 适合任务

适合:

  • 解释命令和错误。
  • 快速探索代码库。
  • 生成小补丁、测试或脚本。
  • 管理 issue、PR、GitHub Actions。
  • 把任务委派到 cloud agent 继续异步执行。

不适合:

  • 无人值守生产部署。
  • 需要真实凭据和客户数据的排障。
  • 没有 Git 仓库和快照的高风险写入。
  • 任务范围不清却开启 autopilot。
深读:为什么 CLI 比 IDE Chat 更需要权限模型

IDE Chat 的很多输出仍需要你复制或应用;CLI 可以直接运行 shell command、修改文件、调用 GitHub 或 MCP 工具。终端的副作用更直接。

所以 Copilot CLI 的商业级使用重点不是“能不能帮我做”,而是“允许它用哪些工具、哪些路径、哪些 URL,以及出错后怎么撤回”。

本组自检

读完整组后,用这 4 个问题检查:

  1. 当前目录是否值得信任,是否含敏感或未知可执行内容?
  2. 当前任务需要哪些 tool、path、URL 权限,哪些必须禁用?
  3. 使用 autopilot 或 /delegate 前,任务边界是否足够清楚?
  4. 写入后能否用 snapshot、Git、PR 或人工 review 回滚和审查?

通过标准:CLI 会话的每次写入、命令和委派都有可审查证据。

官方来源

接下来去哪

本页目录