Use GitHub Copilot from inside Claude Code for code reviews, delegated tasks, model selection, and resumable background runs.
I liked OpenAI's codex-plugin-cc, and I use Claude Code, Codex, and Copilot regularly. I wanted the same kind of Copilot workflow inside Claude Code too, so I built this.
This project is an open-source Claude Code companion plugin inspired by openai/codex-plugin-cc, but wired to the GitHub Copilot CLI instead of Codex.
I did not want Copilot to be the odd one out in my workflow.
- Claude Code is where I like to work.
- Codex already had a good plugin story.
- I still wanted to call Copilot for reviews, rescue tasks, and model-specific runs without leaving CC.
This plugin is the bridge for that.
/copilot:setupto check local Copilot CLI readiness and show the configured default model/copilot:reviewfor a structured read-only review of your current git changes/copilot:adversarial-reviewfor a more challenging review focused on risks and design tradeoffs/copilot:rescueto hand a coding task to Copilot, optionally with--model,--effort, or--reasoning-effort/copilot:status,/copilot:result, and/copilot:cancelfor background-job management
- GitHub Copilot CLI installed locally
- An active GitHub Copilot entitlement
- Node.js 18.18 or later
Add the marketplace in Claude Code:
/plugin marketplace add codywilliamson/copilot-plugin-ccInstall the plugin:
/plugin install copilot@codywilliamson-copilotReload plugins:
/reload-pluginsInstall Copilot CLI if needed:
npm install -g @github/copilotAuthenticate with either:
copilot loginor:
gh auth loginThen run:
/copilot:setupReview the current working tree, or compare your branch to a base ref.
/copilot:review
/copilot:review --base main
/copilot:review --model gpt-5.4
/copilot:review --backgroundRun a sterner review that actively questions assumptions, edge cases, and safer alternatives.
/copilot:adversarial-review
/copilot:adversarial-review --base main question the retry strategy and rollback plan
/copilot:adversarial-review --model claude-sonnet-4.6 --background focus on race conditionsDelegate a coding task to Copilot. This command is write-capable by default and is the main “go do the work” path.
/copilot:rescue investigate why the tests started failing
/copilot:rescue --model gpt-5.4 --effort high fix the flaky integration test
/copilot:rescue --model gpt-5.4 --reasoning-effort xhigh plan a safe migration for this schema change
/copilot:rescue --resume apply the smallest safe fix from the last run
/copilot:rescue --background refactor this module into smaller piecesNotes:
--model <id>is passed through to Copilot CLI.--effort <low|medium|high|xhigh>and--reasoning-effort <low|medium|high|xhigh>are both accepted and forwarded to Copilot.- If you omit
--model, Copilot CLI uses its configured default model from~/.copilot/config.json.
Show current and recent Copilot jobs for this repository.
/copilot:status
/copilot:status task-abc123Show the stored final output for a completed or failed job.
/copilot:result
/copilot:result task-abc123Cancel an active background run.
/copilot:cancel
/copilot:cancel task-abc123The plugin shells out to copilot -p in JSON output mode, captures Copilot’s session and result events, and stores per-repo job state under Claude Code’s plugin data directory. That gives Claude Code a thin, open wrapper around the local Copilot CLI without trying to replace Copilot itself.