概述
GitHub Copilot 集成自 PactKit v2.9.4 起通过 pactkit-copilot 适配器包提供。
Copilot 的工作方式与其他适配器不同。 Claude Code、OpenCode 和 Codex CLI 部署到用户级目录(~/.claude/、~/.config/opencode/、~/.codex/),一次部署所有项目共享。Copilot 部署到项目级 .github/ 目录 — 每个新项目都需要单独执行 pactkit init。
为什么是项目级?
GitHub Copilot 从项目的 .github/ 目录加载配置,没有像 ~/.claude/ 那样的全局用户级配置目录。这意味着:
- Skills、Agents 和 Prompts 必须在每个项目内部
- Rules 不支持
@include— 必须内联到命令提示中 - 每个项目是自包含的,可以纳入版本管理
部署模型对比
| Claude Code | OpenCode | Codex CLI | Copilot | |
|---|---|---|---|---|
| 部署目标 | ~/.claude/(用户级) | ~/.config/opencode/(用户级) | ~/.codex/(用户级) | .github/(项目级) |
| 首次配置 | pactkit init 一次 | pactkit init 一次 | pactkit init 一次 | 每个项目都需要 pactkit init |
| 跨项目共享 | 是 | 是 | 是 | 否 — 每个项目拥有自己的配置 |
| 规则加载 | @import | instructions + @reference | 内联到 Skills | 内联到 Prompts |
| Agent 模型 | 多 Agent(9 个角色) | 多 Agent | 单 Agent | 多 Agent(独立文件) |
| Sprint 命令 | 完整编排 | 完整编排 | 不可用 | 不可用 |
安装
pip install pactkit pactkit-copilot与其他适配器不同,pactkit-copilot 是独立包(不包含在核心包中),因为 Copilot 的项目级部署模型与其他 IDE 的用户级模型有根本性差异。
使用方式:两步引导
Copilot 项目需要两步初始化 — 先在终端,再在 IDE 中:
第一步:终端 — 部署基础设施
cd your-project
pactkit init --format copilot这将创建 .github/ 目录结构:
| 路径 | 内容 |
|---|---|
.github/skills/{name}/SKILL.md | 10 个 Skill(3 个脚本型 + 7 个纯提示型) |
.github/agents/{name}.md | 9 个 Agent 定义(独立文件) |
.github/prompts/{name}.prompt.md | 10 个斜杠命令(PDCA 入口) |
.github/copilot-instructions.md | 项目级指令,含 PDCA 路由表 |
.github/copilot-instructions.local.md | 你的自定义覆盖(永不被覆盖) |
.github/pactkit.yaml | 项目配置 |
第二步:IDE — 初始化 PDCA
在支持 Copilot 的 IDE 中打开项目,然后使用:
/project-init这将创建治理结构(docs/specs/、docs/product/sprint_board.md 等),与其他 IDE 一致。
不要跳过第一步。 与其他 IDE 不同(一次性 pactkit init 后 /project-init 即可使用),Copilot 要求在每个新项目中先通过 pactkit init --format copilot 部署 .github/ 基础设施。
更新
cd your-project
pip install --upgrade pactkit pactkit-copilot
pactkit update更新会重新生成 .github/ 中的所有托管文件,同时保留:
.github/copilot-instructions.local.md(你的自定义指令).github/pactkit.yaml(你的项目配置)
MCP 服务器配置
Copilot 通过 .vscode/mcp.json 支持 MCP 服务器。PactKit 推荐 5 个经过验证的服务器(Playwright、Chrome DevTools、Memory、Draw.io、Context7),用于浏览器测试、持久化记忆和文档查询。
查看 MCP 集成 — GitHub Copilot 配置 获取完整配置指南和已验证的 npm 包列表。
与其他 IDE 的关键差异
无 @include 规则加载
Copilot 不支持 @include 或 @import 指令。PactKit 通过将规则直接内联到每个命令提示文件(.github/prompts/*.prompt.md)来解决。
两种策略可选(在 pactkit.yaml 中配置):
| 策略 | copilot-instructions.md | 命令提示 | Token 开销 |
|---|---|---|---|
minimal-core(默认) | 仅路由表 | 每个命令完整内联规则 | 每轮较低 |
full-inline | 合并所有核心规则 | 每个命令附加规则 | 基线较高 |
# pactkit.yaml
copilot_rules_strategy: minimal-core # 或 full-inline斜杠命令使用 .prompt.md
Copilot 使用 .github/prompts/ 中的 .prompt.md 文件作为斜杠命令。每个文件在 Copilot 聊天中变成一个 /command-name:
.github/prompts/
project-plan.prompt.md → /project-plan
project-act.prompt.md → /project-act
project-check.prompt.md → /project-check
project-done.prompt.md → /project-done
...通过独立文件实现多 Agent
与 Codex CLI(单一 AGENTS.md)不同,Copilot 通过 .github/agents/ 中的独立文件支持多 Agent:
.github/agents/
senior-developer.md
system-architect.md
qa-engineer.md
repo-maintainer.md
...每个 Agent 文件包含 Copilot 兼容的 frontmatter(name、description、tools)。
品牌替换
所有 Claude/Anthropic 引用会自动替换:
| 原始 | 替换为 |
|---|---|
| Claude Code | GitHub Copilot |
| Anthropic | GitHub |
claude-sonnet-* | capable-model |
~/.claude/ | .github/ |
排除的命令
/project-sprint 被排除在 Copilot 部署之外 — 它需要 Copilot 目前不完全支持的多 Agent 编排能力。
版本管理
.github/ 目录应当提交到仓库并与团队共享:
git add .github/
git commit -m "feat: add PactKit Copilot configuration"这意味着团队成员无需自己运行 pactkit init 即可获得完整的 PactKit 治理结构 — 他们只需在 IDE 中运行 /project-init。
故障排查
命令未在 Copilot 中显示
确保 .github/prompts/ 目录存在且包含 .prompt.md 文件。运行 pactkit init --format copilot 重新生成。
"Unknown format: copilot" 错误
需要安装独立的适配器包:
pip install pactkit-copilot规则未加载
Copilot 不支持 @include。检查 pactkit.yaml 中 copilot_rules_strategy 是否正确设置,以及命令提示文件是否包含内联规则部分。