Skip to content
GC

GitHub Copilot CLI v1.0.106-4

Released · GitHub / Microsoft

Pre-releaseChanges hooks

What the release notes say

Fixed

  • Empty sessions no longer flash into the session picker before disappearing
  • An @file mention written inside parentheses, brackets, braces, angle brackets, quotes or backticks now attaches the file, and expands correctly in ! shell commands, instead of being silently ignored.
  • Custom agents that share a built-in agent's name are no longer offered to the model as a second agent type, since delegating to that name always runs the built-in agent
  • The details view in /skills, /plugin and /mcp no longer passes terminal control characters from a skill, plugin or server's metadata through to the terminal; its trust and data blocks now show them escaped.
  • Wrapped lines in the /ide dialog now continue under their text instead of under the bullet or row number
  • After choosing Go back on the startup session-in-use prompt, sessions opened later with /resume show the in-use warning again.
  • Instruction files whose frontmatter is not valid YAML now keep an applyTo or paths list and excludeAgent, instead of applying to every file, to none, or to an agent they exclude
  • A preToolUse hook that returns "modifiedArgs": null no longer makes the tool call fail with "Expected JSON object but got null"; null now leaves the arguments unchanged, as it does for the hook's other fields.
  • Escape and Ctrl+G leave Ctrl+R reverse search in one press when it was started from a slash command, /cd path or command-mode draft, instead of clearing the draft.
  • Pressing Enter on a search with no matches in the session browser or the custom agent picker, or Tab in the agent picker, no longer adds a space to the search text.
  • Messages such as the /rename confirmation now show 8-bit control characters from the text they echo as spaces instead of sending them to the terminal.
  • copilot sessions import now reports a second session header as "Only the first record may be a session header." and an unknown record type as unsupported, instead of asking for a record id and timestamp those lines never needed.
  • When the editor opened with Ctrl+E in /settings saves the file and then exits with an error, the edit is now kept in a recovery file and its path is shown, instead of being deleted with a message saying the editor did not save.
  • When signed out, the Issues and Pull requests tabs no longer offer a / search that could only fail with "Search failed."; / there now opens the slash-command picker, as on the Gists tab.
  • Keep the /statusline dialog's preview and toggle descriptions inside its border when the sessions sidebar is open.
  • The view tool now fails at once on a named pipe, socket or device instead of waiting forever for a FIFO writer, which left non-interactive runs hanging.
  • Expanding a tool call with Ctrl+O now shows the values of object and array arguments instead of a {…} or [N items] placeholder, so MCP calls that take a nested parameters object can be inspected
  • Command hooks receive COPILOT_HOOK_DEPTH so hook-launched sessions can stop recursive agentStop chains
  • Remote HTTP MCP servers connect through proxies that require Kerberos (Negotiate) authentication.