Releases: github/copilot-cli
Releases · github/copilot-cli
1.0.52-0
Added
- Custom agents support opt-in deferred tool loading via
deferred-tool-loadingin agent frontmatter, enabling tool-search discovery for agents with large tool lists
Improved
- /compact accepts optional focus instructions to shape the compaction summary
- General-purpose subagents use GPT-5.4 or GPT-5.5 when available
- /usage shows quota progress bars for session and weekly limits
- AI credits error messages updated with clearer language and a Manage budget link
Fixed
- Exit summary displays
AI Creditslabel with correct spacing before the value - /restart and /update preserve the current session ID after restarting
- Legacy nested
oauth.clientIdandoauth.callbackPortkeys in MCP server configs are now migrated to the supportedoauthClientIdandauth.redirectPortkeys instead of being silently dropped - MCP OAuth re-authentication honors the configured redirectPort
- PowerShell division operator no longer triggers false 'Allow directory access' prompts on Windows
1.0.51
2026-05-20
--session-id=<id>resumes known sessions or tasks, and starts new sessions with a specific UUID- /remote commands now respect organization remote control and view from cloud policy and show a clear error when disabled
- /remote command can now be used while the agent is working
- Customizable status line in the terminal footer displays session info such as model, context window, git branch, and more
- MCP tool loading at startup is faster for users with many HTTP-based MCP servers
- Settings file no longer accumulates unrelated config keys when settings are updated
- Add /security-review slash command to review code changes for security vulnerabilities (experimental)
- Add preMcpToolCall hook for hook providers to control outgoing MCP request metadata
- Add /chronicle cost-tips subcommand for personalized token usage and cost reduction recommendations
- MCP servers using OAuth stay connected when authentication was performed in a separate session
- GFM tables and blockquotes inside list items render correctly without a floating top border
- Experimental mode indicator now appears persistently in the app header instead of as a one-time notification
- Loading indicator color matches the active mode (plan, autopilot, shell)
- Session naming works correctly for usage-based billing users
- Pressing Enter on a highlighted subcommand completion inserts the selection instead of submitting the partial command
- Use default release notes when publishing a release with no changelog entries
- Editor launched with Ctrl+G no longer steals keystrokes or requires double keypresses
/memory showdisplays documentation links for learning about and managing Copilot Memory- Add
terminalProgresssetting to enable or disable OSC 9;4 terminal progress indicators - postToolUse hooks can now inject additionalContext into successful tool results
- Only show remote session startup failure when remote mode is explicitly requested via --remote or enabled in user configuration
- Shell tool calls succeed even when the model omits the
descriptionparameter - Ensure input token usage includes cached, update token formatting to clarify
- Login prompt more clearly warns when token storage falls back to insecure plain text config file
- GitHub MCP web search tool is available immediately without requiring tool search
- Secret scanning now covers commit messages and PR descriptions, redacting secrets before they are published
- Input area grows responsively with terminal height instead of capping at 3 lines
1.0.51-3
Added
- Add /security-review slash command to review code changes for security vulnerabilities
- Add preMcpToolCall hook for hook providers to control outgoing MCP request metadata
- Add /chronicle cost-tips subcommand for personalized token usage and cost reduction recommendations
Improved
- Experimental mode indicator now appears persistently in the app header instead of as a one-time notification
- Loading indicator color matches the active mode (plan, autopilot, shell)
Fixed
- MCP servers using OAuth stay connected when authentication was performed in a separate session
- GFM tables and blockquotes inside list items render correctly without a floating top border
1.0.51-2
Improved
/memory showdisplays documentation links for learning about and managing Copilot Memory
Fixed
- Session naming works correctly for usage-based billing users
- Pressing Enter on a highlighted subcommand completion inserts the selection instead of submitting the partial command
- Use default release notes when publishing a release with no changelog entries
- Editor launched with Ctrl+G no longer steals keystrokes or requires double keypresses
1.0.51-1
Pre-release 1.0.51-1
1.0.49
2026-05-18
- postToolUse hook additionalContext is now injected as a system message for the model instead of being silently discarded
- Mouse clicks in the prompt correctly position cursor when input contains wide characters (CJK, emoji)
- Add /chronicle search subcommand to search all session content by keyword or topic
- /user switch reuses the fetched user list and shows a loading spinner on first open
- MCP servers using static OAuth clients correctly persist registration for token refreshes
- Add support for running the CLI on Alpine Linux (musl libc)
- Add /exit print option to print the session to the terminal before exiting
- Add /rubber-duck command to get an independent critique of the agent's current work
- Add /session id subcommand to display the current session ID and copy it to the clipboard
- Add
auth.redirectPortconfig option for MCP servers to pin the OAuth callback to a fixed port - Add /memory on|off|show slash command to enable, disable, or view memory status (persistent)
- Add
copilot plugin update --allto update all installed plugins at once - Add
/rubber-duckcommand to invoke the rubber duck agent for an independent critique (experimental) - Input prompt collapses to a single line when empty and grows naturally as you type
- File diffs are correctly reported to ACP clients for all edit tool types
- Repo hooks in
.github/hooks/now load in prompt mode (-p) when the folder is already trusted - Fix extra line in timeline entries
- Box drawing and block characters render correctly on Windows terminals not using UTF-8 code page
- MCP server configurations with no
argsfield are now accepted and treated as an empty args list - Document attachment paths are included in context so the agent can reference pasted file paths, including Windows Copy as path inputs
- MCP stdio servers now display type as 'stdio' instead of 'local' for consistency
- Progress bar indicator now displays correctly in tmux sessions
- Experimental slash commands are now annotated with "(experimental)" in the help dialog and command picker
- Auto-update downloads the smaller platform-specific package instead of the universal one when available
- Auto-link GitHub issue and PR references (owner/repo#number) in assistant responses
- Prompt mode (-p) automatically loads workspace MCP sources when the current folder is already trusted
- Experimental: /mcp search command to search and install MCP servers from registry
- Experimental: Tool search with deferred loading for MCP and external tools
- Add "None" reasoning effort option to disable model reasoning in the reasoning effort picker
- Add COPILOT_PLUGIN_DIR_ONLY environment variable to disable automatic plugin discovery, enabling deterministic plugin sets when using --plugin-dir
- Copying text from the scroll view joins soft-wrapped lines without extra newlines or indentation
- Cursor positioning in input fields works correctly with wide characters (CJK, emoji)
- Hooks (preToolUse, postToolUse, subagentStart, subagentStop) now fire correctly for sub-agent tool calls
- Plugins loaded via --plugin-dir now correctly register their agents as available task(agent_type=...) subagents in prompt mode
- Memory storage correctly limits available scopes when no repository context is present
- --plugin-dir and --additional-mcp-config now work in --server / --headless mode
- Content-filtered model responses now display an explanation instead of a blank assistant turn
- PromptFrame UI now renders inside tmux when the outer terminal is ghostty, WezTerm, or kitty (detected via
tmux list-clients). - MCP OAuth token lookups are correctly scoped to the active session
- Memory permission prompts now name who can see a stored memory: user scope or the specific
owner/repofor repository scope. Timeline entries also show the scope ((for user)/(shared with repository collaborators)). - Reduce PowerShell syntax errors on Windows by avoiding && chaining instructions when using legacy PowerShell 5.x
1.0.49-6
Pre-release 1.0.49-6
1.0.49-1
Improved
- Prompt mode (-p) automatically loads workspace MCP sources when the current folder is already trusted
1.0.49-0
Added
- Experimental: /mcp search command to search and install MCP servers from registry
- Experimental: Tool search with deferred loading for MCP and external tools
- Add "None" reasoning effort option to disable model reasoning in the reasoning effort picker
- Add COPILOT_PLUGIN_DIR_ONLY environment variable to disable automatic plugin discovery, enabling deterministic plugin sets when using --plugin-dir
Improved
- Memory permission prompts now name who can see a stored memory: user scope or the specific
owner/repofor repository scope. Timeline entries also show the scope ((for user)/(shared with repository collaborators)). - Reduce PowerShell syntax errors on Windows by avoiding && chaining instructions when using legacy PowerShell 5.x
Fixed
- Copying text from the scroll view joins soft-wrapped lines without extra newlines or indentation
- Cursor positioning in input fields works correctly with wide characters (CJK, emoji)
- Hooks (preToolUse, postToolUse, subagentStart, subagentStop) now fire correctly for sub-agent tool calls
- Plugins loaded via --plugin-dir now correctly register their agents as available task(agent_type=...) subagents in prompt mode
- Memory storage correctly limits available scopes when no repository context is present
- --plugin-dir and --additional-mcp-config now work in --server / --headless mode
- Content-filtered model responses now display an explanation instead of a blank assistant turn
- PromptFrame UI now renders inside tmux when the outer terminal is ghostty, WezTerm, or kitty (detected via
tmux list-clients). - MCP OAuth token lookups are correctly scoped to the active session
1.0.48
2026-05-14
- Model picker displays actual token prices instead of dot indicators for token-based billing users
- Instruction files with unquoted glob patterns in applyTo frontmatter (e.g. applyTo: */.ts) are now applied correctly
- Input text with CJK characters or emoji renders without blank gaps between lines
- /context shows correct token limits for all models instead of always showing 128k
- Auto-disable the built-in github-mcp-server in Azure DevOps-only workspaces when running in prompt/headless mode, matching interactive mode behavior
- Terminal cursor positions correctly on the input field instead of on decorative elements like the selected tab
- ACP clients receive updated config options when the active model is changed
- /ask dialog no longer prompts for follow-up replies it cannot receive
- Skill content injected to the model no longer includes YAML frontmatter metadata