GitHub Copilot 应用开发技能
用统一 SDK 构建可编程的 GitHub Copilot 应用与代理工作流。
文档披露了stdio/TCP、MCP、模型提供商、令牌、会话持久化和工具执行等数据流,并展示了工具权限钩子、拒绝示例、会话删除和清理建议;但远程MCP示例使用Bearer令牌和tools:["*"],持久化保存完整对话及工具结果,用户确认、最小权限、敏感数据边界和回滚流程不够明确,因此扣分。
多语言核心流程、超时、重试、错误钩子和异常场景说明较完整,仓库也提供相关测试与评估工作流;但本次仅静态阅读,未验证依赖版本、API示例、跨语言关键路径或实际失败行为,且文档内容在Client Configuration处截断,因此不超过静态上限并扣分。
目标用户、支持语言、前置条件、核心场景和若干部署模式较清楚;但非适用范围、触发边界、版本适配和中文使用说明不足,核心依赖GitHub Copilot CLI、订阅或海外端点,未提供中国大陆网络可达性方案,因此扣分。
结构按前置条件、安装、架构、示例、权限、安全、持久化和部署组织,且有MIT许可证、官方组织来源、README目录和安全报告入口;但仓库明确处于WIP,技能版本、变更日志、维护责任、更新路径、FAQ和完整文档边界不充分,SKILL.md还显示不完整,因此扣分。
技能覆盖客户端、会话、流式输出、工具、钩子、MCP、BYOK、持久化、代理和部署,并提供四种语言的可直接改写示例,能够支持核心集成任务;但示例正确性、当前SDK兼容性、完整输出和相对替代方案的证据不足,静态审查下按上限7分评估。
证据包括目标技能源文件、MIT许可证、README、CI评估工作流、测试代码和错误分类测试,具备一定可审计性;但没有针对该技能的已执行结果、覆盖报告或第三方交叉验证,本次也未执行任何复现,因此静态上限为5分。
- 使用远程MCP、shell或持久化会话前,应明确限制工具集合、隔离工作目录、审查令牌传播并获得逐次用户确认;tools:["*"]和示例中的环境令牌不应直接用于生产。
- 示例依赖GitHub Copilot CLI、订阅或外部模型端点;请先核验当前SDK版本、区域网络可达性、认证权限和各语言API是否仍兼容。
- 仓库标注为WIP,且所给SKILL.md在Client Configuration处不完整;不能仅凭文档或CI存在性视为已验证的生产方案。
它能做什么 & 适用场景
该技能指导开发者使用 GitHub Copilot SDK,通过 Copilot CLI 以 JSON-RPC 方式构建应用。内容覆盖 Node.js/TypeScript、Python、Go 和 .NET,并涵盖会话、流式响应、自定义工具、钩子、MCP、BYOK、持久化、定制代理和部署。它适合需要把 Copilot 能力嵌入后端服务、桌面应用或自动化流程的开发者。使用通常需要已安装并认证的 Copilot CLI,以及 GitHub Copilot 订阅;BYOK 场景可不需要订阅。
提供四种语言的安装包与客户端、会话创建和消息发送示例;说明如何通过 stdio 或 TCP 连接 Copilot CLI;配置流式事件、自定义工具、权限处理器、生命周期钩子和错误处理;接入本地或 HTTP MCP 服务器;配置 GitHub 凭据或 OpenAI、Azure、Anthropic、Ollama 等 BYOK 提供商;保存、恢复、列出和删除会话;配置定制代理、技能目录、无限会话和 Docker Compose 部署。
- 为 Node.js、Python、Go 或 .NET 后端添加可编程的 Copilot 会话和消息处理。
- 需要逐步输出模型响应的交互式应用或实时界面。
- 希望让 Copilot 调用业务 API、天气服务或其他自定义工具的开发团队。
- 需要通过钩子审批工具调用、修改参数、脱敏结果或记录会话指标的应用。
- 需要接入本地或远程 MCP 服务器的代理应用。
- 需要跨应用重启恢复会话,或在多用户服务中隔离会话状态的团队。
优缺点一览
- 覆盖 Node.js/TypeScript、Python、Go 和 .NET。
- 同时提供会话管理、流式响应、自定义工具、钩子、MCP、BYOK 和部署模式。
- 包含本地 stdio 与 TCP 两种 CLI 通信方式。
- 说明了会话持久化、权限控制、错误处理和生产部署注意事项。
- 依赖 GitHub Copilot CLI;通常还需要 Individual、Business 或 Enterprise 订阅。
- BYOK 凭据不会自动刷新,恢复会话时必须重新提供 provider 配置。
- SDK 不包含 Copilot CLI 的交互式界面、斜杠命令、会话导出和部分 CLI 专属功能。
- 源材料未提供该技能自身独立测试套件或各运行时平台的验证结果。
如何安装
在 Copilot CLI 中安装整个技能集合:npx skills add microsoft/skills。根据向导选择技能;GitHub Copilot 技能会安装到所选代理目录,例如项目的 .github/skills/。SDK 包安装命令分别为:Node.js/TypeScript 使用 npm install @github/copilot-sdk;Python 使用 pip install github-copilot-sdk;Go 使用 go get github.com/github/copilot-sdk/go;.NET 使用 dotnet add package GitHub.Copilot.SDK。使用 SDK 前还需安装并认证 Copilot CLI。
如何使用
在支持 Agent Skills 的编码代理中,针对需要程序化集成 GitHub Copilot 的任务触发此技能,例如:“用 Python Copilot SDK 创建可恢复会话,并接入一个自定义工具”。实现时创建 CopilotClient,创建会话,调用 send 或 sendAndWait,按需配置 streaming、tools、hooks、mcpServers、provider 或 sessionId,最后停止客户端。具体 API 以目标语言示例为准。
对比同类
与直接使用 Copilot CLI 相比,该技能聚焦于通过 SDK 在应用中管理会话、消息、工具、事件和部署;CLI 仍提供交互式界面、斜杠命令、登录流程和会话导出等 SDK 不具备的功能。