From 042b9d1056e2084c22522772bcbed85ad2bf8988 Mon Sep 17 00:00:00 2001 From: tidy-dev <75402236+tidy-dev@users.noreply.github.com> Date: Tue, 30 Sep 2025 14:32:30 -0400 Subject: [PATCH 01/44] Modify labels in feature request template Updated feature request template labels for clarity. --- .github/ISSUE_TEMPLATE/feature_request.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 0e21f01..0a31afd 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -2,8 +2,7 @@ name: ⭐️ Feature Request description: Suggest a new feature or improvement for the GitHub Copilot CLI. type: Feature labels: - - enhancement - - "needs triage" + - "triage" body: - type: markdown attributes: From d495946d5fa1862e62c0bed1d001f2620e73ac11 Mon Sep 17 00:00:00 2001 From: tidy-dev <75402236+tidy-dev@users.noreply.github.com> Date: Tue, 30 Sep 2025 14:32:51 -0400 Subject: [PATCH 02/44] Modify bug report template labels Updated bug report template to change label from 'needs triage' to 'triage'. --- .github/ISSUE_TEMPLATE/bug_report.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index bd71d4a..f488ac3 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -2,8 +2,7 @@ name: 🐞 Bug Report description: Report a bug or unexpected behavior in the GitHub Copilot CLI. type: Bug labels: - - bug - - "needs triage" + - "triage" body: - type: markdown attributes: From f32bbc317209e507eb895d5672c55eac3ff16e63 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 1 Oct 2025 08:42:11 -0400 Subject: [PATCH 03/44] v0.0.331 --- changelog.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/changelog.md b/changelog.md index 81259db..cb0aea4 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,12 @@ +## 0.0.331 - 2025-10-01 + +- Improved the information density of file read/edit timeline events +- Fixed an inaccuracy in the `--banner` help text; it previously implied that it would persistently change the configuration to always show the startup banner +- Improved the `/model`s list to ensure that a user only sees models they have access to use -- previously, if a user tries to use a model they do not have access to (because of their Copilot plan, their geographic region, etc), they received a `model_not_supported` error. This should prevent that by not even showing such models as options in the list (Fixes https://github.com/github/copilot-cli/issues/112, https://github.com/github/copilot-cli/issues/85, https://github.com/github/copilot-cli/issues/40) +- Fixed a bug where pressing down arrow in a multi-line prompt would wrap around to the first line (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) +- Added a scrollbar to the `@` file mentioning picker and increased the size of the active buffer to 10 items +- Improved the experience of writing prompts while the agent is running -- up/down arrows will now correctly navigate between options in the `@` and `/` menus + ## 0.0.330 - 2025-09-29 - Changed the default model back to Sonnet 4 since Sonnet 4.5 hasn't rolled out to all users yet. Sonnet 4.5 is still available from the `/model` slash command From 9d848e66631d5a4d4b3d4e10c28897c1f2d95da4 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 1 Oct 2025 17:44:19 -0400 Subject: [PATCH 04/44] 0.0.332 --- changelog.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/changelog.md b/changelog.md index cb0aea4..17541e2 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,14 @@ +## 0.0.332 - 2025-10-01 + +- Switched to using per-subscription Copilot API endpoints in accordance with [GitHub's docs](https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-access/manage-network-access) (fixes https://github.com/github/copilot-cli/issues/76) +- Fixed a bug where `/user [list | show | swtich]` did not include users signed in from all authentication modes (fixes https://github.com/github/copilot-cli/issues/58) +- Fixed a bug where switching to another user with `/user switch` did not take effect in the GitHub MCP server +- Improved the screenreader experience by disabling the scrollbar in the `@` file picker, the `--resume` session picker, and the `/` command picker +- Improved the polish of the scrollbar container (increased the width, reduced the opacity of the gutter) +- Minor visual improvements to the input area (moved the current model indicator to the right so it's not cramped with the CWD, improved the positioning of the file picker's "indexing" indicator, improved hint formatting in completion menus) +- Improved Markdown legibility by excluding `#` prefixes in headings +- Improved how we extract paths from shell commands for permission handling (might fix https://github.com/github/copilot-cli/issues/159, https://github.com/github/copilot-cli/issues/67) + ## 0.0.331 - 2025-10-01 - Improved the information density of file read/edit timeline events From ac2bc8ffc779d24ceada159d447ce46acc8ba452 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Thu, 2 Oct 2025 17:50:08 -0400 Subject: [PATCH 05/44] 0.0.333 --- changelog.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/changelog.md b/changelog.md index 17541e2..43af954 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.333 - 2025-10-02 + +- Added image support! `@`-mention files to add them as input to the model. +- Improved proxy support for users on Node.JS v24+. See [this comment](https://github.com/github/copilot-cli/issues/41#issuecomment-3362444262) for more details (Fixes https://github.com/github/copilot-cli/issues/41) +- Added support for directly executing shell commands and bypassing the model by prepending input with `!` (fixes https://github.com/github/copilot-cli/issues/186, https://github.com/github/copilot-cli/issues/12) +- Added `/usage` slash command to provide stats about Premium request usage, session time, code changes, and per-model token use. This information is also printed at the conclusion of a session (Fixes https://github.com/github/copilot-cli/issues/27, https://github.com/github/copilot-cli/issues/121) +- Improved `--screen-reader` mode by replacing icons in the timeline with informative labels +- Added a `--continue` flag to resume the most recently closed session +- Updated the `/clear` command to properly clear old timeline entries/session information (Fixes https://github.com/github/copilot-cli/issues/170) + ## 0.0.332 - 2025-10-01 - Switched to using per-subscription Copilot API endpoints in accordance with [GitHub's docs](https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-access/manage-network-access) (fixes https://github.com/github/copilot-cli/issues/76) From 37b6bad2f102e490b2ea6a7a18ab372a5220417a Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Fri, 3 Oct 2025 19:05:33 -0400 Subject: [PATCH 06/44] 0.0.334 --- changelog.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/changelog.md b/changelog.md index 43af954..526bc69 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.334 - 2025-10-03 + +- Improved the experience of pasting large content: when pasting more than 10 lines, it's displayed as a compact token like `[Paste #1 - 15 lines]` instead of flooding the terminal. +- Added a warning when conversation context approaches ≤20% remaining of the model's limit that truncation will soon occur. At this point, we recommend you begin a new session (improves https://github.com/github/copilot-cli/issues/29) +- Removed the on-exit usage stats from the persisted session history +- Added the current version to startup logs to aid in bug reporting +- Removed cycling through TAB autocomplete items if an argument is present. This prevents running `/cwd /path/to/whatever`, hitting `TAB`, then seeing `/clear` autocomplete + +Run `npm install -g @github/copilot@latest` to update! + ## 0.0.333 - 2025-10-02 - Added image support! `@`-mention files to add them as input to the model. From 6ccbec7ccc7878b9ca9e1f1bb4b76012605b9d05 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Fri, 3 Oct 2025 19:05:46 -0400 Subject: [PATCH 07/44] 0.0.334 Updated changelog with recent changes and version info. --- changelog.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/changelog.md b/changelog.md index 526bc69..8293df8 100644 --- a/changelog.md +++ b/changelog.md @@ -6,8 +6,6 @@ - Added the current version to startup logs to aid in bug reporting - Removed cycling through TAB autocomplete items if an argument is present. This prevents running `/cwd /path/to/whatever`, hitting `TAB`, then seeing `/clear` autocomplete -Run `npm install -g @github/copilot@latest` to update! - ## 0.0.333 - 2025-10-02 - Added image support! `@`-mention files to add them as input to the model. From 34c54e4ae604ad131d6e987694fa67883050517b Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Mon, 6 Oct 2025 18:06:17 -0400 Subject: [PATCH 08/44] 0.0.335 --- changelog.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/changelog.md b/changelog.md index 8293df8..5ba016f 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,17 @@ +## 0.0.335 - 2025-10-06 + +- Improved visibility into file edits by showing file diffs in the timeline by default, without the need to Ctrl+R +- Improved slash command input by showing argument hints in the input box +- Improved the display of the interface in windows less than 80 columns wide +- Reduced the number of colors and improved the spacing of Markdown rendering +- Added a warning when attempting to use proxy support in an environment where it won't work (Node <24, required environment variables not set) (A more permanent fix for https://github.com/github/copilot-cli/issues/41 is coming ~tomorrow) +- Updated the context truncation message's color from an error color to a warning color +- Fixed a bug where `copilot` logs might not have been properly created on Windows +- Fixed a bug where Powershell users with custom profiles might have had issues running commands (Fixes https://github.com/github/copilot-cli/issues/196) +- Fixed a bug where prompts were truncated after pasting and other edge cases (Fixes https://github.com/github/copilot-cli/issues/208, https://github.com/github/copilot-cli/issues/218) +- Fixed a bug where users would see a login prompt on startup despite being logged in (fixes https://github.com/github/copilot-cli/issues/202) +- Fixed a bug where some SSH users in certain environments were unable to get the OAuth login link and had their processes hang trying to open a browser (fixes https://github.com/github/copilot-cli/issues/89) + ## 0.0.334 - 2025-10-03 - Improved the experience of pasting large content: when pasting more than 10 lines, it's displayed as a compact token like `[Paste #1 - 15 lines]` instead of flooding the terminal. From 2d0948f9b364f8aa71aad9b06268f74556027065 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Tue, 7 Oct 2025 17:27:29 -0400 Subject: [PATCH 09/44] 0.0.336 --- changelog.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/changelog.md b/changelog.md index 5ba016f..96e20b4 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,15 @@ +## 0.0.336 - 2025-10-07 + +- Enabled proxy support via HTTPS_PROXY/HTTP_PROXY environment variables regardless of Node version (Fixes https://github.com/github/copilot-cli/issues/41) +- Significantly reduced token consumption, round trips per problem, and time to result. We'll share more specific data in our weekly changelog on Friday! +- Improved file write performances (especially on Windows) by not relying on the shell to fetch the current working directory +- Fixed a bug where `/clear` did not properly reset the context truncation tracking state +- Hid the "Welcome to GitHub Copilot CLI" welcome message on session resumption and `/clear` for a cleaner look +- Improved the alignment of tables where the scrollbar is present +- Improved the output of `--help` by making it more concise +- Added a prompt for users who launch with `--screen-reader` to persistently save this preference +- Potentially improved flickering in some cases; we're still working on this! + ## 0.0.335 - 2025-10-06 - Improved visibility into file edits by showing file diffs in the timeline by default, without the need to Ctrl+R From 046f39eae34fe3c42dc458dd281b9990dbc54e90 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 8 Oct 2025 17:35:29 -0400 Subject: [PATCH 10/44] 0.0.337 --- changelog.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/changelog.md b/changelog.md index 96e20b4..8ea8f20 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,10 @@ +## 0.0.337 - 2025-10-08 + +- Added validation for MCP server names (fixes https://github.com/github/copilot-cli/issues/110) +- Added support for Ctrl+B and Ctrl+F for moving cursor back and forward (fixes https://github.com/github/copilot-cli/issues/214) +- Added support for multi-line input for terminals that support the [Kitty protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) (partially fixes https://github.com/github/copilot-cli/issues/14 -- broader terminal support coming soon!) +- Updated the OAuth login UI to begin polling as soon as the device code is generated (this will _more solidly_ fix SSH edge-cases as described in https://github.com/github/copilot-cli/issues/89) + ## 0.0.336 - 2025-10-07 - Enabled proxy support via HTTPS_PROXY/HTTP_PROXY environment variables regardless of Node version (Fixes https://github.com/github/copilot-cli/issues/41) From 989ca6b8c01f0819c2d17a1fde3ca8101867fea7 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Thu, 9 Oct 2025 17:26:14 -0400 Subject: [PATCH 11/44] 0.0.338 --- changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.md b/changelog.md index 8ea8f20..f51fecb 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,8 @@ +## 0.0.338 - 2025-10-09 + +- Moved Kitty protocol support behind the `COPILOT_KITTY` environment variable due to observed regressions (https://github.com/github/copilot-cli/issues/257, https://github.com/github/copilot-cli/issues/259) +- Fixed a wrapping issue in multi-line prompts with empty lines + ## 0.0.337 - 2025-10-08 - Added validation for MCP server names (fixes https://github.com/github/copilot-cli/issues/110) From 10e9c4a0dfc6ced9156507f0fff18539a9cc0cc9 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Fri, 10 Oct 2025 16:16:43 -0400 Subject: [PATCH 12/44] 0.0.339 --- changelog.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/changelog.md b/changelog.md index f51fecb..a17440c 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,10 @@ +## 0.0.339 - 2025-10-10 + +- Improved argument input to MCP servers in `/mcp add` -- previously, users had to use comma-separated syntax to specify arguments. Now, the "Command" field allows users to input the full command to start the server as if they were running it in a shell +- Fixed a bug when using the Kitty protocol that led to text containing `u` to not paste correctly. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/259) +- Fixed a bug when using the Kitty protocol that led to the process hanging in VSCode terminal on Windows. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/257) +- Improved the error handling in the `/model` picker when no models are available (fixes https://github.com/github/copilot-cli/issues/229) + ## 0.0.338 - 2025-10-09 - Moved Kitty protocol support behind the `COPILOT_KITTY` environment variable due to observed regressions (https://github.com/github/copilot-cli/issues/257, https://github.com/github/copilot-cli/issues/259) From 492ad8102877ec5dae7c246681b4f2553f9a702c Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Mon, 13 Oct 2025 17:36:11 -0400 Subject: [PATCH 13/44] 0.0.340 --- changelog.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/changelog.md b/changelog.md index a17440c..9fe0fb0 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,32 @@ +## 0.0.340 - 2025-10-13 + +- Removed the "Windows support is experimental" warning -- we've made some big strides in improving Windows support the last two weeks! Please continue to report any issues/feedback +- Improved debugging by including the Copilot API request ID for model calls errors and stack traces for client errors +- Fixed an issue where consecutive orphaned tool calls led to a "Each `tool_use` block must have a corresponding `tool_result` block in the next message" message (fixes https://github.com/github/copilot-cli/issues/102) +- Added a prompt to approve new paths in `-p` mode. Also added `--allow-all-paths` argument that approves access to all paths. +- Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). + Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. + + For example: Before: + ```json + { + "env": { + "GITHUB_ACCESS_TOKEN": "GITHUB_TOKEN" + } + } + ``` + + Before this change, the CLI would read the value of `GITHUB_TOKEN` from the environment of the CLI and set the environment varaible named `GITHUB_ACCESS_TOKEN` in the MCP process to that value. With this change, `GITHUB_ACCESS_TOKEN` would now be set to the literal value `GITHUB_TOKEN`. To get the old behavior, change to this: + + ```json + { + "env": { + "GITHUB_ACCESS_TOKEN": "${GITHUB_TOKEN}" + } + } + ``` + + ## 0.0.339 - 2025-10-10 - Improved argument input to MCP servers in `/mcp add` -- previously, users had to use comma-separated syntax to specify arguments. Now, the "Command" field allows users to input the full command to start the server as if they were running it in a shell From 87ec0239a8507181ac597e5b28e11ca6193e3848 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Tue, 14 Oct 2025 23:03:14 -0400 Subject: [PATCH 14/44] 0.0.341 --- changelog.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/changelog.md b/changelog.md index 9fe0fb0..5dd20bf 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,10 @@ +## 0.0.341 - 2025-10-14 + +- Added `/terminal-setup` command to set up multi-line input on terminals not implementing the kitty protocol +- Fixed a bug where rejecting an MCP tool call would reject all future tool calls (fixes https://github.com/github/copilot-cli/issues/290) +- Fixed a regression where calling `/model` with an argument did not work properly +- Added each model's premium request multiplier to the `/model` list (currently, all our supported models are 1x) + ## 0.0.340 - 2025-10-13 - Removed the "Windows support is experimental" warning -- we've made some big strides in improving Windows support the last two weeks! Please continue to report any issues/feedback From abe03e09473ba12e0b2e60d6bc7f1dc7272e7b92 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 15 Oct 2025 19:54:36 -0400 Subject: [PATCH 15/44] Update Windows support status in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 96e0ef6..04a0bca 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ We're still early in our journey, but with your feedback, we're rapidly iteratin - **Linux** - **macOS** -- **Windows** (experimental) +- **Windows** ### Prerequisites From b4f814360ed66dcc4f37916268f637dd804aea4d Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 15 Oct 2025 21:14:41 -0400 Subject: [PATCH 16/44] 0.0.342 --- changelog.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/changelog.md b/changelog.md index 5dd20bf..55d23d2 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,17 @@ +## 0.0.342 - 2025-10-15 + +- Overhauled our session logging format: + - Introduced a new session logging format that decouples how we store sessions from how we display them in the timeline. The new format is cleaner, more concise, and scalable, and will allow us to more easily implement new features down the line. + - New sessions are stored in `~/.copilot/session-state` + - Legacy sessions are stored in `~/.copilot/history-session-state` -- these will be migrated to the new format & location as you resume them from `copilot --resume` +- Enabled the Kitty protocol by default. Multi-line input is now supported via Shift+Ctrl on terminal that support the Kitty protocol. Multi-line input is also supported in VSCode and its forks by running the `/terminal-setup` command (fixes https://github.com/github/copilot-cli/issues/14) +- Enabled non-interactive GHE logins by respecting the `GH_HOST` environment variable for PAT and `gh` authentication modes (fixes https://github.com/github/copilot-cli/issues/296) +- Improved debug log collection convenience by adding a persistent `log_level` option in `~/.copilot/config`. Possible values: `["none", "error", "warning", "info", "debug", "all", "default"]` +- Added debug logging when calls to `/model` result in Copilot API errors. This should help us diagnose some policy/model access edge cases like https://github.com/github/copilot-cli/issues/268 and https://github.com/github/copilot-cli/issues/116 +- Added `gradlew` to the list of commands whose subcommands can be whitelisted (fixes https://github.com/github/copilot-cli/issues/217#issuecomment-3393844685) +- Fixed a bug where sessions could enter a stuck state after a failed MCP tool call (fixes https://github.com/github/copilot-cli/issues/312) +- Made the output of `--help` text more concise + ## 0.0.341 - 2025-10-14 - Added `/terminal-setup` command to set up multi-line input on terminals not implementing the kitty protocol From 235e445c40f93001e1023a19f5a6b558788302ec Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Thu, 16 Oct 2025 17:39:39 -0400 Subject: [PATCH 17/44] 0.0.343 --- changelog.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/changelog.md b/changelog.md index 55d23d2..8a10161 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,25 @@ +## 0.0.343 - 2025-10-16 + +- ``` + Added new model: + Run slash model to equip + Haiku 4.5. + ``` +- Added a flag to augment MCP server configuration to temporarily add or override server configuration per session: `--additional-mcp-config` (fixes https://github.com/github/copilot-cli/issues/288) + - You can pass MCP server configuration in two ways: + - Inline JSON: `copilot --additional-mcp-config '{"mcpServers": {"my-tool": {...}}}'` + - From a file (prefix with @): `copilot --additional-mcp-config @/path/to/config.json` + - You can also pass the flag multiple times (later values override earlier ones): `copilot --additional-mcp-config @base.json --additional-mcp-config @overrides.json` +- Improved our prompts to ensure the agent uses Windows-style paths on Windows (fixes https://github.com/github/copilot-cli/issues/261) +- Added a prompt for users to run `/terminal-setup` if needed to enable multi-line input +- Various visual improvements: + - Added a shimmer effect to the "Thinking..." indicator + - Removed the box around user messages in the timeline + - Increased the contrast of removed intraline highlights in diffs + - Allow cycling through slash commands (from the bottom of the list back to the top) + - Aligned permission/confirmation prompts to ensure all use the same visual style + + ## 0.0.342 - 2025-10-15 - Overhauled our session logging format: From 3da4bd82dc733d544cd9f91fa4aa9975b0b56611 Mon Sep 17 00:00:00 2001 From: Melissa Xie Date: Fri, 17 Oct 2025 20:47:00 -0400 Subject: [PATCH 18/44] Update changelog for 0.0.344 --- changelog.md | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/changelog.md b/changelog.md index 8a10161..a4dde3b 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.344 - 2025-10-17 + +- Enabled GitHub MCP server in prompt mode +- Added support to the bash tool for executing detached processes +- Added list of supported models as part of `copilot help config` text +- Fixed session abort handling to properly clean up orphaned tool call when pressing Esc or force-quitting +- Enforced minimum Node version requirement at launch +- Simplified messaging for `/terminal-setup` + + ## 0.0.343 - 2025-10-16 - ``` @@ -29,7 +39,7 @@ - Enabled the Kitty protocol by default. Multi-line input is now supported via Shift+Ctrl on terminal that support the Kitty protocol. Multi-line input is also supported in VSCode and its forks by running the `/terminal-setup` command (fixes https://github.com/github/copilot-cli/issues/14) - Enabled non-interactive GHE logins by respecting the `GH_HOST` environment variable for PAT and `gh` authentication modes (fixes https://github.com/github/copilot-cli/issues/296) - Improved debug log collection convenience by adding a persistent `log_level` option in `~/.copilot/config`. Possible values: `["none", "error", "warning", "info", "debug", "all", "default"]` -- Added debug logging when calls to `/model` result in Copilot API errors. This should help us diagnose some policy/model access edge cases like https://github.com/github/copilot-cli/issues/268 and https://github.com/github/copilot-cli/issues/116 +- Added debug logging when calls to `/model` result in Copilot API errors. This should help us diagnose some policy/model access edge cases like https://github.com/github/copilot-cli/issues/268 and https://github.com/github/copilot-cli/issues/116 - Added `gradlew` to the list of commands whose subcommands can be whitelisted (fixes https://github.com/github/copilot-cli/issues/217#issuecomment-3393844685) - Fixed a bug where sessions could enter a stuck state after a failed MCP tool call (fixes https://github.com/github/copilot-cli/issues/312) - Made the output of `--help` text more concise @@ -47,7 +57,7 @@ - Improved debugging by including the Copilot API request ID for model calls errors and stack traces for client errors - Fixed an issue where consecutive orphaned tool calls led to a "Each `tool_use` block must have a corresponding `tool_result` block in the next message" message (fixes https://github.com/github/copilot-cli/issues/102) - Added a prompt to approve new paths in `-p` mode. Also added `--allow-all-paths` argument that approves access to all paths. -- Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). +- Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. For example: Before: @@ -125,7 +135,7 @@ ## 0.0.333 - 2025-10-02 -- Added image support! `@`-mention files to add them as input to the model. +- Added image support! `@`-mention files to add them as input to the model. - Improved proxy support for users on Node.JS v24+. See [this comment](https://github.com/github/copilot-cli/issues/41#issuecomment-3362444262) for more details (Fixes https://github.com/github/copilot-cli/issues/41) - Added support for directly executing shell commands and bypassing the model by prepending input with `!` (fixes https://github.com/github/copilot-cli/issues/186, https://github.com/github/copilot-cli/issues/12) - Added `/usage` slash command to provide stats about Premium request usage, session time, code changes, and per-model token use. This information is also printed at the conclusion of a session (Fixes https://github.com/github/copilot-cli/issues/27, https://github.com/github/copilot-cli/issues/121) @@ -170,7 +180,7 @@ - Improved the handling of multi-line inputs in the input box: the input text box is scrollable, limited to 10 lines. Long prompts won't take up the whole screen anymore! (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) - Removed the left and right boarders from the input box. This makes it easier to copy text out of it! - Added glob matching to shell rules. When using `--allow-tool` and `--deny-tool`, you can now specify things like `shell(npm run test:*)` to match any shell commands beginning with `npm run test` -- Improved the `copilot --resume` interface with relative time display, session message count, (Fixes https://github.com/github/copilot-cli/issues/97) +- Improved the `copilot --resume` interface with relative time display, session message count, (Fixes https://github.com/github/copilot-cli/issues/97) ## 0.0.328 - 2025-09-26 From 2fc01d74235fc35240d29f80681879f32db8c336 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Sat, 18 Oct 2025 16:13:11 -0400 Subject: [PATCH 19/44] 0.0.345 - bugfix! --- changelog.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelog.md b/changelog.md index a4dde3b..7ae2eb0 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +## 0.0.345 - 2025-10-18 + +- Fixed a bug where premium requests were being overcounted for some users (https://github.com/github/copilot-cli/issues/351). If you were affected, we are working on refunding your overcharged premium requests! + ## 0.0.344 - 2025-10-17 - Enabled GitHub MCP server in prompt mode From c4a82946a3bcae53f232cc91a617f2b3c5e02b4f Mon Sep 17 00:00:00 2001 From: Andy Feller Date: Sun, 19 Oct 2025 14:12:59 -0400 Subject: [PATCH 20/44] Update changelog for version 0.0.346 Added entry for version 0.0.346 detailing a bug fix related to premium request usage. --- changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.md b/changelog.md index 7ae2eb0..b48e2a7 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,8 @@ +## 0.0.346 - 2025-10-19 + +- Fixed a bug where model sourced from configuration file was not accounted for correctly in estimating premium request usage + For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3419045411 + ## 0.0.345 - 2025-10-18 - Fixed a bug where premium requests were being overcounted for some users (https://github.com/github/copilot-cli/issues/351). If you were affected, we are working on refunding your overcharged premium requests! From bce7f5a340cde6b5bcc84337241b1fb635934c35 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Mon, 20 Oct 2025 21:20:21 -0400 Subject: [PATCH 21/44] 0.0.347 --- changelog.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/changelog.md b/changelog.md index b48e2a7..2101e5b 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,10 @@ +## 0.0.347 - 2025-10-20 + +- Fixed more bugs where incorrect PRU consumption stats were displayed on the frontend + For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3423735333 +- Fixed a bug where pasted input content that was backspaced away was still sent to the model +- Improved line wrapping and alignment when rendering file diffs + ## 0.0.346 - 2025-10-19 - Fixed a bug where model sourced from configuration file was not accounted for correctly in estimating premium request usage From d73f7027316a1227027eea21bd08e8436b0f7a46 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Tue, 21 Oct 2025 20:51:43 -0400 Subject: [PATCH 22/44] 0.0.348 --- changelog.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/changelog.md b/changelog.md index 2101e5b..c98feb7 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.348 - 2025-10-21 + +- Copilot's output now streams in token-by-token! This can be disabled with `--stream off` +- Made improvements to the memory footprint of Copilot CLI, especially when dealing with shell commands that produce very large outputs +- Ensured we preserve comments in VSCode config files when using `/terminal-setup` (fixes https://github.com/github/copilot-cli/issues/325) +- Bundled `node-pty` into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16 +- Fixed an issue where local tool calling broke sessions (fixes https://github.com/github/copilot-cli/issues/365, https://github.com/github/copilot-cli/issues/364, https://github.com/github/copilot-cli/issues/366) +- Added our LICENSE.md to our Node package (fixes https://github.com/github/copilot-cli/issues/371) +- Added debug logging to authentication status changes to get to the bottom of https://github.com/github/copilot-cli/issues/346 + ## 0.0.347 - 2025-10-20 - Fixed more bugs where incorrect PRU consumption stats were displayed on the frontend From dd7b1bab90149e4d592f2c4c13bde56eb373d062 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Wed, 22 Oct 2025 18:05:45 -0400 Subject: [PATCH 23/44] 0.0.349 --- changelog.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/changelog.md b/changelog.md index c98feb7..07214a6 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,12 @@ +## 0.0.349 - 2025-10-22 + +- The model can now call multiple tools in parallel. Each tool must be confirmed in advance. This behavior can be disabled with the `--disable-parallel-tools-execution` flag +- Added `/quit` as an alias of `/exit` (fixes https://github.com/github/copilot-cli/issues/357) +- Fixed a bug where every streamed output chunk was sent back to the model as part of the conversation (fixes https://github.com/github/copilot-cli/issues/379) +- Ensure that environment variables are expanded before running path permission checks +- Fixed a bug where Ctrl+K deleted to the end of the visual line in the input box rather than the logical line +- Added the temp directory to the paths that the model has access to by default (fixes https://github.com/github/copilot-cli/issues/306) + ## 0.0.348 - 2025-10-21 - Copilot's output now streams in token-by-token! This can be disabled with `--stream off` From 214401ffa9fe4acc28c456a5436a533cee30a885 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Thu, 23 Oct 2025 20:32:24 -0400 Subject: [PATCH 24/44] 0.0.350 --- changelog.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/changelog.md b/changelog.md index 07214a6..3b00545 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,36 @@ +## 0.0.350 - 2025-10-23 + +- To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. +Default available tools are: + - Code & Repo navigation + - get_file_contents + - search_code + - search_repositories + - list_branches + - list_commits + - get_commit + - Issue Management + - get_issue + - list_issues + - get_issue_comments + - search_issues + - PR Management + - pull_request_read + - list_pull_requests + - search_pull_requests + - Workflow Info + - list_workflows + - list_workflow_runs + - get_workflow_run + - get_job_logs + - get_workflow_run_logs + - Misc search + - user_search +- Bundled `sharp` dependency into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16, and this fixes some startup blockers on Windows (fixes https://github.com/github/copilot-cli/issues/309 & https://github.com/github/copilot-cli/issues/287) +- Fixed a bug where input tokens were not tracked properly (Fixes https://github.com/github/copilot-cli/issues/337) +- Fixed a bug where MCP tools with arguments would fail with streaming enabled +- Added additional debug logging that will help us investigate https://github.com/github/copilot-cli/issues/346 + ## 0.0.349 - 2025-10-22 - The model can now call multiple tools in parallel. Each tool must be confirmed in advance. This behavior can be disabled with the `--disable-parallel-tools-execution` flag From 27246739496d0a662a1c37959df3268d680450f0 Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Fri, 24 Oct 2025 18:47:33 -0400 Subject: [PATCH 25/44] 0.0.351 --- changelog.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/changelog.md b/changelog.md index 3b00545..a3cc68e 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.351 - 2025-10-24 + +- Improved our path detection heuristic to avoid various annoying, unnecessary permissions requests: + - Running many standard bash/PowerShell commands that are known to be readonly (Fixes part of https://github.com/github/sweagentd/issues/7372) + - Commands like `npm test -- --something` in PowerShell + - Shell redirections like `> some_file.txt` in paths you've already granted write permissions, `> /dev/null`, and `2>&1` (Fixes https://github.com/github/copilot-cli/issues/211) + - Arguments to `gh api` like `gh api /repos/user/repo/ec` (Fixes https://github.com/github/copilot-cli/issues/216) +- Improved prompting for Sonnet 4.5 to reduce the number of intermediate markdown files left in the workspace +- 👀 ...see you at [GitHub Universe](https://githubuniverse.com/)! + ## 0.0.350 - 2025-10-23 - To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. From 9eb269704b944e0365f2e4b8cd842468385a0cb9 Mon Sep 17 00:00:00 2001 From: Andy Feller Date: Mon, 27 Oct 2025 15:59:41 -0400 Subject: [PATCH 26/44] Update changelog for version 0.0.352 --- changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.md b/changelog.md index a3cc68e..d0acb43 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,8 @@ +## 0.0.352 - 2025-10-27 + +- Improve handling of MCP tools containing slashes +- Improve error message from /model command when using an unsupported model + ## 0.0.351 - 2025-10-24 - Improved our path detection heuristic to avoid various annoying, unnecessary permissions requests: From fea0e8da41d7e07f7d14dc12dadbd3494d54740f Mon Sep 17 00:00:00 2001 From: Andy Feller Date: Mon, 27 Oct 2025 16:00:31 -0400 Subject: [PATCH 27/44] Fix formatting of changelog entry for clarity --- changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.md b/changelog.md index d0acb43..8cd506d 100644 --- a/changelog.md +++ b/changelog.md @@ -1,7 +1,7 @@ ## 0.0.352 - 2025-10-27 - Improve handling of MCP tools containing slashes -- Improve error message from /model command when using an unsupported model +- Improve error message from `/model ` command when using an unsupported model ## 0.0.351 - 2025-10-24 From 0d2c9de9632b31219ff93413b2d8ebe8c4909e2a Mon Sep 17 00:00:00 2001 From: Andy Feller Date: Tue, 28 Oct 2025 13:06:34 -0400 Subject: [PATCH 28/44] Update changelog for custom agents and /delegate command Added support for custom agents and a new /delegate command for task delegation. --- changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.md b/changelog.md index 8cd506d..4dd5b02 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,8 @@ +## 0.0.353 - 2025-10-28 + +- Added support for custom agents. Custom agent definitions are pulled from `~/.copilot/agents`, `.github/agents` in your repository, or your organization's `.github` repository. You can explicitly invoke an agent with the `/agent` slash command interactively or `--agent ` noninteractively. Agents are also provided as tools that the model can call during completion of a task +- Added a `/delegate` command to delegate a task asynchronously to Copilot coding agent. Any unstaged changes will be committed to a new branch, a PR will be opened in your GitHub repository, and Copilot will complete work in the background. + ## 0.0.352 - 2025-10-27 - Improve handling of MCP tools containing slashes From 7dc8c5ba3575471b08ba898cc7542b199063b39f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 3 Nov 2025 23:04:06 +0000 Subject: [PATCH 29/44] Update CHANGELOG.md for version 0.0.354 --- CHANGELOG.md | 265 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 265 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..778acea --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,265 @@ +## 0.0.354 - 2025-11-03 + +- Exit with nonzero code when `-p` mode fails due to LLM backend errors (auth failures, quota exhaustion, network issues) +- Support for MCP server tool notifications +- Support for `COPILOT_GITHUB_TOKEN` environment variable for authentication (takes precedence over `GH_TOKEN`) +- Improved shell command safety with better heredoc handling outside of commands +- Diff hunk lines now properly fill the width of the diff box +- MCP servers in GitHub Actions environments automatically use `GITHUB_WORKSPACE` as working directory +- `/delegate` command now works correctly when no local changes exist +- Custom agents with special characters in filenames no longer fail +- Better error messages when using unsupported models with `/model` command +- Alternative model providers now work correctly when using different OpenAI base URLs + +## 0.0.353 - 2025-10-28 + +- Added support for custom agents. Custom agent definitions are pulled from `~/.copilot/agents`, `.github/agents` in your repository, or your organization's `.github` repository. You can explicitly invoke an agent with the `/agent` slash command interactively or `--agent ` noninteractively. Agents are also provided as tools that the model can call during completion of a task +- Added a `/delegate` command to delegate a task asynchronously to Copilot coding agent. Any unstaged changes will be committed to a new branch, a PR will be opened in your GitHub repository, and Copilot will complete work in the background. + +## 0.0.352 - 2025-10-27 + +- Improve handling of MCP tools containing slashes +- Improve error message from `/model ` command when using an unsupported model + +## 0.0.351 - 2025-10-24 + +- Improved our path detection heuristic to avoid various annoying, unnecessary permissions requests: + - Running many standard bash/PowerShell commands that are known to be readonly (Fixes part of https://github.com/github/sweagentd/issues/7372) + - Commands like `npm test -- --something` in PowerShell + - Shell redirections like `> some_file.txt` in paths you've already granted write permissions, `> /dev/null`, and `2>&1` (Fixes https://github.com/github/copilot-cli/issues/211) + - Arguments to `gh api` like `gh api /repos/user/repo/ec` (Fixes https://github.com/github/copilot-cli/issues/216) +- Improved prompting for Sonnet 4.5 to reduce the number of intermediate markdown files left in the workspace +- 👀 ...see you at [GitHub Universe](https://githubuniverse.com/)! + +## 0.0.350 - 2025-10-23 + +- To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. + Default available tools are: - Code & Repo navigation - get_file_contents - search_code - search_repositories - list_branches - list_commits - get_commit - Issue Management - get_issue - list_issues - get_issue_comments - search_issues - PR Management - pull_request_read - list_pull_requests - search_pull_requests - Workflow Info - list_workflows - list_workflow_runs - get_workflow_run - get_job_logs - get_workflow_run_logs - Misc search - user_search +- Bundled `sharp` dependency into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16, and this fixes some startup blockers on Windows (fixes https://github.com/github/copilot-cli/issues/309 & https://github.com/github/copilot-cli/issues/287) +- Fixed a bug where input tokens were not tracked properly (Fixes https://github.com/github/copilot-cli/issues/337) +- Fixed a bug where MCP tools with arguments would fail with streaming enabled +- Added additional debug logging that will help us investigate https://github.com/github/copilot-cli/issues/346 + +## 0.0.349 - 2025-10-22 + +- The model can now call multiple tools in parallel. Each tool must be confirmed in advance. This behavior can be disabled with the `--disable-parallel-tools-execution` flag +- Added `/quit` as an alias of `/exit` (fixes https://github.com/github/copilot-cli/issues/357) +- Fixed a bug where every streamed output chunk was sent back to the model as part of the conversation (fixes https://github.com/github/copilot-cli/issues/379) +- Ensure that environment variables are expanded before running path permission checks +- Fixed a bug where Ctrl+K deleted to the end of the visual line in the input box rather than the logical line +- Added the temp directory to the paths that the model has access to by default (fixes https://github.com/github/copilot-cli/issues/306) + +## 0.0.348 - 2025-10-21 + +- Copilot's output now streams in token-by-token! This can be disabled with `--stream off` +- Made improvements to the memory footprint of Copilot CLI, especially when dealing with shell commands that produce very large outputs +- Ensured we preserve comments in VSCode config files when using `/terminal-setup` (fixes https://github.com/github/copilot-cli/issues/325) +- Bundled `node-pty` into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16 +- Fixed an issue where local tool calling broke sessions (fixes https://github.com/github/copilot-cli/issues/365, https://github.com/github/copilot-cli/issues/364, https://github.com/github/copilot-cli/issues/366) +- Added our LICENSE.md to our Node package (fixes https://github.com/github/copilot-cli/issues/371) +- Added debug logging to authentication status changes to get to the bottom of https://github.com/github/copilot-cli/issues/346 + +## 0.0.347 - 2025-10-20 + +- Fixed more bugs where incorrect PRU consumption stats were displayed on the frontend + For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3423735333 +- Fixed a bug where pasted input content that was backspaced away was still sent to the model +- Improved line wrapping and alignment when rendering file diffs + +## 0.0.346 - 2025-10-19 + +- Fixed a bug where model sourced from configuration file was not accounted for correctly in estimating premium request usage + For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3419045411 + +## 0.0.345 - 2025-10-18 + +- Fixed a bug where premium requests were being overcounted for some users (https://github.com/github/copilot-cli/issues/351). If you were affected, we are working on refunding your overcharged premium requests! + +## 0.0.344 - 2025-10-17 + +- Enabled GitHub MCP server in prompt mode +- Added support to the bash tool for executing detached processes +- Added list of supported models as part of `copilot help config` text +- Fixed session abort handling to properly clean up orphaned tool call when pressing Esc or force-quitting +- Enforced minimum Node version requirement at launch +- Simplified messaging for `/terminal-setup` + +## 0.0.343 - 2025-10-16 + +- ``` + Added new model: + Run slash model to equip + Haiku 4.5. + ``` +- Added a flag to augment MCP server configuration to temporarily add or override server configuration per session: `--additional-mcp-config` (fixes https://github.com/github/copilot-cli/issues/288) + - You can pass MCP server configuration in two ways: + - Inline JSON: `copilot --additional-mcp-config '{"mcpServers": {"my-tool": {...}}}'` + - From a file (prefix with @): `copilot --additional-mcp-config @/path/to/config.json` + - You can also pass the flag multiple times (later values override earlier ones): `copilot --additional-mcp-config @base.json --additional-mcp-config @overrides.json` +- Improved our prompts to ensure the agent uses Windows-style paths on Windows (fixes https://github.com/github/copilot-cli/issues/261) +- Added a prompt for users to run `/terminal-setup` if needed to enable multi-line input +- Various visual improvements: + - Added a shimmer effect to the "Thinking..." indicator + - Removed the box around user messages in the timeline + - Increased the contrast of removed intraline highlights in diffs + - Allow cycling through slash commands (from the bottom of the list back to the top) + - Aligned permission/confirmation prompts to ensure all use the same visual style + +## 0.0.342 - 2025-10-15 + +- Overhauled our session logging format: + - Introduced a new session logging format that decouples how we store sessions from how we display them in the timeline. The new format is cleaner, more concise, and scalable, and will allow us to more easily implement new features down the line. + - New sessions are stored in `~/.copilot/session-state` + - Legacy sessions are stored in `~/.copilot/history-session-state` -- these will be migrated to the new format & location as you resume them from `copilot --resume` +- Enabled the Kitty protocol by default. Multi-line input is now supported via Shift+Ctrl on terminal that support the Kitty protocol. Multi-line input is also supported in VSCode and its forks by running the `/terminal-setup` command (fixes https://github.com/github/copilot-cli/issues/14) +- Enabled non-interactive GHE logins by respecting the `GH_HOST` environment variable for PAT and `gh` authentication modes (fixes https://github.com/github/copilot-cli/issues/296) +- Improved debug log collection convenience by adding a persistent `log_level` option in `~/.copilot/config`. Possible values: `["none", "error", "warning", "info", "debug", "all", "default"]` +- Added debug logging when calls to `/model` result in Copilot API errors. This should help us diagnose some policy/model access edge cases like https://github.com/github/copilot-cli/issues/268 and https://github.com/github/copilot-cli/issues/116 +- Added `gradlew` to the list of commands whose subcommands can be whitelisted (fixes https://github.com/github/copilot-cli/issues/217#issuecomment-3393844685) +- Fixed a bug where sessions could enter a stuck state after a failed MCP tool call (fixes https://github.com/github/copilot-cli/issues/312) +- Made the output of `--help` text more concise + +## 0.0.341 - 2025-10-14 + +- Added `/terminal-setup` command to set up multi-line input on terminals not implementing the kitty protocol +- Fixed a bug where rejecting an MCP tool call would reject all future tool calls (fixes https://github.com/github/copilot-cli/issues/290) +- Fixed a regression where calling `/model` with an argument did not work properly +- Added each model's premium request multiplier to the `/model` list (currently, all our supported models are 1x) + +## 0.0.340 - 2025-10-13 + +- Removed the "Windows support is experimental" warning -- we've made some big strides in improving Windows support the last two weeks! Please continue to report any issues/feedback +- Improved debugging by including the Copilot API request ID for model calls errors and stack traces for client errors +- Fixed an issue where consecutive orphaned tool calls led to a "Each `tool_use` block must have a corresponding `tool_result` block in the next message" message (fixes https://github.com/github/copilot-cli/issues/102) +- Added a prompt to approve new paths in `-p` mode. Also added `--allow-all-paths` argument that approves access to all paths. +- Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). + Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. + + For example: Before: + + ```json + { + "env": { + "GITHUB_ACCESS_TOKEN": "GITHUB_TOKEN" + } + } + ``` + + Before this change, the CLI would read the value of `GITHUB_TOKEN` from the environment of the CLI and set the environment variable named `GITHUB_ACCESS_TOKEN` in the MCP process to that value. With this change, `GITHUB_ACCESS_TOKEN` would now be set to the literal value `GITHUB_TOKEN`. To get the old behavior, change to this: + + ```json + { + "env": { + "GITHUB_ACCESS_TOKEN": "${GITHUB_TOKEN}" + } + } + ``` + +## 0.0.339 - 2025-10-10 + +- Improved argument input to MCP servers in `/mcp add` -- previously, users had to use comma-separated syntax to specify arguments. Now, the "Command" field allows users to input the full command to start the server as if they were running it in a shell +- Fixed a bug when using the Kitty protocol that led to text containing `u` to not paste correctly. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/259) +- Fixed a bug when using the Kitty protocol that led to the process hanging in VSCode terminal on Windows. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/257) +- Improved the error handling in the `/model` picker when no models are available (fixes https://github.com/github/copilot-cli/issues/229) + +## 0.0.338 - 2025-10-09 + +- Moved Kitty protocol support behind the `COPILOT_KITTY` environment variable due to observed regressions (https://github.com/github/copilot-cli/issues/257, https://github.com/github/copilot-cli/issues/259) +- Fixed a wrapping issue in multi-line prompts with empty lines + +## 0.0.337 - 2025-10-08 + +- Added validation for MCP server names (fixes https://github.com/github/copilot-cli/issues/110) +- Added support for Ctrl+B and Ctrl+F for moving cursor back and forward (fixes https://github.com/github/copilot-cli/issues/214) +- Added support for multi-line input for terminals that support the [Kitty protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) (partially fixes https://github.com/github/copilot-cli/issues/14 -- broader terminal support coming soon!) +- Updated the OAuth login UI to begin polling as soon as the device code is generated (this will _more solidly_ fix SSH edge-cases as described in https://github.com/github/copilot-cli/issues/89) + +## 0.0.336 - 2025-10-07 + +- Enabled proxy support via HTTPS_PROXY/HTTP_PROXY environment variables regardless of Node version (Fixes https://github.com/github/copilot-cli/issues/41) +- Significantly reduced token consumption, round trips per problem, and time to result. We'll share more specific data in our weekly changelog on Friday! +- Improved file write performances (especially on Windows) by not relying on the shell to fetch the current working directory +- Fixed a bug where `/clear` did not properly reset the context truncation tracking state +- Hid the "Welcome to GitHub Copilot CLI" welcome message on session resumption and `/clear` for a cleaner look +- Improved the alignment of tables where the scrollbar is present +- Improved the output of `--help` by making it more concise +- Added a prompt for users who launch with `--screen-reader` to persistently save this preference +- Potentially improved flickering in some cases; we're still working on this! + +## 0.0.335 - 2025-10-06 + +- Improved visibility into file edits by showing file diffs in the timeline by default, without the need to Ctrl+R +- Improved slash command input by showing argument hints in the input box +- Improved the display of the interface in windows less than 80 columns wide +- Reduced the number of colors and improved the spacing of Markdown rendering +- Added a warning when attempting to use proxy support in an environment where it won't work (Node <24, required environment variables not set) (A more permanent fix for https://github.com/github/copilot-cli/issues/41 is coming ~tomorrow) +- Updated the context truncation message's color from an error color to a warning color +- Fixed a bug where `copilot` logs might not have been properly created on Windows +- Fixed a bug where Powershell users with custom profiles might have had issues running commands (Fixes https://github.com/github/copilot-cli/issues/196) +- Fixed a bug where prompts were truncated after pasting and other edge cases (Fixes https://github.com/github/copilot-cli/issues/208, https://github.com/github/copilot-cli/issues/218) +- Fixed a bug where users would see a login prompt on startup despite being logged in (fixes https://github.com/github/copilot-cli/issues/202) +- Fixed a bug where some SSH users in certain environments were unable to get the OAuth login link and had their processes hang trying to open a browser (fixes https://github.com/github/copilot-cli/issues/89) + +## 0.0.334 - 2025-10-03 + +- Improved the experience of pasting large content: when pasting more than 10 lines, it's displayed as a compact token like `[Paste #1 - 15 lines]` instead of flooding the terminal. +- Added a warning when conversation context approaches ≤20% remaining of the model's limit that truncation will soon occur. At this point, we recommend you begin a new session (improves https://github.com/github/copilot-cli/issues/29) +- Removed the on-exit usage stats from the persisted session history +- Added the current version to startup logs to aid in bug reporting +- Removed cycling through TAB autocomplete items if an argument is present. This prevents running `/cwd /path/to/whatever`, hitting `TAB`, then seeing `/clear` autocomplete + +## 0.0.333 - 2025-10-02 + +- Added image support! `@`-mention files to add them as input to the model. +- Improved proxy support for users on Node.JS v24+. See [this comment](https://github.com/github/copilot-cli/issues/41#issuecomment-3362444262) for more details (Fixes https://github.com/github/copilot-cli/issues/41) +- Added support for directly executing shell commands and bypassing the model by prepending input with `!` (fixes https://github.com/github/copilot-cli/issues/186, https://github.com/github/copilot-cli/issues/12) +- Added `/usage` slash command to provide stats about Premium request usage, session time, code changes, and per-model token use. This information is also printed at the conclusion of a session (Fixes https://github.com/github/copilot-cli/issues/27, https://github.com/github/copilot-cli/issues/121) +- Improved `--screen-reader` mode by replacing icons in the timeline with informative labels +- Added a `--continue` flag to resume the most recently closed session +- Updated the `/clear` command to properly clear old timeline entries/session information (Fixes https://github.com/github/copilot-cli/issues/170) + +## 0.0.332 - 2025-10-01 + +- Switched to using per-subscription Copilot API endpoints in accordance with [GitHub's docs](https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-access/manage-network-access) (fixes https://github.com/github/copilot-cli/issues/76) +- Fixed a bug where `/user [list | show | switch]` did not include users signed in from all authentication modes (fixes https://github.com/github/copilot-cli/issues/58) +- Fixed a bug where switching to another user with `/user switch` did not take effect in the GitHub MCP server +- Improved the screenreader experience by disabling the scrollbar in the `@` file picker, the `--resume` session picker, and the `/` command picker +- Improved the polish of the scrollbar container (increased the width, reduced the opacity of the gutter) +- Minor visual improvements to the input area (moved the current model indicator to the right so it's not cramped with the CWD, improved the positioning of the file picker's "indexing" indicator, improved hint formatting in completion menus) +- Improved Markdown legibility by excluding `#` prefixes in headings +- Improved how we extract paths from shell commands for permission handling (might fix https://github.com/github/copilot-cli/issues/159, https://github.com/github/copilot-cli/issues/67) + +## 0.0.331 - 2025-10-01 + +- Improved the information density of file read/edit timeline events +- Fixed an inaccuracy in the `--banner` help text; it previously implied that it would persistently change the configuration to always show the startup banner +- Improved the `/model`s list to ensure that a user only sees models they have access to use -- previously, if a user tries to use a model they do not have access to (because of their Copilot plan, their geographic region, etc), they received a `model_not_supported` error. This should prevent that by not even showing such models as options in the list (Fixes https://github.com/github/copilot-cli/issues/112, https://github.com/github/copilot-cli/issues/85, https://github.com/github/copilot-cli/issues/40) +- Fixed a bug where pressing down arrow in a multi-line prompt would wrap around to the first line (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) +- Added a scrollbar to the `@` file mentioning picker and increased the size of the active buffer to 10 items +- Improved the experience of writing prompts while the agent is running -- up/down arrows will now correctly navigate between options in the `@` and `/` menus + +## 0.0.330 - 2025-09-29 + +- Changed the default model back to Sonnet 4 since Sonnet 4.5 hasn't rolled out to all users yet. Sonnet 4.5 is still available from the `/model` slash command + +## 0.0.329 - 2025-09-29 + +- Added support for [Claude Sonnet 4.5](https://github.blog/changelog/2025-09-29-anthropic-claude-sonnet-4-5-is-in-public-preview-for-github-copilot/) and made it the default model +- Added `/model` slash command to easily change the model (fixes https://github.com/github/copilot-cli/issues/10) + - `/model` will open a picker to change the model + - `/model ` will set the model to the parameter provided +- Added display of currently selected model above the input text box (Addresses feedback in https://github.com/github/copilot-cli/issues/120, https://github.com/github/copilot-cli/issues/108, ) +- Improved error messages when users provide incorrect command-line arguments. (Addresses feedback of the discoverability of non-interactive mode from https://github.com/github/copilot-cli/issues/96) +- Changed the behavior of `Ctrl+r` to expand only recent timeline items. After running `Ctrl+r`, you can use `Ctrl+e` to expand all +- Improved word motion logic to better detect newlines: using word motion keys will now correctly move to the first word on a line +- Improved the handling of multi-line inputs in the input box: the input text box is scrollable, limited to 10 lines. Long prompts won't take up the whole screen anymore! (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) +- Removed the left and right borders from the input box. This makes it easier to copy text out of it! +- Added glob matching to shell rules. When using `--allow-tool` and `--deny-tool`, you can now specify things like `shell(npm run test:*)` to match any shell commands beginning with `npm run test` +- Improved the `copilot --resume` interface with relative time display, session message count, (Fixes https://github.com/github/copilot-cli/issues/97) + +## 0.0.328 - 2025-09-26 + +- Improved error message received when Copilot CLI is blocked by organization policy (fixes https://github.com/github/copilot-cli/issues/18 ) +- Improved the error message received when using a PAT that is missing the "Copilot Requests" permission (fixes https://github.com/github/copilot-cli/issues/46 ) +- Improved the output of `/user list` to make it clearer which is the current user +- Improved PowerShell parsing of `ForEach-Object` and detection of command name expressions (e.g.,`& $someCommand`) From 081700835bb07b796429809736d8622f15dee31c Mon Sep 17 00:00:00 2001 From: tidy-dev <75402236+tidy-dev@users.noreply.github.com> Date: Mon, 3 Nov 2025 18:18:46 -0500 Subject: [PATCH 30/44] Update changelog for version 0.0.354 --- changelog.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/changelog.md b/changelog.md index 4dd5b02..6d6fdc6 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,16 @@ +## 0.0.354 - 2025-11-03 + +- Exit with nonzero code when `-p` mode fails due to LLM backend errors (auth failures, quota exhaustion, network issues) +- Support for MCP server tool notifications +- Support for `COPILOT_GITHUB_TOKEN` environment variable for authentication (takes precedence over `GH_TOKEN`) +- Improved shell command safety with better heredoc handling outside of commands +- Diff hunk lines now properly fill the width of the diff box +- MCP servers in GitHub Actions environments automatically use `GITHUB_WORKSPACE` as working directory +- `/delegate` command now works correctly when no local changes exist +- Custom agents with special characters in filenames no longer fail +- Better error messages when using unsupported models with `/model` command +- Alternative model providers now work correctly when using different OpenAI base URLs + ## 0.0.353 - 2025-10-28 - Added support for custom agents. Custom agent definitions are pulled from `~/.copilot/agents`, `.github/agents` in your repository, or your organization's `.github` repository. You can explicitly invoke an agent with the `/agent` slash command interactively or `--agent ` noninteractively. Agents are also provided as tools that the model can call during completion of a task From db7c66de3336ccbe055a8313dc096c93c3e60e23 Mon Sep 17 00:00:00 2001 From: tidy-dev <75402236+tidy-dev@users.noreply.github.com> Date: Mon, 3 Nov 2025 18:19:09 -0500 Subject: [PATCH 31/44] Delete CHANGELOG.md --- CHANGELOG.md | 265 --------------------------------------------------- 1 file changed, 265 deletions(-) delete mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index 778acea..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,265 +0,0 @@ -## 0.0.354 - 2025-11-03 - -- Exit with nonzero code when `-p` mode fails due to LLM backend errors (auth failures, quota exhaustion, network issues) -- Support for MCP server tool notifications -- Support for `COPILOT_GITHUB_TOKEN` environment variable for authentication (takes precedence over `GH_TOKEN`) -- Improved shell command safety with better heredoc handling outside of commands -- Diff hunk lines now properly fill the width of the diff box -- MCP servers in GitHub Actions environments automatically use `GITHUB_WORKSPACE` as working directory -- `/delegate` command now works correctly when no local changes exist -- Custom agents with special characters in filenames no longer fail -- Better error messages when using unsupported models with `/model` command -- Alternative model providers now work correctly when using different OpenAI base URLs - -## 0.0.353 - 2025-10-28 - -- Added support for custom agents. Custom agent definitions are pulled from `~/.copilot/agents`, `.github/agents` in your repository, or your organization's `.github` repository. You can explicitly invoke an agent with the `/agent` slash command interactively or `--agent ` noninteractively. Agents are also provided as tools that the model can call during completion of a task -- Added a `/delegate` command to delegate a task asynchronously to Copilot coding agent. Any unstaged changes will be committed to a new branch, a PR will be opened in your GitHub repository, and Copilot will complete work in the background. - -## 0.0.352 - 2025-10-27 - -- Improve handling of MCP tools containing slashes -- Improve error message from `/model ` command when using an unsupported model - -## 0.0.351 - 2025-10-24 - -- Improved our path detection heuristic to avoid various annoying, unnecessary permissions requests: - - Running many standard bash/PowerShell commands that are known to be readonly (Fixes part of https://github.com/github/sweagentd/issues/7372) - - Commands like `npm test -- --something` in PowerShell - - Shell redirections like `> some_file.txt` in paths you've already granted write permissions, `> /dev/null`, and `2>&1` (Fixes https://github.com/github/copilot-cli/issues/211) - - Arguments to `gh api` like `gh api /repos/user/repo/ec` (Fixes https://github.com/github/copilot-cli/issues/216) -- Improved prompting for Sonnet 4.5 to reduce the number of intermediate markdown files left in the workspace -- 👀 ...see you at [GitHub Universe](https://githubuniverse.com/)! - -## 0.0.350 - 2025-10-23 - -- To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. - Default available tools are: - Code & Repo navigation - get_file_contents - search_code - search_repositories - list_branches - list_commits - get_commit - Issue Management - get_issue - list_issues - get_issue_comments - search_issues - PR Management - pull_request_read - list_pull_requests - search_pull_requests - Workflow Info - list_workflows - list_workflow_runs - get_workflow_run - get_job_logs - get_workflow_run_logs - Misc search - user_search -- Bundled `sharp` dependency into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16, and this fixes some startup blockers on Windows (fixes https://github.com/github/copilot-cli/issues/309 & https://github.com/github/copilot-cli/issues/287) -- Fixed a bug where input tokens were not tracked properly (Fixes https://github.com/github/copilot-cli/issues/337) -- Fixed a bug where MCP tools with arguments would fail with streaming enabled -- Added additional debug logging that will help us investigate https://github.com/github/copilot-cli/issues/346 - -## 0.0.349 - 2025-10-22 - -- The model can now call multiple tools in parallel. Each tool must be confirmed in advance. This behavior can be disabled with the `--disable-parallel-tools-execution` flag -- Added `/quit` as an alias of `/exit` (fixes https://github.com/github/copilot-cli/issues/357) -- Fixed a bug where every streamed output chunk was sent back to the model as part of the conversation (fixes https://github.com/github/copilot-cli/issues/379) -- Ensure that environment variables are expanded before running path permission checks -- Fixed a bug where Ctrl+K deleted to the end of the visual line in the input box rather than the logical line -- Added the temp directory to the paths that the model has access to by default (fixes https://github.com/github/copilot-cli/issues/306) - -## 0.0.348 - 2025-10-21 - -- Copilot's output now streams in token-by-token! This can be disabled with `--stream off` -- Made improvements to the memory footprint of Copilot CLI, especially when dealing with shell commands that produce very large outputs -- Ensured we preserve comments in VSCode config files when using `/terminal-setup` (fixes https://github.com/github/copilot-cli/issues/325) -- Bundled `node-pty` into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16 -- Fixed an issue where local tool calling broke sessions (fixes https://github.com/github/copilot-cli/issues/365, https://github.com/github/copilot-cli/issues/364, https://github.com/github/copilot-cli/issues/366) -- Added our LICENSE.md to our Node package (fixes https://github.com/github/copilot-cli/issues/371) -- Added debug logging to authentication status changes to get to the bottom of https://github.com/github/copilot-cli/issues/346 - -## 0.0.347 - 2025-10-20 - -- Fixed more bugs where incorrect PRU consumption stats were displayed on the frontend - For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3423735333 -- Fixed a bug where pasted input content that was backspaced away was still sent to the model -- Improved line wrapping and alignment when rendering file diffs - -## 0.0.346 - 2025-10-19 - -- Fixed a bug where model sourced from configuration file was not accounted for correctly in estimating premium request usage - For more information, see https://github.com/github/copilot-cli/issues/351#issuecomment-3419045411 - -## 0.0.345 - 2025-10-18 - -- Fixed a bug where premium requests were being overcounted for some users (https://github.com/github/copilot-cli/issues/351). If you were affected, we are working on refunding your overcharged premium requests! - -## 0.0.344 - 2025-10-17 - -- Enabled GitHub MCP server in prompt mode -- Added support to the bash tool for executing detached processes -- Added list of supported models as part of `copilot help config` text -- Fixed session abort handling to properly clean up orphaned tool call when pressing Esc or force-quitting -- Enforced minimum Node version requirement at launch -- Simplified messaging for `/terminal-setup` - -## 0.0.343 - 2025-10-16 - -- ``` - Added new model: - Run slash model to equip - Haiku 4.5. - ``` -- Added a flag to augment MCP server configuration to temporarily add or override server configuration per session: `--additional-mcp-config` (fixes https://github.com/github/copilot-cli/issues/288) - - You can pass MCP server configuration in two ways: - - Inline JSON: `copilot --additional-mcp-config '{"mcpServers": {"my-tool": {...}}}'` - - From a file (prefix with @): `copilot --additional-mcp-config @/path/to/config.json` - - You can also pass the flag multiple times (later values override earlier ones): `copilot --additional-mcp-config @base.json --additional-mcp-config @overrides.json` -- Improved our prompts to ensure the agent uses Windows-style paths on Windows (fixes https://github.com/github/copilot-cli/issues/261) -- Added a prompt for users to run `/terminal-setup` if needed to enable multi-line input -- Various visual improvements: - - Added a shimmer effect to the "Thinking..." indicator - - Removed the box around user messages in the timeline - - Increased the contrast of removed intraline highlights in diffs - - Allow cycling through slash commands (from the bottom of the list back to the top) - - Aligned permission/confirmation prompts to ensure all use the same visual style - -## 0.0.342 - 2025-10-15 - -- Overhauled our session logging format: - - Introduced a new session logging format that decouples how we store sessions from how we display them in the timeline. The new format is cleaner, more concise, and scalable, and will allow us to more easily implement new features down the line. - - New sessions are stored in `~/.copilot/session-state` - - Legacy sessions are stored in `~/.copilot/history-session-state` -- these will be migrated to the new format & location as you resume them from `copilot --resume` -- Enabled the Kitty protocol by default. Multi-line input is now supported via Shift+Ctrl on terminal that support the Kitty protocol. Multi-line input is also supported in VSCode and its forks by running the `/terminal-setup` command (fixes https://github.com/github/copilot-cli/issues/14) -- Enabled non-interactive GHE logins by respecting the `GH_HOST` environment variable for PAT and `gh` authentication modes (fixes https://github.com/github/copilot-cli/issues/296) -- Improved debug log collection convenience by adding a persistent `log_level` option in `~/.copilot/config`. Possible values: `["none", "error", "warning", "info", "debug", "all", "default"]` -- Added debug logging when calls to `/model` result in Copilot API errors. This should help us diagnose some policy/model access edge cases like https://github.com/github/copilot-cli/issues/268 and https://github.com/github/copilot-cli/issues/116 -- Added `gradlew` to the list of commands whose subcommands can be whitelisted (fixes https://github.com/github/copilot-cli/issues/217#issuecomment-3393844685) -- Fixed a bug where sessions could enter a stuck state after a failed MCP tool call (fixes https://github.com/github/copilot-cli/issues/312) -- Made the output of `--help` text more concise - -## 0.0.341 - 2025-10-14 - -- Added `/terminal-setup` command to set up multi-line input on terminals not implementing the kitty protocol -- Fixed a bug where rejecting an MCP tool call would reject all future tool calls (fixes https://github.com/github/copilot-cli/issues/290) -- Fixed a regression where calling `/model` with an argument did not work properly -- Added each model's premium request multiplier to the `/model` list (currently, all our supported models are 1x) - -## 0.0.340 - 2025-10-13 - -- Removed the "Windows support is experimental" warning -- we've made some big strides in improving Windows support the last two weeks! Please continue to report any issues/feedback -- Improved debugging by including the Copilot API request ID for model calls errors and stack traces for client errors -- Fixed an issue where consecutive orphaned tool calls led to a "Each `tool_use` block must have a corresponding `tool_result` block in the next message" message (fixes https://github.com/github/copilot-cli/issues/102) -- Added a prompt to approve new paths in `-p` mode. Also added `--allow-all-paths` argument that approves access to all paths. -- Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). - Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. - - For example: Before: - - ```json - { - "env": { - "GITHUB_ACCESS_TOKEN": "GITHUB_TOKEN" - } - } - ``` - - Before this change, the CLI would read the value of `GITHUB_TOKEN` from the environment of the CLI and set the environment variable named `GITHUB_ACCESS_TOKEN` in the MCP process to that value. With this change, `GITHUB_ACCESS_TOKEN` would now be set to the literal value `GITHUB_TOKEN`. To get the old behavior, change to this: - - ```json - { - "env": { - "GITHUB_ACCESS_TOKEN": "${GITHUB_TOKEN}" - } - } - ``` - -## 0.0.339 - 2025-10-10 - -- Improved argument input to MCP servers in `/mcp add` -- previously, users had to use comma-separated syntax to specify arguments. Now, the "Command" field allows users to input the full command to start the server as if they were running it in a shell -- Fixed a bug when using the Kitty protocol that led to text containing `u` to not paste correctly. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/259) -- Fixed a bug when using the Kitty protocol that led to the process hanging in VSCode terminal on Windows. Kitty protocol support is still behind the `COPILOT_KITTY` environment variable. (Fixes https://github.com/github/copilot-cli/issues/257) -- Improved the error handling in the `/model` picker when no models are available (fixes https://github.com/github/copilot-cli/issues/229) - -## 0.0.338 - 2025-10-09 - -- Moved Kitty protocol support behind the `COPILOT_KITTY` environment variable due to observed regressions (https://github.com/github/copilot-cli/issues/257, https://github.com/github/copilot-cli/issues/259) -- Fixed a wrapping issue in multi-line prompts with empty lines - -## 0.0.337 - 2025-10-08 - -- Added validation for MCP server names (fixes https://github.com/github/copilot-cli/issues/110) -- Added support for Ctrl+B and Ctrl+F for moving cursor back and forward (fixes https://github.com/github/copilot-cli/issues/214) -- Added support for multi-line input for terminals that support the [Kitty protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) (partially fixes https://github.com/github/copilot-cli/issues/14 -- broader terminal support coming soon!) -- Updated the OAuth login UI to begin polling as soon as the device code is generated (this will _more solidly_ fix SSH edge-cases as described in https://github.com/github/copilot-cli/issues/89) - -## 0.0.336 - 2025-10-07 - -- Enabled proxy support via HTTPS_PROXY/HTTP_PROXY environment variables regardless of Node version (Fixes https://github.com/github/copilot-cli/issues/41) -- Significantly reduced token consumption, round trips per problem, and time to result. We'll share more specific data in our weekly changelog on Friday! -- Improved file write performances (especially on Windows) by not relying on the shell to fetch the current working directory -- Fixed a bug where `/clear` did not properly reset the context truncation tracking state -- Hid the "Welcome to GitHub Copilot CLI" welcome message on session resumption and `/clear` for a cleaner look -- Improved the alignment of tables where the scrollbar is present -- Improved the output of `--help` by making it more concise -- Added a prompt for users who launch with `--screen-reader` to persistently save this preference -- Potentially improved flickering in some cases; we're still working on this! - -## 0.0.335 - 2025-10-06 - -- Improved visibility into file edits by showing file diffs in the timeline by default, without the need to Ctrl+R -- Improved slash command input by showing argument hints in the input box -- Improved the display of the interface in windows less than 80 columns wide -- Reduced the number of colors and improved the spacing of Markdown rendering -- Added a warning when attempting to use proxy support in an environment where it won't work (Node <24, required environment variables not set) (A more permanent fix for https://github.com/github/copilot-cli/issues/41 is coming ~tomorrow) -- Updated the context truncation message's color from an error color to a warning color -- Fixed a bug where `copilot` logs might not have been properly created on Windows -- Fixed a bug where Powershell users with custom profiles might have had issues running commands (Fixes https://github.com/github/copilot-cli/issues/196) -- Fixed a bug where prompts were truncated after pasting and other edge cases (Fixes https://github.com/github/copilot-cli/issues/208, https://github.com/github/copilot-cli/issues/218) -- Fixed a bug where users would see a login prompt on startup despite being logged in (fixes https://github.com/github/copilot-cli/issues/202) -- Fixed a bug where some SSH users in certain environments were unable to get the OAuth login link and had their processes hang trying to open a browser (fixes https://github.com/github/copilot-cli/issues/89) - -## 0.0.334 - 2025-10-03 - -- Improved the experience of pasting large content: when pasting more than 10 lines, it's displayed as a compact token like `[Paste #1 - 15 lines]` instead of flooding the terminal. -- Added a warning when conversation context approaches ≤20% remaining of the model's limit that truncation will soon occur. At this point, we recommend you begin a new session (improves https://github.com/github/copilot-cli/issues/29) -- Removed the on-exit usage stats from the persisted session history -- Added the current version to startup logs to aid in bug reporting -- Removed cycling through TAB autocomplete items if an argument is present. This prevents running `/cwd /path/to/whatever`, hitting `TAB`, then seeing `/clear` autocomplete - -## 0.0.333 - 2025-10-02 - -- Added image support! `@`-mention files to add them as input to the model. -- Improved proxy support for users on Node.JS v24+. See [this comment](https://github.com/github/copilot-cli/issues/41#issuecomment-3362444262) for more details (Fixes https://github.com/github/copilot-cli/issues/41) -- Added support for directly executing shell commands and bypassing the model by prepending input with `!` (fixes https://github.com/github/copilot-cli/issues/186, https://github.com/github/copilot-cli/issues/12) -- Added `/usage` slash command to provide stats about Premium request usage, session time, code changes, and per-model token use. This information is also printed at the conclusion of a session (Fixes https://github.com/github/copilot-cli/issues/27, https://github.com/github/copilot-cli/issues/121) -- Improved `--screen-reader` mode by replacing icons in the timeline with informative labels -- Added a `--continue` flag to resume the most recently closed session -- Updated the `/clear` command to properly clear old timeline entries/session information (Fixes https://github.com/github/copilot-cli/issues/170) - -## 0.0.332 - 2025-10-01 - -- Switched to using per-subscription Copilot API endpoints in accordance with [GitHub's docs](https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-access/manage-network-access) (fixes https://github.com/github/copilot-cli/issues/76) -- Fixed a bug where `/user [list | show | switch]` did not include users signed in from all authentication modes (fixes https://github.com/github/copilot-cli/issues/58) -- Fixed a bug where switching to another user with `/user switch` did not take effect in the GitHub MCP server -- Improved the screenreader experience by disabling the scrollbar in the `@` file picker, the `--resume` session picker, and the `/` command picker -- Improved the polish of the scrollbar container (increased the width, reduced the opacity of the gutter) -- Minor visual improvements to the input area (moved the current model indicator to the right so it's not cramped with the CWD, improved the positioning of the file picker's "indexing" indicator, improved hint formatting in completion menus) -- Improved Markdown legibility by excluding `#` prefixes in headings -- Improved how we extract paths from shell commands for permission handling (might fix https://github.com/github/copilot-cli/issues/159, https://github.com/github/copilot-cli/issues/67) - -## 0.0.331 - 2025-10-01 - -- Improved the information density of file read/edit timeline events -- Fixed an inaccuracy in the `--banner` help text; it previously implied that it would persistently change the configuration to always show the startup banner -- Improved the `/model`s list to ensure that a user only sees models they have access to use -- previously, if a user tries to use a model they do not have access to (because of their Copilot plan, their geographic region, etc), they received a `model_not_supported` error. This should prevent that by not even showing such models as options in the list (Fixes https://github.com/github/copilot-cli/issues/112, https://github.com/github/copilot-cli/issues/85, https://github.com/github/copilot-cli/issues/40) -- Fixed a bug where pressing down arrow in a multi-line prompt would wrap around to the first line (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) -- Added a scrollbar to the `@` file mentioning picker and increased the size of the active buffer to 10 items -- Improved the experience of writing prompts while the agent is running -- up/down arrows will now correctly navigate between options in the `@` and `/` menus - -## 0.0.330 - 2025-09-29 - -- Changed the default model back to Sonnet 4 since Sonnet 4.5 hasn't rolled out to all users yet. Sonnet 4.5 is still available from the `/model` slash command - -## 0.0.329 - 2025-09-29 - -- Added support for [Claude Sonnet 4.5](https://github.blog/changelog/2025-09-29-anthropic-claude-sonnet-4-5-is-in-public-preview-for-github-copilot/) and made it the default model -- Added `/model` slash command to easily change the model (fixes https://github.com/github/copilot-cli/issues/10) - - `/model` will open a picker to change the model - - `/model ` will set the model to the parameter provided -- Added display of currently selected model above the input text box (Addresses feedback in https://github.com/github/copilot-cli/issues/120, https://github.com/github/copilot-cli/issues/108, ) -- Improved error messages when users provide incorrect command-line arguments. (Addresses feedback of the discoverability of non-interactive mode from https://github.com/github/copilot-cli/issues/96) -- Changed the behavior of `Ctrl+r` to expand only recent timeline items. After running `Ctrl+r`, you can use `Ctrl+e` to expand all -- Improved word motion logic to better detect newlines: using word motion keys will now correctly move to the first word on a line -- Improved the handling of multi-line inputs in the input box: the input text box is scrollable, limited to 10 lines. Long prompts won't take up the whole screen anymore! (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) -- Removed the left and right borders from the input box. This makes it easier to copy text out of it! -- Added glob matching to shell rules. When using `--allow-tool` and `--deny-tool`, you can now specify things like `shell(npm run test:*)` to match any shell commands beginning with `npm run test` -- Improved the `copilot --resume` interface with relative time display, session message count, (Fixes https://github.com/github/copilot-cli/issues/97) - -## 0.0.328 - 2025-09-26 - -- Improved error message received when Copilot CLI is blocked by organization policy (fixes https://github.com/github/copilot-cli/issues/18 ) -- Improved the error message received when using a PAT that is missing the "Copilot Requests" permission (fixes https://github.com/github/copilot-cli/issues/46 ) -- Improved the output of `/user list` to make it clearer which is the current user -- Improved PowerShell parsing of `ForEach-Object` and detection of command name expressions (e.g.,`& $someCommand`) From c5e5dba10438cd57b2e601d62efabed5cd4f5c3d Mon Sep 17 00:00:00 2001 From: Ryan Hecht Date: Thu, 13 Nov 2025 15:29:18 -0500 Subject: [PATCH 32/44] Update changelog for versions 0.0.354 to 0.0.356 --- changelog.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/changelog.md b/changelog.md index 6d6fdc6..bdb7aee 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,28 @@ +## 0.0.356 - 2025-11-13 + +- GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini are now available in GitHub Copilot CLI. See the [GitHub Changelog](https://github.blog/changelog/2025-11-13-openais-gpt-5-1-gpt-5-1-codex-and-gpt-5-1-codex-mini-are-now-in-public-preview-for-github-copilot/) for more details + +## 0.0.355 - 2025-11-12 + +- Enabled the CLI agent to read its own `/help` and README to answer questions about its capabilities +- Improved parsing of VSCode-formatted custom agents with the `.agent.md` suffix +- Sanitize tool names to fix issues like https://github.com/github/copilot-cli/issues/456 +- Bundled `ripgrep` and added `grep` and `glob` tools for more performant searching of codebases +- Fixed malformed tool call handling before it reaches the UI (partially addresses https://github.com/github/copilot-cli/issues/393) +- Prevent double line wraps in markdown messages +- Fixed a bug where the file selector was used in multi-line input that led to unexpected up/down arrow behavior (fixes https://github.com/github/copilot-cli/issues/350) +- Fixed a bug where remote MCP server configuration in custom agents was not fetched properly +- Added more detail and improved the styling of the `/session` command's output +- Removed the internal `NODE_ENV` variable from the shell tool's environment (fixes https://github.com/github/copilot-cli/issues/151) +- Fixed a memory leak when using the interactive shell tool +- Improved line number formatting in file view output (fixes https://github.com/github/copilot-cli/issues/471) +- Lowered the default shell tool timeout and updated prompt language to not imply that timeout means failure +- Ensured that we query the terminal background color before rendering (fixes https://github.com/github/copilot-cli/issues/36) +- Ensured that the agent won't run `pkill` on its own PID +- Fixed a bug where `copilot` would not quit after an abort signal (fixes https://github.com/github/copilot-cli/issues/529) +- Ensure `!` commands on Windows use PowerShell when available (fixes https://github.com/github/copilot-cli/issues/504) +- Fixed a bug in Windows Terminal where keyboard input was not accepted + ## 0.0.354 - 2025-11-03 - Exit with nonzero code when `-p` mode fails due to LLM backend errors (auth failures, quota exhaustion, network issues) From 91ce8610c3a52a7eed4e4dd6cd379fe855b3f388 Mon Sep 17 00:00:00 2001 From: Devraj Mehta Date: Fri, 14 Nov 2025 21:08:58 -0500 Subject: [PATCH 33/44] Update changelog for releases 0.0.357 and 0.0.358 --- changelog.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/changelog.md b/changelog.md index bdb7aee..34a8877 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,11 @@ +## 0.0.358 - 2025-11-14 + +Recovery release to fix availability of GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini models. + +## 0.0.357 - 2025-11-13 + +Recovery release to fix an issue with image resizing. + ## 0.0.356 - 2025-11-13 - GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini are now available in GitHub Copilot CLI. See the [GitHub Changelog](https://github.blog/changelog/2025-11-13-openais-gpt-5-1-gpt-5-1-codex-and-gpt-5-1-codex-mini-are-now-in-public-preview-for-github-copilot/) for more details From 2b9779b8304388259e9beb7ee8da4b58eef57fec Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 17 Nov 2025 23:15:17 +0000 Subject: [PATCH 34/44] Update changelog.md for version 0.0.359 --- changelog.md | 122 +++++++++++++++++++++++---------------------------- 1 file changed, 55 insertions(+), 67 deletions(-) diff --git a/changelog.md b/changelog.md index 34a8877..0984428 100644 --- a/changelog.md +++ b/changelog.md @@ -1,34 +1,48 @@ +## 0.0.359 - 2025-11-17 + +- Support adding images to context via drag & dropping and pasting paths to image files. Improved how image slugs are rendered in the input box +- Add `/share` command to save session as markdown file or GitHub gist +- Fix a bug where cached tokens were displaying as zero at the end of the session +- Enable `USE_BUILTIN_RIPGREP` environment variable to optionally use ripgrep from PATH +- Fix an issue where sourcing custom agents from the remote repository's default branch led to confusions about whether the local copy of the agent was being used +- Fix custom agents configuration issues +- Improve `Ctrl+C` performance +- Improve tool argument parsing safety +- Distinguish tool names from paths and improve tool success/error icons +- `copilot -p` will no longer interactively prompt for permission requests +- Remove unnecessary whitespace from tool descriptions + ## 0.0.358 - 2025-11-14 -Recovery release to fix availability of GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini models. +- Recovery release to fix availability of GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini models ## 0.0.357 - 2025-11-13 -Recovery release to fix an issue with image resizing. +- Recovery release to fix an issue with image resizing ## 0.0.356 - 2025-11-13 -- GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini are now available in GitHub Copilot CLI. See the [GitHub Changelog](https://github.blog/changelog/2025-11-13-openais-gpt-5-1-gpt-5-1-codex-and-gpt-5-1-codex-mini-are-now-in-public-preview-for-github-copilot/) for more details +- GPT-5.1, GPT-5.1-Codex, and GPT-5.1-Codex-Mini are now available in GitHub Copilot CLI ## 0.0.355 - 2025-11-12 - Enabled the CLI agent to read its own `/help` and README to answer questions about its capabilities -- Improved parsing of VSCode-formatted custom agents with the `.agent.md` suffix -- Sanitize tool names to fix issues like https://github.com/github/copilot-cli/issues/456 +- Improved parsing of VS Code-formatted custom agents with the `.agent.md` suffix +- Sanitize tool names to fix issues with special characters - Bundled `ripgrep` and added `grep` and `glob` tools for more performant searching of codebases -- Fixed malformed tool call handling before it reaches the UI (partially addresses https://github.com/github/copilot-cli/issues/393) +- Fixed malformed tool call handling before it reaches the UI - Prevent double line wraps in markdown messages -- Fixed a bug where the file selector was used in multi-line input that led to unexpected up/down arrow behavior (fixes https://github.com/github/copilot-cli/issues/350) +- Fixed a bug where the file selector was used in multi-line input that led to unexpected up/down arrow behavior - Fixed a bug where remote MCP server configuration in custom agents was not fetched properly - Added more detail and improved the styling of the `/session` command's output -- Removed the internal `NODE_ENV` variable from the shell tool's environment (fixes https://github.com/github/copilot-cli/issues/151) +- Removed the internal `NODE_ENV` variable from the shell tool's environment - Fixed a memory leak when using the interactive shell tool -- Improved line number formatting in file view output (fixes https://github.com/github/copilot-cli/issues/471) +- Improved line number formatting in file view output - Lowered the default shell tool timeout and updated prompt language to not imply that timeout means failure -- Ensured that we query the terminal background color before rendering (fixes https://github.com/github/copilot-cli/issues/36) +- Ensured that we query the terminal background color before rendering - Ensured that the agent won't run `pkill` on its own PID -- Fixed a bug where `copilot` would not quit after an abort signal (fixes https://github.com/github/copilot-cli/issues/529) -- Ensure `!` commands on Windows use PowerShell when available (fixes https://github.com/github/copilot-cli/issues/504) +- Fixed a bug where `copilot` would not quit after an abort signal +- Ensure `!` commands on Windows use PowerShell when available - Fixed a bug in Windows Terminal where keyboard input was not accepted ## 0.0.354 - 2025-11-03 @@ -57,41 +71,17 @@ Recovery release to fix an issue with image resizing. ## 0.0.351 - 2025-10-24 - Improved our path detection heuristic to avoid various annoying, unnecessary permissions requests: - - Running many standard bash/PowerShell commands that are known to be readonly (Fixes part of https://github.com/github/sweagentd/issues/7372) - - Commands like `npm test -- --something` in PowerShell - - Shell redirections like `> some_file.txt` in paths you've already granted write permissions, `> /dev/null`, and `2>&1` (Fixes https://github.com/github/copilot-cli/issues/211) - - Arguments to `gh api` like `gh api /repos/user/repo/ec` (Fixes https://github.com/github/copilot-cli/issues/216) + - Running many standard bash/PowerShell commands that are known to be readonly (Fixes part of https://github.com/github/sweagentd/issues/7372) + - Commands like `npm test -- --something` in PowerShell + - Shell redirections like `> some_file.txt` in paths you've already granted write permissions, `> /dev/null`, and `2>&1` (Fixes https://github.com/github/copilot-cli/issues/211) + - Arguments to `gh api` like `gh api /repos/user/repo/ec` (Fixes https://github.com/github/copilot-cli/issues/216) - Improved prompting for Sonnet 4.5 to reduce the number of intermediate markdown files left in the workspace - 👀 ...see you at [GitHub Universe](https://githubuniverse.com/)! ## 0.0.350 - 2025-10-23 -- To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. -Default available tools are: - - Code & Repo navigation - - get_file_contents - - search_code - - search_repositories - - list_branches - - list_commits - - get_commit - - Issue Management - - get_issue - - list_issues - - get_issue_comments - - search_issues - - PR Management - - pull_request_read - - list_pull_requests - - search_pull_requests - - Workflow Info - - list_workflows - - list_workflow_runs - - get_workflow_run - - get_job_logs - - get_workflow_run_logs - - Misc search - - user_search +- To conserve context window space, we've limited the list of tools available to the default GitHub MCP server. In our tests, the model will use the [GitHub CLI, `gh`](https://github.com/cli/cli) (if installed) in lieu of missing MCP tools. We added an `--enable-all-github-mcp-tools` if you wish to turn on all available tools. + Default available tools are: - Code & Repo navigation - get_file_contents - search_code - search_repositories - list_branches - list_commits - get_commit - Issue Management - get_issue - list_issues - get_issue_comments - search_issues - PR Management - pull_request_read - list_pull_requests - search_pull_requests - Workflow Info - list_workflows - list_workflow_runs - get_workflow_run - get_job_logs - get_workflow_run_logs - Misc search - user_search - Bundled `sharp` dependency into the CLI package -- we're one step closer to implementing https://github.com/github/copilot-cli/issues/16, and this fixes some startup blockers on Windows (fixes https://github.com/github/copilot-cli/issues/309 & https://github.com/github/copilot-cli/issues/287) - Fixed a bug where input tokens were not tracked properly (Fixes https://github.com/github/copilot-cli/issues/337) - Fixed a bug where MCP tools with arguments would fail with streaming enabled @@ -100,7 +90,7 @@ Default available tools are: ## 0.0.349 - 2025-10-22 - The model can now call multiple tools in parallel. Each tool must be confirmed in advance. This behavior can be disabled with the `--disable-parallel-tools-execution` flag -- Added `/quit` as an alias of `/exit` (fixes https://github.com/github/copilot-cli/issues/357) +- Added `/quit` as an alias of `/exit` (fixes https://github.com/github/copilot-cli/issues/357) - Fixed a bug where every streamed output chunk was sent back to the model as part of the conversation (fixes https://github.com/github/copilot-cli/issues/379) - Ensure that environment variables are expanded before running path permission checks - Fixed a bug where Ctrl+K deleted to the end of the visual line in the input box rather than the logical line @@ -141,7 +131,6 @@ Default available tools are: - Enforced minimum Node version requirement at launch - Simplified messaging for `/terminal-setup` - ## 0.0.343 - 2025-10-16 - ``` @@ -149,27 +138,26 @@ Default available tools are: Run slash model to equip Haiku 4.5. ``` -- Added a flag to augment MCP server configuration to temporarily add or override server configuration per session: `--additional-mcp-config` (fixes https://github.com/github/copilot-cli/issues/288) - - You can pass MCP server configuration in two ways: - - Inline JSON: `copilot --additional-mcp-config '{"mcpServers": {"my-tool": {...}}}'` - - From a file (prefix with @): `copilot --additional-mcp-config @/path/to/config.json` - - You can also pass the flag multiple times (later values override earlier ones): `copilot --additional-mcp-config @base.json --additional-mcp-config @overrides.json` +- Added a flag to augment MCP server configuration to temporarily add or override server configuration per session: `--additional-mcp-config` (fixes https://github.com/github/copilot-cli/issues/288) + - You can pass MCP server configuration in two ways: + - Inline JSON: `copilot --additional-mcp-config '{"mcpServers": {"my-tool": {...}}}'` + - From a file (prefix with @): `copilot --additional-mcp-config @/path/to/config.json` + - You can also pass the flag multiple times (later values override earlier ones): `copilot --additional-mcp-config @base.json --additional-mcp-config @overrides.json` - Improved our prompts to ensure the agent uses Windows-style paths on Windows (fixes https://github.com/github/copilot-cli/issues/261) - Added a prompt for users to run `/terminal-setup` if needed to enable multi-line input - Various visual improvements: - - Added a shimmer effect to the "Thinking..." indicator - - Removed the box around user messages in the timeline - - Increased the contrast of removed intraline highlights in diffs - - Allow cycling through slash commands (from the bottom of the list back to the top) - - Aligned permission/confirmation prompts to ensure all use the same visual style - + - Added a shimmer effect to the "Thinking..." indicator + - Removed the box around user messages in the timeline + - Increased the contrast of removed intraline highlights in diffs + - Allow cycling through slash commands (from the bottom of the list back to the top) + - Aligned permission/confirmation prompts to ensure all use the same visual style ## 0.0.342 - 2025-10-15 - Overhauled our session logging format: - - Introduced a new session logging format that decouples how we store sessions from how we display them in the timeline. The new format is cleaner, more concise, and scalable, and will allow us to more easily implement new features down the line. - - New sessions are stored in `~/.copilot/session-state` - - Legacy sessions are stored in `~/.copilot/history-session-state` -- these will be migrated to the new format & location as you resume them from `copilot --resume` + - Introduced a new session logging format that decouples how we store sessions from how we display them in the timeline. The new format is cleaner, more concise, and scalable, and will allow us to more easily implement new features down the line. + - New sessions are stored in `~/.copilot/session-state` + - Legacy sessions are stored in `~/.copilot/history-session-state` -- these will be migrated to the new format & location as you resume them from `copilot --resume` - Enabled the Kitty protocol by default. Multi-line input is now supported via Shift+Ctrl on terminal that support the Kitty protocol. Multi-line input is also supported in VSCode and its forks by running the `/terminal-setup` command (fixes https://github.com/github/copilot-cli/issues/14) - Enabled non-interactive GHE logins by respecting the `GH_HOST` environment variable for PAT and `gh` authentication modes (fixes https://github.com/github/copilot-cli/issues/296) - Improved debug log collection convenience by adding a persistent `log_level` option in `~/.copilot/config`. Possible values: `["none", "error", "warning", "info", "debug", "all", "default"]` @@ -192,28 +180,28 @@ Default available tools are: - Fixed an issue where consecutive orphaned tool calls led to a "Each `tool_use` block must have a corresponding `tool_result` block in the next message" message (fixes https://github.com/github/copilot-cli/issues/102) - Added a prompt to approve new paths in `-p` mode. Also added `--allow-all-paths` argument that approves access to all paths. - Changed parsing of environment variables in MCP server configuration to treat the value of the `env` section as literal values (fixes https://github.com/github/copilot-cli/issues/26). - Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. + Customers who have configured MCP Servers for use with the CLI will need to make a slight modification to their `~/.copilot/mcp-config.json`. For any servers they have added with an `env` section, they will need to go add a `$` to the start of the "value" pair of the key value pair of each entry in the env-block, so to have the values treated as references to environment variables. + + For example: Before: - For example: Before: ```json { "env": { "GITHUB_ACCESS_TOKEN": "GITHUB_TOKEN" - } + } } ``` - Before this change, the CLI would read the value of `GITHUB_TOKEN` from the environment of the CLI and set the environment varaible named `GITHUB_ACCESS_TOKEN` in the MCP process to that value. With this change, `GITHUB_ACCESS_TOKEN` would now be set to the literal value `GITHUB_TOKEN`. To get the old behavior, change to this: + Before this change, the CLI would read the value of `GITHUB_TOKEN` from the environment of the CLI and set the environment variable named `GITHUB_ACCESS_TOKEN` in the MCP process to that value. With this change, `GITHUB_ACCESS_TOKEN` would now be set to the literal value `GITHUB_TOKEN`. To get the old behavior, change to this: ```json { "env": { "GITHUB_ACCESS_TOKEN": "${GITHUB_TOKEN}" - } + } } ``` - ## 0.0.339 - 2025-10-10 - Improved argument input to MCP servers in `/mcp add` -- previously, users had to use comma-separated syntax to specify arguments. Now, the "Command" field allows users to input the full command to start the server as if they were running it in a shell @@ -280,7 +268,7 @@ Default available tools are: ## 0.0.332 - 2025-10-01 - Switched to using per-subscription Copilot API endpoints in accordance with [GitHub's docs](https://docs.github.com/en/copilot/how-tos/administer-copilot/manage-for-enterprise/manage-access/manage-network-access) (fixes https://github.com/github/copilot-cli/issues/76) -- Fixed a bug where `/user [list | show | swtich]` did not include users signed in from all authentication modes (fixes https://github.com/github/copilot-cli/issues/58) +- Fixed a bug where `/user [list | show | switch]` did not include users signed in from all authentication modes (fixes https://github.com/github/copilot-cli/issues/58) - Fixed a bug where switching to another user with `/user switch` did not take effect in the GitHub MCP server - Improved the screenreader experience by disabling the scrollbar in the `@` file picker, the `--resume` session picker, and the `/` command picker - Improved the polish of the scrollbar container (increased the width, reduced the opacity of the gutter) @@ -308,11 +296,11 @@ Default available tools are: - `/model` will open a picker to change the model - `/model ` will set the model to the parameter provided - Added display of currently selected model above the input text box (Addresses feedback in https://github.com/github/copilot-cli/issues/120, https://github.com/github/copilot-cli/issues/108, ) -- Improved error messages when users provide incorrect command-line arguments. (Addresses feedback of the discoverability of non-interactive mode from https://github.com/github/copilot-cli/issues/96) +- Improved error messages when users provide incorrect command-line arguments. (Addresses feedback of the discoverability of non-interactive mode from https://github.com/github/copilot-cli/issues/96) - Changed the behavior of `Ctrl+r` to expand only recent timeline items. After running `Ctrl+r`, you can use `Ctrl+e` to expand all - Improved word motion logic to better detect newlines: using word motion keys will now correctly move to the first word on a line - Improved the handling of multi-line inputs in the input box: the input text box is scrollable, limited to 10 lines. Long prompts won't take up the whole screen anymore! (This is on the way to implementing https://github.com/github/copilot-cli/issues/14) -- Removed the left and right boarders from the input box. This makes it easier to copy text out of it! +- Removed the left and right borders from the input box. This makes it easier to copy text out of it! - Added glob matching to shell rules. When using `--allow-tool` and `--deny-tool`, you can now specify things like `shell(npm run test:*)` to match any shell commands beginning with `npm run test` - Improved the `copilot --resume` interface with relative time display, session message count, (Fixes https://github.com/github/copilot-cli/issues/97) From ab59c659ac821c9da3b3638542f5201e894be127 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 18 Nov 2025 03:27:20 +0000 Subject: [PATCH 35/44] Update changelog.md for version 0.0.360 --- changelog.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelog.md b/changelog.md index 0984428..ca9f052 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +## 0.0.360 - 2025-11-18 + +- Fix file operations timing out while waiting for user permission + ## 0.0.359 - 2025-11-17 - Support adding images to context via drag & dropping and pasting paths to image files. Improved how image slugs are rendered in the input box From 46f34fcf45137be73404733f06145b976e1a6792 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 18 Nov 2025 16:37:15 +0000 Subject: [PATCH 36/44] Update changelog.md for version 0.0.361 --- changelog.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelog.md b/changelog.md index ca9f052..53994de 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +## 0.0.361 - 2025-11-18 + +- Gemini 3 Pro is now available in GitHub Copilot CLI + ## 0.0.360 - 2025-11-18 - Fix file operations timing out while waiting for user permission From 5ac16420c1300dcc5af09fabedb1aa4cc7bcb011 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 20 Nov 2025 21:41:31 +0000 Subject: [PATCH 37/44] Update changelog.md for version 0.0.362 --- changelog.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/changelog.md b/changelog.md index 53994de..6fd5cf5 100644 --- a/changelog.md +++ b/changelog.md @@ -1,6 +1,9 @@ -## 0.0.361 - 2025-11-18 +## 0.0.362 - 2025-11-20 -- Gemini 3 Pro is now available in GitHub Copilot CLI +- Fix issues with image drag and drop on Windows +- Shell commands are no longer included in Bash and PowerShell history files +- Paste image data from your clipboard directly into the CLI +- Cleanup and update prompts and tool instructions to be more fluid ## 0.0.360 - 2025-11-18 From ed08ac1fa17d0e7f86e03573c4425db14be6dbf9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 24 Nov 2025 21:17:47 +0000 Subject: [PATCH 38/44] Update changelog.md for version 0.0.363 --- changelog.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/changelog.md b/changelog.md index 6fd5cf5..e7a7dea 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,11 @@ +## 0.0.363 - 2025-11-24 + +- Opus 4.5, GPT-4.1 and GPT-5-Mini are now available in GitHub Copilot CLI +- Image data paste now prioritizes pasting contents of image files instead of their file icons. +- Improved timeline rendering of shell tool names +- Add support for GITHUB_ASKPASS environment variable for authentication +- MCP servers work in `--prompt` mode + ## 0.0.362 - 2025-11-20 - Fix issues with image drag and drop on Windows From 44864172a502f29d6fd36e9539f04d7bd35bf123 Mon Sep 17 00:00:00 2001 From: Andy Feller Date: Mon, 24 Nov 2025 17:09:20 -0500 Subject: [PATCH 39/44] Fix formatting and punctuation in README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 04a0bca..5e4f7e3 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ We're still early in our journey, but with your feedback, we're rapidly iteratin - (On Windows) **PowerShell** v6 or higher - An **active Copilot subscription**. See [Copilot plans](https://github.com/features/copilot/plans?ref_cta=Copilot+plans+signup&ref_loc=install-copilot-cli&ref_page=docs). -If you have access to GitHub Copilot via your organization of enterprise, you cannot use GitHub Copilot CLI if your organization owner or enterprise administrator has disabled it in the organization or enterprise settings. See [Managing policies and features for GitHub Copilot in your organization](http://docs.github.com/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/managing-policies-for-copilot-in-your-organization) for more information. +If you have access to GitHub Copilot via your organization or enterprise, you cannot use GitHub Copilot CLI if your organization owner or enterprise administrator has disabled it in the organization or enterprise settings. See [Managing policies and features for GitHub Copilot in your organization](http://docs.github.com/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/managing-policies-for-copilot-in-your-organization) for more information. ### Installation @@ -67,7 +67,7 @@ You can also authenticate using a fine-grained PAT with the "Copilot Requests" p Launch `copilot` in a folder that contains code you want to work with. -By default, `copilot` utilizes Claude Sonnet 4.5. Run the `/model` slash command to choose from other available models, including Claude Sonnet 4 and GPT-5 +By default, `copilot` utilizes Claude Sonnet 4.5. Run the `/model` slash command to choose from other available models, including Claude Sonnet 4 and GPT-5. Each time you submit a prompt to GitHub Copilot CLI, your monthly quota of premium requests is reduced by one. For information about premium requests, see [About premium requests](https://docs.github.com/copilot/managing-copilot/monitoring-usage-and-entitlements/about-premium-requests). From 771f1d7c0cce74f4af968d4dcebc7aaa72d19789 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 25 Nov 2025 20:15:18 +0000 Subject: [PATCH 40/44] Update changelog.md for version 0.0.364 --- changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.md b/changelog.md index e7a7dea..a248d7a 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,8 @@ +## 0.0.364 - 2025-11-25 + +- Add syntax highlighting for diffs +- Fix light theme markdown rendering + ## 0.0.363 - 2025-11-24 - Opus 4.5, GPT-4.1 and GPT-5-Mini are now available in GitHub Copilot CLI From 29aafbe1906f246ddb59abe1b0f7af11ce1c0858 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 3 Dec 2025 22:56:37 +0000 Subject: [PATCH 41/44] Update changelog.md for version 0.0.366 --- README.md | 6 +++--- changelog.md | 10 ++++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 5e4f7e3..51db03f 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ If you have access to GitHub Copilot via your organization or enterprise, you ca ### Installation Install globally with npm: + ```bash npm install -g @github/copilot ``` @@ -50,7 +51,7 @@ npm install -g @github/copilot copilot ``` -On first launch, you'll be greeted with our adorable animated banner! If you'd like to see this banner again, launch `copilot` with the `--banner` flag. +On first launch, you'll be greeted with our adorable animated banner! If you'd like to see this banner again, launch `copilot` with the `--banner` flag. If you're not currently logged in to GitHub, you'll be prompted to use the `/login` slash command. Enter this command and follow the on-screen instructions to authenticate. @@ -65,7 +66,7 @@ You can also authenticate using a fine-grained PAT with the "Copilot Requests" p ### Using the CLI -Launch `copilot` in a folder that contains code you want to work with. +Launch `copilot` in a folder that contains code you want to work with. By default, `copilot` utilizes Claude Sonnet 4.5. Run the `/model` slash command to choose from other available models, including Claude Sonnet 4 and GPT-5. @@ -73,7 +74,6 @@ Each time you submit a prompt to GitHub Copilot CLI, your monthly quota of premi For more information about how to use the GitHub Copilot CLI, see [our official documentation](https://docs.github.com/copilot/concepts/agents/about-copilot-cli). - ## 📢 Feedback and Participation We're excited to have you join us early in the Copilot CLI journey. diff --git a/changelog.md b/changelog.md index a248d7a..cf37bae 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 0.0.366 - 2025-12-03 + +- Add `infer` property to control custom agent tool visibility +- Add CLI executables to GitHub release artifacts +- Add apply_patch toolchain for OpenAI Codex models + +## 0.0.365 - 2025-11-25 + +- Add `--silent` option to suppress stats output for scripting + ## 0.0.364 - 2025-11-25 - Add syntax highlighting for diffs From d9e12afc9c01e45859a8508d01c50cacb700a8e5 Mon Sep 17 00:00:00 2001 From: Kaleb Luedtke Date: Thu, 4 Dec 2025 16:26:21 -0600 Subject: [PATCH 42/44] Add workflow to automatically submit to Winget --- .github/workflows/winget.yml | 44 ++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/workflows/winget.yml diff --git a/.github/workflows/winget.yml b/.github/workflows/winget.yml new file mode 100644 index 0000000..2c04f58 --- /dev/null +++ b/.github/workflows/winget.yml @@ -0,0 +1,44 @@ +name: Submit release to the WinGet community repository + +on: + release: + types: [published] + +jobs: + publish-winget: + name: Submit to WinGet repository + + # GitHub token permissions needed for winget-create to submit a PR + permissions: + contents: read + pull-requests: write + + # winget-create is only supported on Windows + runs-on: windows-latest + + # winget-create will read the following environment variable to access the GitHub token needed for submitting a PR + # See https://aka.ms/winget-create-token + env: + WINGET_CREATE_GITHUB_TOKEN: ${{ secrets.WINGET_CREATE_GITHUB_TOKEN }} + + steps: + - name: Submit package using wingetcreate + run: | + # Set the package ID based on the release info + $packageId = if (${{ !github.event.release.prerelease }}) { "GitHub.Copilot" } else { "GitHub.Copilot.Prerelease" } + + # Get installer info from release event + $assets = '${{ toJSON(github.event.release.assets) }}' | ConvertFrom-Json + $packageVersion = (${{ toJSON(github.event.release.tag_name) }}) + + # Find the download URLs for the x64 and arm64 installers separately + # This allows overrides to be used so that wingetcreate does not have to guess the architecture from the filename + $installerUrlx64 = $assets | Where-Object -Property name -like '*win32-x64.zip' | Select-Object -ExpandProperty browser_download_url + $installerUrlarm64 = $assets | Where-Object -Property name -like '*win32-arm64.zip' | Select-Object -ExpandProperty browser_download_url + + # Update package using wingetcreate + curl.exe -JLO https://aka.ms/wingetcreate/latest + .\wingetcreate.exe update $packageId ` + --version $packageVersion ` + --urls "$installerUrlx64|x64" "$installerUrlarm64|arm64" ` + --submit From 12e86309d7905a8601dbc603d30a31650302f2e7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 5 Dec 2025 00:56:04 +0000 Subject: [PATCH 43/44] Update changelog.md for version 0.0.367 --- changelog.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelog.md b/changelog.md index cf37bae..4801183 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +## 0.0.367 - 2025-12-04 + +- GPT-5.1-Codex-Max is now available in GitHub Copilot CLI + ## 0.0.366 - 2025-12-03 - Add `infer` property to control custom agent tool visibility From 2e743462784939ed4564f3bb42fbb7f7578634f1 Mon Sep 17 00:00:00 2001 From: Kaleb Luedtke Date: Thu, 4 Dec 2025 22:43:18 -0600 Subject: [PATCH 44/44] Add WinGet command to README (#724) * Add WinGet command to README --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 51db03f..adaf241 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,12 @@ Install globally with npm: npm install -g @github/copilot ``` +Install with [WinGet](https://github.com/microsoft/winget-cli): + +```bash +winget install GitHub.Copilot +``` + ### Launching the CLI ```bash