Copilot CLI v1.0.49: Memory, MCP OAuth, Alpine Support
Copilot CLI 1.0.49 adds persistent memory with scope controls, MCP OAuth fixes, Alpine Linux support, and new commands like /rubber-duck for agent critique and /chronicle for session search.
TL;DR
- Persistent memory system with scope controls (user vs. repo-level)
- MCP OAuth token handling fixed; Alpine Linux support added
- New /rubber-duck command for independent agent critique; /chronicle for session search
- Wide character input fixes (CJK, emoji); Windows terminal rendering improvements
New
- /memory on|off|show — Enable, disable, or view persistent memory status with user or repository scope
- /rubber-duck — Get an independent critique of the agent's current work (experimental)
- /chronicle search — Search all session content by keyword or topic
- /session id — Display current session ID and copy to clipboard
- /exit print — Print session to terminal before exiting
- /mcp search — Search and install MCP servers from registry (experimental)
- copilot plugin update --all — Update all installed plugins at once
- Alpine Linux support — CLI now runs on musl libc systems
- auth.redirectPort config — Pin OAuth callback to fixed port for MCP servers
- COPILOT_PLUGIN_DIR_ONLY env var — Disable automatic plugin discovery for deterministic plugin sets
- Tool search with deferred loading — Faster tool discovery for MCP and external tools (experimental)
- "None" reasoning effort option — Disable model reasoning in the reasoning effort picker
- Auto-link GitHub references — Issue and PR references (owner/repo#number) now auto-link in responses
Fixed
- postToolUse hook additionalContext now injected as system message instead of discarded
- Mouse cursor positioning in prompts with wide characters (CJK, emoji) now correct
- MCP OAuth token persistence and refresh for static OAuth clients
- File diffs correctly reported to ACP clients for all edit tool types
- Box drawing and block characters render correctly on Windows non-UTF-8 terminals
- MCP stdio servers display type as 'stdio' instead of 'local'
- Progress bar indicator displays correctly in tmux sessions
- Input prompt collapses to single line when empty; grows naturally as you type
- Copying text from scroll view joins soft-wrapped lines without extra newlines
- Hooks (preToolUse, postToolUse, subagentStart, subagentStop) fire correctly for sub-agent tool calls
- Plugins loaded via --plugin-dir correctly register agents as available task subagents
- Memory storage correctly limits scopes when no repository context present
- Content-filtered model responses display explanation instead of blank turn
- MCP OAuth token lookups correctly scoped to active session
- PromptFrame UI renders inside tmux with ghostty, WezTerm, or kitty detection
- PowerShell syntax errors reduced on Windows by avoiding && chaining with legacy PowerShell 5.x
- Repo hooks in .github/hooks/ load in prompt mode (-p) when folder already trusted
- MCP server configs with no args field now accepted as empty args list
- Document attachment paths included in context for agent reference
- Auto-update downloads smaller platform-specific package when available
- Experimental slash commands annotated with "(experimental)" in help and command picker
- Memory permission prompts name scope (user or owner/repo); timeline entries show scope
- /user switch reuses fetched user list and shows loading spinner on first open
Update: copilot update or download from GitHub releases
Source: Copilot CLI