Releases: austenstone/copilot-cli
Releases · austenstone/copilot-cli
v3.0
Release v3.0
Release Date: March 11, 2026
💥 Breaking Changes
Token Simplification
copilot-tokenis now deprecated — the defaultgithub.tokennow supportscopilot-requestspermission natively. No PAT needed.- If you were passing
copilot-token: ${{ secrets.COPILOT_TOKEN }}, you can remove it entirely.
✨ New Inputs
| Input | Default | Description |
|---|---|---|
autopilot |
true |
Enable autopilot continuation in prompt mode |
max-turns |
unlimited | Maximum number of autopilot continuation turns |
no-ask-user |
true |
Disable ask_user tool for fully autonomous CI execution |
silent |
false |
Output only the agent response without usage statistics |
reasoning-effort |
— | Set reasoning effort level (low, medium, high, xhigh) |
output-format |
— | Output format (json for JSONL output) |
fail-on-error |
false |
Fail the step on non-zero Copilot CLI exit code |
experimental |
false |
Enable experimental CLI features |
share |
— | Share session to a markdown file after completion |
share-gist |
false |
Share session to a secret GitHub gist |
allowed-urls |
— | Comma-separated list of URLs/domains to allow |
denied-urls |
— | Comma-separated list of URLs/domains to deny |
disable-builtin-mcps |
false |
Disable all built-in MCP servers |
add-github-mcp-tools |
— | Comma-separated list of specific GitHub MCP tools to enable |
add-github-mcp-toolsets |
— | Comma-separated list of GitHub MCP toolsets to enable |
📤 New Outputs
| Output | Description |
|---|---|
session-path |
Path to the shared session markdown file (when share is used) |
🐛 Bug Fixes
copilot-configwas never applied — the config input was accepted but never written to~/.copilot/config.json. Now properly applied before every run.- MCP config path used
$XDG_CONFIG_HOMEwhich may not be set on all runners — switched to$HOME/.copilot/for consistency. - Artifact name collisions when using the action in multiple jobs within the same workflow — artifact names now include
github.job.
🛠️ Improvements
copilot-configis now written to~/.copilot/config.jsonso CLI settings likebanner,theme, andrender_markdownare respected.- Session share files (
copilot-session-*.md) are now included in the uploaded artifact. - 15-job CI test matrix covering every input: basic, autopilot, silent, model, json-output, denied-tools, github-mcp, no-builtin-mcps, url-controls, share, experimental, additional-dirs, agent, fail-on-error, and config.
🔄 Migration Guide
Before (v2.0):
- uses: austenstone/copilot-cli@v2
with:
copilot-token: ${{ secrets.COPILOT_TOKEN }}
prompt: "Review this code"After (v3.0):
permissions:
copilot-requests: write
- uses: austenstone/copilot-cli@v3
with:
prompt: "Review this code"v2.0
🚀 Release v2.0
Release Date: November 28, 2025
💥 Breaking Changes
Token Configuration Overhaul
-
github-token→copilot-token(renamed & now required)- The action now requires an explicit PAT with "Copilot Requests" permission
- The default
github.tokendoes NOT have Copilot access — you must provide a PAT
-
New
repo-tokeninput for separation of concerns- Use
copilot-tokenfor Copilot API access - Use
repo-tokenfor standard GitHub operations (push, PRs, etc.) - Defaults to
github.tokenif not specified
- Use
MCP Configuration Changes
- MCP config no longer pre-configures GitHub MCP server by default
- In v1.0, the GitHub MCP server was always injected into your config
- In v2.0, you must explicitly configure MCP servers or use
enable-all-github-mcp-tools: true - This gives users full control over their MCP setup
✨ New Features
🆕 New Inputs
| Input | Description |
|---|---|
allowed-tools |
Comma-separated list of tools to explicitly allow |
agent |
Specify a custom agent to use |
log-level |
Configurable logging: none, error, warning, info, debug, all, default |
enable-all-github-mcp-tools |
Opt-in to enable all GitHub MCP tools |
options |
Pass arbitrary additional CLI flags |
🗑️ Removed Inputs
| Removed | Reason |
|---|---|
github-mcp-toolsets |
Replaced by explicit MCP configuration |
no-color |
Use options: "--no-color" instead |
screen-reader |
Use options: "--screen-reader" instead |
show-banner |
Use options: "--banner" instead |
cache-cli |
Removed for simplicity |
🛠️ Improvements
- Consolidated installation, configuration, and execution into a cleaner script
- Improved grouped logging for better CI readability
- Removed unnecessary git configuration step
- Prompt is now logged in its own group for visibility
actions/setup-nodeupgraded from v4 → v6- Boolean inputs now use proper
true/falsetypes
🔄 Migration Guide
Before (v1.0):
- uses: austenstone/copilot-cli@v1
with:
github-token: ${{ secrets.MY_PAT }}
prompt: "Review this code"After (v2.0):
- uses: austenstone/copilot-cli@v2
with:
copilot-token: ${{ secrets.COPILOT_TOKEN }}
prompt: "Review this code"Full Changelog: v1.0...v2.0
v1.0
Update test-copilot.yml