Copilot CLI v1.0.35: Session Names, MCP Spaces, Tab Completion

Copilot CLI 1.0.35 adds session naming, slash command tab-completion, MCP server support for special characters, HTTP hooks, and dozens of fixes. Session picker now shows branch names and status; emoji rendering fixed; plugin hot-reload enabled.

Copilot CLI v1.0.35: Session Names, MCP Spaces, Tab Completion

TL;DR

  • Name and resume sessions by name with --name and --resume=
  • Slash command tab-completion, MCP servers with spaces/special chars, HTTP hooks
  • Shell escape commands now respect $SHELL; session picker shows branch names and status

New

  • Session naming — Name sessions with --name and resume them by name with --resume= instead of relying on timestamps
  • Slash command tab-completion — Arguments and subcommands now support tab-completion for faster navigation
  • MCP server names with spaces — Special characters and spaces in MCP server names are now supported
  • HTTP hook support — Hooks can now POST JSON payloads to a configured URL instead of running local commands
  • Session picker improvements — Shows branch names, idle/in-use status, and improved search with cursor support
  • Ctrl+Y acceptance — Press Ctrl+Y (in addition to Tab) to accept highlighted options in completion popups
  • Session delete subcommands — /session delete, delete, and delete-all subcommands plus x-to-delete in the session picker
  • Skill slash commands on startup — Skill commands (e.g. /skill-name) passed via -i are now recognized correctly
  • GitHub-style contribution graph — /usage now displays a contribution graph that adapts to terminal color mode
  • Contribution graph in /usage — Adapts to terminal color mode and falls back to distinct glyphs in no-color terminals
  • LSP timeout configuration — lsp.json entries support configurable spawn, initialization, and warmup timeouts
  • Plugin hot-reload — Plugins take effect immediately after install without requiring a restart
  • continueOnAutoMode config — Automatically switch to auto model on rate limit instead of pausing
  • HTTP hook support — Hooks can POST JSON payloads to a configured URL instead of running local commands
  • Custom agent name in statusline — Custom agent name is now visible in the statusline footer and can be toggled via /statusline

Fixed

  • Shell escape commands (!) now use your $SHELL when set, instead of always invoking /bin/sh
  • Permission prompts appear correctly in remote sessions for the CLI TUI
  • Model change notification shows both the previous and new model name
  • /update and /version commands now honor your configured update channel
  • Session sync prompt uses clearer labels and explains GitHub.com cross-device sync
  • --continue prefers resuming sessions from the current working directory instead of the most recently touched session
  • Emoji and multi-codepoint character rendering in text input now works correctly
  • Tool availability detection works correctly on Windows
  • Session token expiry during a turn is handled automatically without requiring you to resend your message
  • Initial tab and arrow key navigation in /cwd and /add-dir path picker selects the correct item
  • Transient I/O errors no longer appear as red error entries in the timeline when an IDE or extension disconnects
  • Custom agents and skills in ~/.claude/ are no longer incorrectly loaded as Copilot project config
  • Login command restores interactive input correctly after authentication
  • Tab navigation supports Home/End keys to jump to first and last tab
  • Auto mode no longer fails when switching to a model that doesn't support the configured reasoning effort
  • Pattern-specific instruction files (.github/instructions/*.instructions.md) no longer include their full body in the system prompt on every session
  • LSP refactoring tools now register correctly on the first turn when LSP configs are present
  • Pressing Escape on startup dialogs no longer causes race conditions
  • grep and glob tools now accept multiple search paths
  • Shell completion notifications are not duplicated when read_bash already returned the result
  • Clipboard utility error handling on Linux now shows helpful install instructions
  • Rendering performance improved when displaying large amounts of text in the timeline
  • Subagent thinking is now hidden from the timeline

Breaking Changes

  • Sync task calls now block until completion under MULTI_TURN_AGENTS instead of auto-promoting to background after 60s; sync no longer returns a reusable agent_id — use mode: "background" for follow-ups
  • User settings are now stored in ~/.copilot/settings.json, separate from internal state in config.json
  • Context window indicator in the statusline is now hidden by default
  • MCP OAuth has moved into the shared runtime flow; clear associated OAuth state when removing an MCP server
  • COPILOT_GH_HOST environment variable now takes precedence over GH_HOST for GitHub hostname configuration

Update with: npm install -g @github/copilot-cli@latest or check the release page for your platform.

Source: Copilot CLI