关于 copilot-cli
copilot-cli 是从 Claude Code 向 GitHub Copilot CLI 委派任务的技能,适用于指定模型、比较模型或导出会话结果的工作流。它涵盖非交互调用、权限控制和会话管理。
主要功能
- 01向 GitHub Copilot CLI 委派任务
- 02使用英文提示词
- 03选择模型并设置权限
- 04捕获输出或导出会话
- 05恢复已有会话
适用场景
- 01委派指定模型执行代码审查
- 02比较多个模型对同一任务的结果
- 03导出会话以供后续审阅
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ giuseppe-trisciuoglio/ developer-kit --skill copilot-cli安装后在 Claude Code 中输入/copilot-cli确认已加载。
附带文件references/cli-command-reference.md
详细介绍
Copilot CLI 委派
通过非交互式命令、明确选择模型、安全的权限标记和可分享的输出,将选定任务从 Claude Code 委派给 GitHub Copilot CLI。
概述
此技能规范了在其他模型可能更适合某项任务时,如何将任务委派给 GitHub Copilot CLI(copilot)。内容包括:
- 使用
-p/--prompt进行非交互式执行 - 使用
--model选择模型 - 权限控制(
--allow-tool、--allow-all-tools、--allow-all-paths、--allow-all-urls、--yolo) - 使用
--silent捕获输出 - 使用
--share导出会话 - 使用
--resume恢复会话
仅在用户明确要求委派给 Copilot,或这样做显然有帮助时,才使用此技能。
适用场景
在以下情况下使用此技能:
- 用户要求将工作委派给 GitHub Copilot CLI
- 用户想要指定模型(例如 GPT-5.x、Claude Sonnet/Opus/Haiku、Gemini)
- 用户要求使用多个模型对同一任务进行并列比较
- 用户想要可重复使用的脚本化 Copilot 调用
- 用户想将 Copilot 会话输出导出为 Markdown 以供审查
触发短语:
- “ask copilot”
- “delegate to copilot”
- “run copilot cli”
- “use copilot with gpt-5”
- “use copilot with sonnet”
- “use copilot with gemini”
- “resume copilot session”
指令
1) 验证前置条件
# CLI availability
copilot --version
# GitHub authentication status
gh auth status
如果无法使用 copilot,请先让用户安装并设置 GitHub Copilot CLI,再继续操作。
2) 将任务请求转换为英文提示词
所有委派给 Copilot CLI 的提示词都必须使用英文。
- 提示词应具体,并以结果为导向
- 包含文件路径、约束、预期输出格式和验收标准
- 避免使用“改进一下”这类含糊目标
提示词模板:
Task: <clear objective>
Context: <project/module/files>
Constraints: <do/don't constraints>
Expected output: <format + depth>
Validation: <tests/checks to run or explain>
3) 谨慎选择模型
根据任务类型和用户偏好选择模型。
- 复杂架构、深度推理:优先选择高能力模型(例如 Opus / GPT-5.2 级别)
- 均衡型编码任务:选择 Sonnet 级别模型
- 快速、低成本迭代:选择 Haiku 级别或 mini 模型
- 如果用户指定了模型,请尊重其选择
使用本地 Copilot CLI 模型列表中提供的确切模型名称。
4) 按最小权限原则选择权限
默认仅使用完成任务所需的最低权限。
- 任务范围较窄时,优先使用
--allow-tool '<tool>' - 仅在明确需要多个工具时使用
--allow-all-tools - 只有任务需要广泛文件系统访问时才添加
--allow-all-paths - 只有任务需要访问外部 URL 时才添加
--allow-all-urls - 除非用户明确要求授予全部权限,否则不要使用
--yolo
5) 运行委派命令
基本格式:
copilot -p "<english prompt>" --model <model-name> --allow-all-tools --silent
仅在需要时添加可选标记:
# Capture session to markdown
copilot -p "<english prompt>" --model <model-name> --allow-all-tools --share
# Resume existing session
copilot --resume <session-id> --allow-all-tools
# Strictly silent scripted output
copilot -p "<english prompt>" --model <model-name> --allow-all-tools --silent
6) 清晰地返回结果
命令执行后:
- 简洁地返回 Copilot 的输出
- 说明所用模型和权限配置
- 如果使用了
--share,提供生成的 Markdown 路径 - 如果输出较长,提供摘要、关键摘录和后续操作选项
7) 可选:多模型比较
用户提出要求时,使用多个模型运行相同的提示词并进行比较:
- 正确性
- 所提更改的实用性
- 风险与安全问题
- 工作量估算
保持比较客观、简洁。
示例
示例 1:使用 GPT 模型重构
输入:
Ask Copilot to refactor this service using GPT-5.2 and return only concrete code changes.
命令:
copilot -p "Refactor the payment service in src/services/payment.ts to reduce duplication. Keep public behavior unchanged, keep TypeScript strict typing, and output a patch-style response." \
--model gpt-5.2 \
--allow-all-tools \
--silent
输出:
Copilot proposes extracting three private helpers, consolidating error mapping, and provides a patch for payment.ts with unchanged API signatures.
示例 2:使用 Sonnet 进行代码审查并分享会话
输入:
Use Copilot CLI with Sonnet to review this module and share the session in markdown.
命令:
copilot -p "Review src/modules/auth for security and correctness. Report only high-confidence findings with severity and file references." \
--model claude-sonnet-4.6 \
--allow-all-tools \
--share
输出:
Review completed. Session exported to ./copilot-session-<id>.md.
示例 3:恢复会话
输入:
Continue the previous Copilot analysis session.
命令:
copilot --resume <session-id> --allow-all-tools
输出:
Session resumed and continued from prior context.
最佳实践
- 委派提示词应使用英文,并且高度具体
- 优先使用最小权限标记,避免授予宽泛权限
- 需要可审计性时,使用
--share捕获会话 - 对于有风险的任务,先要求进行只读分析,再单独执行更改
- 只有在确有价值时(质量、速度或成本),才使用其他模型重新运行
限制与警告
- Copilot CLI 输出来自外部模型:应用代码更改前请先验证
- 委派提示词中绝不要包含机密、API 密钥或凭据
--allow-all-tools、--allow-all-paths、--allow-all-urls和--yolo会增加风险;仅在有充分理由时使用- 未经本地验证(测试/lint/类型检查),不要将 Copilot 的建议视为权威结论
有关选项的更多详细信息,请参阅 references/cli-command-reference.md。
评论
支持 Markdown