npm @github/copilot 1.0.110-2

one hour ago

Fixed

  • Label partial responses and reasoning from interrupted or failed attempts as incomplete while preserving their text
  • Starting copilot from a directory that has since been deleted now says the directory no longer exists and how to recover, instead of crashing with a Node stack trace, and -C <directory> now works from there.
  • The workflow run tool no longer tells the model that a user reviews every run's limits when all tool permissions are pre-approved.
  • /compact respects the session AI credit limit, preventing additional charges once the limit is reached
  • Vim normal mode keeps j/k at line ends after $ or End and preserves the cursor column when using Up/Down across shorter lines
  • Plugin listings show enabled local marketplace plugins with missing directories as enabled but not loaded, with an explanation
  • /init suppress immediately hides the Getting started /init tip and keeps it hidden when returning to the folder.
  • Copying wrapped prompt text preserves typed line breaks without adding newlines at visual wraps
  • /worktree HEAD and /move HEAD create a worktree using the normalized branch name "head" instead of failing.
  • /session prune and its dry run skip sessions open in other processes and report how many were skipped
  • The /statusline preview keeps footer segments readable on narrow terminals
  • Ctrl+S in the /mcp add and edit forms saves once, with a single success message and server reload.
  • Ctrl+Y and /share research show their usual no-report messages instead of raw filesystem errors when the research folder cannot be read.
  • /lsp list and /lsp reload report syntax errors in your LSP configuration instead of a misleading missing-key error.
  • Unnamed sessions show their short ID in the Sessions tab and /resume list, keeping the same label after resuming
  • Assistant replies no longer indent or wrap the row after an inline code span that ends exactly at the right edge
  • With the Sessions sidebar docked, /lsp logs, the /every schedule manager, /workflows and the /mcp add form fit the pane beside it instead of being cut off at its edge
  • Mouse selections in scrolled-up conversations copy only highlighted text when released over the prompt or status line
  • Searches in /agent and the Sessions tab match visible text rather than hidden escape sequences.
  • Ctrl+R history search highlights, scrolls to, and places the cursor on matches with decomposed accents.
  • Installing, uninstalling, enabling or disabling a plugin, or adding or removing a marketplace, no longer erases your other plugin and marketplace settings when settings.json has an invalid value; the command now reports the error and leaves the file unchanged
  • Slash commands that fail at an idle prompt now show an error with the command name and reason
  • The slash-command picker underlines matching characters correctly in descriptions containing a capital dotted I.
  • /cwd, /cd, and /add-dir use the path you type when you press Enter before directory suggestions update
  • Pressing Enter twice on a permission prompt approves the request without showing a false retry warning
  • Prompt text wraps without splitting words that fit on a line, wrapping early, or adding stray leading spaces and blank lines
  • Keep accented and CJK characters intact when typing after keyboard shortcuts or pasting over slow terminal connections
  • Read JSON-valued settings, such as hook definitions, with copilot config <key> and /settings show <key>.
  • Ctrl+C stops a ! shell command even when pressed immediately after submitting it
  • Memory changes in /settings take effect without restarting the CLI
  • Preserve exact numbers, duplicate keys, and key order when displaying JSON tool results in previews and expanded views
  • Warn when repository settings override the reasoning effort for new sessions after saving a default with /model --global or /model --repo
  • /context shows loaded custom instructions as a separate token count instead of including them in System Prompt
  • Make /restart work when the CLI is launched with an attached directory argument such as -Csub or -C=sub
  • Show a single status entry when /compact is cancelled or has nothing to compact, without treating nothing to compact as an error
  • Keep /config and /settings readable beside the docked Sessions sidebar by fitting the layout to the available pane width
  • Show a warning when --yolo or --allow-all flags are ignored because bypass permissions mode is disabled, including in non-interactive runs
  • Shell completion works after --effort, --no-remote-export, and bare --sync-session flags; regenerate your completion script to apply
  • Report missing MCP servers as not found in copilot mcp remove and /mcp delete instead of suggesting a disable command that cannot find them
  • Show the MCP reload notice only once when /new worktree, /fork worktree, or /resume opens a session in another directory
  • Correct highlighting and emoji display in directory and agent pickers for names containing a capital dotted I.
  • /skills reload reports the same skill count as /skills list.
  • Allow copilot mcp enable for most servers even when mcp-config.json is invalid
  • Dialogs and tables fit beside the Sessions sidebar without clipped text or columns, and /sandbox fits narrow terminals.
  • Show custom agents marked user-invocable: false in /subagents so you can configure their models and turn them on or off
  • Show which plugin rules are off by default in copilot instruction list
  • Show names and file paths containing Markdown characters exactly as configured in /env
  • Keep text selections visible without adding color when NO_COLOR is set
  • Keep attachments and pasted text intact when clicking inside their labels in the prompt and typing
  • A postToolUse hook that rewrites a shell command's output, for example to redact a secret, again changes what the Shell row and copilot -p print, not only what the model receives
  • Apply URL rules saved in /settings to the active session without requiring a restart
  • Keep /model details visible when the Sessions sidebar is docked
  • Show changed files with non-UTF-8 filenames in /diff, including their patches
  • Preserve blank lines when copying text from the prompt with the mouse
  • Mouse scrolling and clicks in /settings and /config work correctly with the Sessions sidebar docked
  • Keep typed text visible and the cursor aligned after completing folder or agent names containing control characters
  • Show cancellation only once when interrupting a turn with Esc Esc while a /model switch is queued
  • Removing a problem in /settings keeps the selection on the first remaining row instead of jumping to an unrelated one
  • Keep tool results and assistant replies readable and aligned when they contain Unicode line or paragraph separators
  • Make Enter, Up and Down respond immediately after editing a short /search query, and start new queries at the bottom match
  • Remote MCP tools load and respond without timing out when server replies contain a truncated emoji
  • Keep group headings visible when scrolling back to the first item in /settings lists
  • /ask and /btw wait for sign-in to finish at startup and prompt signed-out users to run /login
  • Scrolling or clicking the Sessions sidebar leaves Configuration search results unchanged.
  • Preserve plugin enablement settings at startup when settings.json uses alternate key spellings and contains an invalid value
  • Avoid a five-second delay on /exit and /cd when stopping a session-owned indexed search server
  • Honor NO_COLOR for file-type badges and disable scrollbar thumb colors under NO_COLOR or TERM=dumb
  • Keep shell output aligned and free of display artifacts when commands print Unicode line or paragraph separators
  • Allow copilot mcp add and remove when mcp-config.json is a symlink to a file that does not exist yet
  • Assistant replies with no visible content no longer display an empty bullet in the conversation.
  • Keep plugins installed from remote marketplaces when a repository defines a local marketplace with the same name
  • Keep emoji intact and wide session titles within the column limit in /ahp sessions
  • Keep remaining MCP servers' tool token counts accurate in /mcp after disabling a server with tool search enabled
  • Show refresh completion in the Installed view of /mcp, /skills, and /plugin instead of leaving the refreshing status on screen
  • Canceling "Session limit reached" clears waiting messages instead of sending them and reopening the dialog for each one
  • /mcp shows the correct repository or plugin origin for servers provided by custom agents
  • Exiting shell mode with Ctrl+C clears the exit hint so the next press warns before quitting
  • Keep the focused field and its options visible in MCP configuration forms when the terminal is resized
  • Keep the Sessions sidebar help's status legend fully visible in narrower panes
  • Several CLIs started at once after the user lookup expired no longer look the user up twice and wait for the second lookup before starting
  • Once a session limit has blocked a prompt, every later prompt it blocks also reports the limit, instead of ending with no reply; in non-interactive sessions each blocked prompt fails with the session limit error
  • Prevent /mcp add and /mcp edit from overwriting an existing MCP server when its name is already in use
  • copilot -p now warns on stderr and in JSON output when it cannot start MCP servers, for example because the user's mcp-config.json cannot be parsed, instead of continuing without them silently
  • A local model added and selected from /model mid-session no longer shows Copilot plan quota and AI Credits in the footer, /usage or the exit summary
  • copilot plugin marketplace list, browse and update run from a subdirectory of a repository find the repository's relative directory marketplace under the repository root instead of under the current directory
  • Preserve existing invalid MCP server configurations when installing a server with the same name
  • On macOS 13 and earlier, the CLI now says it requires macOS 14 or later instead of exiting with a native addon loading error
  • /remote on and /remote share now say that your organization has disabled remote control, instead of sending you to /environments to enable incoming connections, which that policy also blocks
  • The exit summary shows AI Credits again when a providers.json is configured but a GitHub-hosted model is selected, matching /usage and the footer
  • Honor the Assisted Permissions startup default when user settings contain an administrator-only restriction that does not apply
  • An MCP sign-in that is waiting in the browser now stops when the server is blocked by the account's third-party MCP policy, instead of finishing the sign-in and saving tokens for a server that can no longer be used
  • Search rows for grep and glob no longer count a postToolUse hook's additionalContext as results, so a search that matched nothing no longer reads 4 files found
  • The /settings dialog and /config no longer show streamerMode to accounts that cannot use /streamer-mode; an account whose settings already have it on still sees the row, so it can turn it off
  • Indexed search keeps reconnecting after occasional connection losses in long sessions instead of switching to ripgrep for the rest of the session
  • Accepting or rejecting an IDE diff works even when another MCP server changes status

Don't miss a new copilot release

NewReleases is sending notifications on new releases.