Copilot CLI v0.0.422: GPT-5.4 & UX Fixes

Copilot CLI 0.0.422 adds GPT-5.4 support, reverse history search, and fixes 18+ UX issues including scroll stability and text selection persistence. Config file renamed to settings.json.

Copilot CLI v0.0.422: GPT-5.4 & UX Fixes

TL;DR

  • GPT-5.4 model support added
  • Plugin cache auto-recovery and improved error messages for missing git
  • Major UX fixes: text selection persistence, scroll stability, reverse history search (Ctrl+R), and mouse scroll in diff mode
  • Config file renamed from .github/copilot/config.json to settings.json

New

  • GPT-5.4 model support — Copilot CLI now supports the latest GPT-5.4 model
  • Reverse history search — Press Ctrl+R to search command history like Bash (Ctrl+J to accept, Ctrl+G to cancel)
  • /copy command — Copy the last response to clipboard directly from the CLI
  • copy_on_select config option — Auto-copy selected text to clipboard in alt-screen mode
  • Mouse scroll in diff mode — Add mouse scroll support to /diff in alt-screen mode
  • --output-format json flag — Emit JSONL in prompt mode for programmatic integrations
  • Startup prompt hooks — Auto-submit prompts or slash commands when a session starts
  • enabledPlugins config — Automatic plugin installation at startup
  • SSH plugin URLs — Support installing plugins from ssh:// URLs
  • Session metrics persistence — Usage metrics (requests, tokens, code changes) now saved to events.jsonl after each session

Fixed

  • Plugin cache auto-recovery — Automatically recovers from corrupted or incomplete clones without manual intervention
  • Text selection persistence — Selected text now persists after copying to clipboard in alt-screen mode
  • Scroll stability — Scroll view no longer jumps to earlier messages when scrolling during response streaming or with popups open
  • Memory usage in alt-screen — Reduced memory consumption for long sessions
  • Git color.diff handling — Diff mode now works correctly when git color.diff=always is configured
  • Windows URL handling — Opening links on Windows correctly handles URLs with & query parameters
  • File completion accuracy — @-mention file completion always reflects current working directory state
  • Terminal compatibility — ESC key to cancel works correctly in tmux and non-kitty terminals
  • Cursor repositioning — Click in the prompt input to reposition the text cursor
  • CJK input support — IME candidate windows appear at correct cursor position
  • Link visibility — Links in alt-screen mode rendered with underline styling
  • Markdown table rendering — Colons in inline code render correctly inside markdown tables
  • Help dialog dismissal — Pressing Ctrl+C on the help dialog now dismisses it cleanly
  • Enum field selection — Pressing Enter in required enum field now selects the highlighted option
  • Diff line wrapping — Long diff lines no longer overflow and wrap in the diff view
  • Ctrl+K line joining — Ctrl+K joins lines when cursor is at end of line, matching Emacs/terminal behavior
  • Escape sequence handling — Escape sequences split across input chunks no longer leak into text input
  • Large directory handling — CLI no longer hangs for minutes when working in directories with many files

Improved

  • Git not installed error — Clear, actionable error message when git is not installed and a remote plugin or marketplace is used
  • Authentication errors — Display request ID in authentication and authorization error messages to aid troubleshooting
  • Personal hooks loading — Load personal hooks from ~/.copilot/hooks in addition to repo-level .github/hooks
  • Timeline display — Timeline now shows the question in a box and displays 'Making best guess on autopilot' when ask_user is auto-responded
  • LSP server loading — Plugin-contributed LSP servers are now loaded, started, and shown in /lsp show
  • MCP server tracking — GitHub MCP server connection status accurately tracked and counted in status indicator
  • Multi-remote delegation — /delegate prompts for a target remote in multi-remote repositories with clarified confirmation text
  • Azure DevOps compatibility — GitHub MCP server stays enabled in repositories with both Azure DevOps and GitHub remotes
  • Timeline noise reduction — Hide noisy todo bookkeeping queries and show dependency details in timeline
  • External editor feedback — Show a waiting message when the terminal is handed to an external editor

Breaking Changes

  • Config file location — Repository config renamed from .github/copilot/config.json to settings.json. Update your configuration file paths accordingly.
  • launch_messages setting — Renamed to companyAnnouncements. Update any scripts or automation that reference the old setting name.

Update with: npm install -g @github/copilot-cli@0.0.422 or check the release page for other installation methods.

Source: Copilot CLI