Skip to content

Releases: github/copilot-cli

1.0.6-0

16 Mar 11:10

Choose a tag to compare

1.0.6-0 Pre-release
Pre-release

Added

  • Model can discover and use tools dynamically with tool search for Claude models

Improved

  • Support Open Plugin spec file locations for loading plugin and marketplace manifests
  • Show friendlier error messages and provide keyboard shortcut to open event links in browsers
  • Extension tools now work with the permissions system, use skipPermission per-tool to bypass permission prompts
  • Hook config files now support Claude Code's nested matcher/hooks structure and optional type field
  • Sub-agents launched by the task tool are assigned human-readable IDs based on their name (e.g., math-helper-0) instead of generic agent-0 identifiers
  • The create_pull_request tool now includes the PR URL in its output so the agent can share the direct link
  • read_agent output includes inbound messages that triggered each turn in multi-turn agents
  • Improve compatibility with the Open Plugins spec: support .lsp.json, PascalCase hook event names, exclusive path mode, and : namespace separator

Fixed

  • Hooks fire correctly when resuming a previous session
  • Prompt input in alt screen mode renders all lines without truncation
  • Links and right-click paste no longer trigger twice when running in VS Code's integrated terminal
  • Hook configuration files now work across VS Code, Claude Code, and the CLI without modification by accepting PascalCase event names alongside camelCase
  • Native module prebuilds (e.g., conpty.node on Windows ARM64) load reliably on first launch
  • Subagent elapsed time in /tasks view freezes when idle and resumes when active again
  • Flags --enable-all-github-mcp-tools, --add-github-mcp-toolset, and --add-github-mcp-tool now take effect when using the SDK (ACP mode)
  • Custom instruction file paths load correctly when using COPILOT_CUSTOM_INSTRUCTIONS_DIRS
  • Command output is no longer lost when a command causes the shell to exit
  • Plugins using .claude-plugin/plugin.json are discovered when loaded via --plugin-dir
  • Fix handling of shift+enter on VS Code with old /terminal-setup config.
  • Agent creation wizard shows the correct user agents directory path

1.0.5

13 Mar 09:56
894b48f

Choose a tag to compare

2026-03-13

  • Terminal title resets to default after running /clear or /new
  • Add /extensions command to view, enable, and disable CLI extensions
  • @ file mentions now support paths outside the project: absolute paths (@/usr/...), home directory (@~/...), and relative parent paths (@../...)
  • Toggling experimental mode with /experimental on|off automatically restarts the CLI to apply changes immediately
  • Right-click paste goes to the active dialog input instead of the main conversation input
  • Introducing /pr to help create and view PRs, automatically fix CI failures, address review feedback, and resolve merge conflicts
  • Block network (UNC) paths to prevent credential leakage via SMB authentication
  • Send follow-up messages to background agents with the write_agent tool for multi-turn conversations
  • Memory storage errors now indicate when repository doesn't exist or you lack write access
  • Show a clear error when a classic Personal Access Token (ghp_) is set in environment variables instead of silently exiting
  • Diff view displays correctly on Windows instead of showing corrupted/overwritten text
  • Fix Kitty keyboard protocol escape sequences appearing at shutdown
  • Setting claude-sonnet-4.6 as the default model is now preserved correctly
  • Plugin uninstall reliably removes files using the stored install path
  • Add /version command to display CLI version and check for updates from within the session
  • Add experimental embedding-based dynamic retrieval of MCP and skill instructions per turn
  • Syntax highlighting in /diff with support for 17 programming languages
  • Add preCompact hook to run commands before context compaction starts
  • Request ID from the API now appears in the timeline when errors occur after retries are exhausted
  • PR descriptions with backtick-formatted code render correctly on Windows/PowerShell
  • Show a helpful error message when a file path is passed as a CLI command
  • Session reports an authentication error instead of hanging when the token is invalid or expired
  • View tool shows partial content for large single-line files (e.g. minified JS, large JSON blobs) instead of empty output
  • /changelog supports last <N>, since <version>, and summarize to browse and summarize multiple release notes at once
  • Hooks config files that omit the version field are now accepted by the CLI

1.0.5-0

12 Mar 14:34

Choose a tag to compare

1.0.5-0 Pre-release
Pre-release

Added

  • Add /version command to display CLI version and check for updates from within the session
  • Add experimental embedding-based dynamic retrieval of MCP and skill instructions per turn
  • Syntax highlighting in /diff with support for 17 programming languages
  • Add preCompact hook to run commands before context compaction starts

Improved

  • /changelog supports last <N>, since <version>, and summarize to browse and summarize multiple release notes at once
  • Hooks config files that omit the version field are now accepted by the CLI

Fixed

  • Request ID from the API now appears in the timeline when errors occur after retries are exhausted
  • PR descriptions with backtick-formatted code render correctly on Windows/PowerShell
  • Show a helpful error message when a file path is passed as a CLI command
  • Session reports an authentication error instead of hanging when the token is invalid or expired
  • View tool shows partial content for large single-line files (e.g. minified JS, large JSON blobs) instead of empty output

1.0.4

11 Mar 19:52
d3c1269

Choose a tag to compare

2026-03-11

  • Add session.shell.exec and session.shell.kill RPC methods for executing shell commands with streaming stdout/stderr output
  • Custom agents from --plugin-dir plugins now load correctly in ACP mode
  • Adaptive color engine with dynamic color modes and interactive theme picker. Gracefully degrades on limited-color terminals and Windows
  • MCP OAuth re-authentication works reliably when callback port changes or when using Microsoft Entra ID
  • Replace /pr open with /pr view [local|web] to view PR status locally or open in browser
  • Enables OpenTelemetry instrumentation for observability into agent sessions, LLM calls, and tool executions
  • Extensions can now be written as CommonJS modules (extension.cjs)
  • Show loaded extensions count in the Environment loaded startup message
  • Support disableAllHooks flag to disable all hooks from a configuration file
  • Support Azure DevOps repository identification in session logs
  • Session export header renders each field on its own line in shared gists
  • Auto-update now retries without authentication token on SAML enforcement errors
  • Autopilot mode stops continuing after API errors instead of looping indefinitely
  • Status line context window percentage no longer inflates across turns by using the last call's input and output tokens instead of cumulative totals
  • Kitty keyboard protocol is properly disabled on suspend when using alternate screen
  • Only show reasoning headers when it's the only reasoning text available.
  • Terminal properly resets when CLI crashes, preventing shell corruption
  • /update command automatically restarts to apply updates instead of requiring manual exit
  • OAuth authentication now handles Microsoft Entra ID and other OIDC servers reliably with proper resource indicators and refresh token support
  • Show individual instruction file names in /instructions picker with [external] labels for injected files
  • Path permission dialog offers a one-time approval option in addition to adding the path to the allowed list
  • Add --reasoning-effort CLI flag to set reasoning effort level
  • Hooks can now request user confirmation before tool execution with 'ask' permission decision
  • Add configure-copilot sub-agent for managing MCP servers, custom agents, and skills via the task tool
  • Interactive shell initialization no longer times out on slow machines
  • Faster shell commands on Windows by skipping PowerShell profile loading
  • Improve CLI help documentation to use standard --option=value format and comma-separated list syntax

1.0.4-3

11 Mar 19:09
d3c1269

Choose a tag to compare

1.0.4-3 Pre-release
Pre-release

Added

  • Add session.shell.exec and session.shell.kill RPC methods for executing shell commands with streaming stdout/stderr output

Fixed

  • Custom agents from --plugin-dir plugins now load correctly in ACP mode

1.0.4-2

11 Mar 17:35
d3c1269

Choose a tag to compare

1.0.4-2 Pre-release
Pre-release

New

  • Adaptive color engine with dynamic color modes and interactive theme picker. Gracefully degrades on limited-color terminals and Windows

Improved

  • Replace /pr open with /pr view [local|web] to view PR status locally or open in browser

Fixed

  • MCP OAuth re-authentication works reliably when callback port changes or when using Microsoft Entra ID

1.0.4-1

11 Mar 14:35
d3c1269

Choose a tag to compare

1.0.4-1 Pre-release
Pre-release

New

  • Enables OpenTelemetry instrumentation for observability into agent sessions, LLM calls, and tool executions

Added

  • Extensions can now be written as CommonJS modules (extension.cjs)
  • Show loaded extensions count in the Environment loaded startup message
  • Support disableAllHooks flag to disable all hooks from a configuration file
  • Support Azure DevOps repository identification in session logs

Improved

  • Only show reasoning headers when it's the only reasoning text available.
  • Terminal properly resets when CLI crashes, preventing shell corruption
  • /update command automatically restarts to apply updates instead of requiring manual exit
  • OAuth authentication now handles Microsoft Entra ID and other OIDC servers reliably with proper resource indicators and refresh token support
  • Show individual instruction file names in /instructions picker with [external] labels for injected files
  • Path permission dialog offers a one-time approval option in addition to adding the path to the allowed list

Fixed

  • Session export header renders each field on its own line in shared gists
  • Auto-update now retries without authentication token on SAML enforcement errors
  • Autopilot mode stops continuing after API errors instead of looping indefinitely
  • Status line context window percentage no longer inflates across turns by using the last call's input and output tokens instead of cumulative totals
  • Kitty keyboard protocol is properly disabled on suspend when using alternate screen

1.0.4-0

10 Mar 15:20

Choose a tag to compare

1.0.4-0 Pre-release
Pre-release

Added

  • Add --reasoning-effort CLI flag to set reasoning effort level
  • Hooks can now request user confirmation before tool execution with 'ask' permission decision
  • Add configure-copilot sub-agent for managing MCP servers, custom agents, and skills via the task tool

Improved

  • Faster shell commands on Windows by skipping PowerShell profile loading
  • Improve CLI help documentation to use standard --option=value format and comma-separated list syntax

Fixed

  • Interactive shell initialization no longer times out on slow machines

1.0.3

09 Mar 23:28

Choose a tag to compare

2026-03-09

  • Enable alternate screen buffer by default for staff users
  • Extensions are now available as an experimental feature — ask Copilot to write custom tools and hooks for itself using @github/copilot-sdk
  • Document GH_HOST, HTTP_PROXY, HTTPS_PROXY, NO_COLOR, and NO_PROXY environment variables in help
  • Read MCP server configuration from .devcontainer/devcontainer.json
  • Add --binary-version flag to query the CLI binary version without launching
  • Add /restart command to hot restart the CLI while preserving your session
  • Background task notifications display in timeline with expandable detail
  • Type 'quit' to exit the CLI, in addition to 'exit'
  • Add extraKnownMarketplaces repository setting to replace marketplaces
  • Add Windows Terminal support to /terminal-setup command
  • /reset-allowed-tools now fully undoes /allow-all and re-triggers the autopilot permission dialog
  • Improved handling of batched queries in the SQL tool
  • Login flow no longer hangs on Ubuntu when system keyring is unresponsive
  • Terminal is properly reset when CLI crashes unexpectedly
  • Table disables borders in screen reader mode to prevent announcing decorative characters
  • MCP servers with non-conforming outputSchema are now accessible
  • /plugin update now works for GitHub-installed plugins
  • /add-dir directories persist across session changes like /clear and /resume
  • Prevent env command from being treated as safe to allow without approval
  • Placeholder text color displays correctly when wrapping in narrow terminals
  • /plugin update now works with marketplaces defined in project settings
  • Retry status messages now display to show progress during server error recovery
  • Show loading spinner in diff mode while fetching changes
  • Suppress /init suggestion when .github/instructions/ contains instructions
  • Rename merge_strategy config to mergeStrategy for consistency
  • Suppress unknown field warnings in skill and command frontmatter
  • Trust safe sed commands to run without confirmation

1.0.3-2

09 Mar 21:22

Choose a tag to compare

1.0.3-2 Pre-release
Pre-release

New

  • Extensions are now available as an experimental feature — ask Copilot to write custom tools and hooks for itself using @github/copilot-sdk

Added

  • Document GH_HOST, HTTP_PROXY, HTTPS_PROXY, NO_COLOR, and NO_PROXY environment variables in help
  • Read MCP server configuration from .devcontainer/devcontainer.json
  • Add --binary-version flag to query the CLI binary version without launching
  • Add /restart command to hot restart the CLI while preserving your session
  • Background task notifications display in timeline with expandable detail
  • Type 'quit' to exit the CLI, in addition to 'exit'
  • Add extraKnownMarketplaces repository setting to replace marketplaces
  • Add Windows Terminal support to /terminal-setup command

Improved

  • Retry status messages now display to show progress during server error recovery
  • Show loading spinner in diff mode while fetching changes
  • Suppress /init suggestion when .github/instructions/ contains instructions
  • Rename merge_strategy config to mergeStrategy for consistency
  • Suppress unknown field warnings in skill and command frontmatter
  • Trust safe sed commands to run without confirmation

Fixed

  • /reset-allowed-tools now fully undoes /allow-all and re-triggers the autopilot permission dialog
  • Improved handling of batched queries in the SQL tool
  • Login flow no longer hangs on Ubuntu when system keyring is unresponsive
  • Terminal is properly reset when CLI crashes unexpectedly
  • Table disables borders in screen reader mode to prevent announcing decorative characters
  • MCP servers with non-conforming outputSchema are now accessible
  • /plugin update now works for GitHub-installed plugins
  • /add-dir directories persist across session changes like /clear and /resume
  • Prevent env command from being treated as safe to allow without approval
  • Placeholder text color displays correctly when wrapping in narrow terminals
  • /plugin update now works with marketplaces defined in project settings