25c8bb7
agent2: Fix model deduplication to use provider ID and model ID (#37088)
Click to expand commit body
Closes #37043
Previously claude sonnet 4 was missing from copilot as it was colliding
with zed's claude-sonnet-4 model id. Now we do deduplication based upon
model and provider id both.
| Before | After |
|--------|--------|
| <img width="784" height="950" alt="CleanShot 2025-08-28 at 18 31
28@2x"
src="https://github.com/user-attachments/assets/d49d5a17-7271-417d-bb5e-bc380071e810"
/> | <img width="720" height="876" alt="CleanShot 2025-08-28 at 18 31
42@2x"
src="https://github.com/user-attachments/assets/a5100c05-994e-4e19-ab20-34c0258b977c"
/> |
Release Notes:
- Fixed an issue where models with the same ID from different providers
(such as Claude Sonnet 4 from both Zed and Copilot) were incorrectly
deduplicated in the model selector—now all variants are shown.
Umesh Yadav
created
a5bb868
acp: Don't cancel editing when scrolling message out of view (#37020)
Click to expand commit body
Release Notes:
- agent: Fixed a bug that canceled editing when scrolling the user
message out of view.
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Antonio Scandurra
and
Bennet Bo Fenner
created
1c37b7e
acp: Add more logs to model selector to diagnose issue (#36997)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Co-authored-by: Katie Geer <katie@zed.dev>
Bennet Bo Fenner
,
Antonio Scandurra
,
Cole Miller
,
Joseph T. Lyons
, and
Katie Geer
created
159c78a
language_models: Fix tool calling for `x-ai/grok-code-fast-1` model via OpenRouter (#37094)
Click to expand commit body
Closes #37022
Closes #36994
This update ensures all Grok models use the JsonSchemaSubset format for
tool schemas.
A previous fix for this issue was too specific, only targeting grok-4
models. This caused other variants, like grok-code-fast-1, to be missed.
We've now broadened the logic to correctly apply the setting to the
entire Grok model family.
Release Notes:
- Fix tool calling for `x-ai/grok-code-fast-1` model via OpenRouter.
b2c63ed
acp: Fix model selector sometimes showing no models (#37006)
Click to expand commit body
Release Notes:
- acp: Fix an issue where the model selector would sometimes be empty
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Bennet Bo Fenner
and
Antonio Scandurra
created
33b54e3
acp: Fix gemini process being leaked (#37012)
Click to expand commit body
Release Notes:
- acp: Fixed a bug that caused external agent server subprocesses to be
leaked.
---------
Co-authored-by: Agus Zubiaga <agus@zed.dev>
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Cole Miller
,
Agus Zubiaga
,
Bennet Bo Fenner
, and
Antonio Scandurra
created
9df0b3a
acp: Fix model selector sometimes showing no models
Bennet Bo Fenner
created
ae82fda
Restore token count for text threads (#36989)
Click to expand commit body
Release Notes:
- N/A
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Antonio Scandurra
and
Bennet Bo Fenner
created
b7add80
Ensure we use the new agent when opening the panel for the first time (#36988)
- **Pass --engine-strict to gemini install command**
- **Make it clearer that if upgrading fails, you need to fix i**
Closes #ISSUE
Release Notes:
- N/A
This is a pure refactor that consolidates all SSH remoting logic such
that it should be straightforward to add another transport to the
remoting system.
Release Notes:
- N/A
---------
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Max Brunsfeld
and
Mikayla Maki
created
d713390
Add get stable channel release notes script (#36969)
Click to expand commit body
Release Notes:
- N/A
Joseph T. Lyons
created
9614b72
thread view: Add one more UI clean up pass (#36965)
Closes #36300
This PR follows Windows conventions by introducing
`KeybindingKeystroke`, so shortcuts now show up as `ctrl-shift-4`
instead of `ctrl-$`.
It also fixes issues with keyboard layouts: when `use_key_equivalents`
is set to true, keys are remapped based on their virtual key codes. For
example, `ctrl-\` on a standard English layout will be mapped to
`ctrl-ё` on a Russian layout.
Release Notes:
- N/A
---------
Co-authored-by: Kate <kate@zed.dev>
张小白
and
Kate
created
b1b60bb
Work around duplicate ssh projects in workspace migration (#36946)
Click to expand commit body
Fixes another case where the sqlite migration could fail, reported by
@SomeoneToIgnore.
Release Notes:
- N/A
Max Brunsfeld
created
0e575b2
helix: Fix `buffer search: deploy` reset to normal mode (#36917)
Click to expand commit body
## Fix: Preserve Helix mode when using search
### Problem
When using `buffer search: deploy` in Helix mode, pressing Enter to
dismiss the search incorrectly returned to Vim NORMAL mode instead of
Helix NORMAL mode.
### Root Cause
The `search_deploy` function was resetting the entire `SearchState` to
default values when buffer search: deploy was activated. Since the
default `Mode` is `Normal`, this caused `prior_mode` to be set to Vim's
Normal mode regardless of the actual mode before search.
### Solution
Modified `search_deploy` to preserve the current mode when resetting
search state:
- Store the current mode before resetting
- Reset search state to default
- Restore the saved mode to `prior_mode`
This ensures the editor returns to the correct mode (Helix NORMAL or Vim
NORMAL) after dismissing buffer search.
### Settings
I was able to reproduce and then test the fix was successful with the
following config and have also tested with vim: default_mode commented
out to ensure that's not influencing the mode selection flow:
```
"helix_mode": true,
"vim_mode": true,
"vim": {
"default_mode": "helix_normal"
},
```
This is on Kubuntu 24.04.
The following test combinations pass locally:
- `cargo test -p search`
- `cargo test -p vim`
- `cargo test -p editor`
- `cargo test -p workspace`
- `cargo test -p gpui -- vim`
- `cargo test -p gpui -- helix`
Release Notes:
- Fixed Helix mode switching to Vim normal mode after using `buffer
search: deploy` to search
Closes #36872
`zed::OpenProjectTasks` without an existing tasks.json will recreate it
from the template.
This file will immediately show a warning.
<img width="810" height="168" alt="Screenshot 2025-08-19 at 17 16 07"
src="https://github.com/user-attachments/assets/bbc8c7a0-7036-4927-8e85-b81b79aeaacb"
/>
Release Notes:
- N/A
Peter Tripp
created
76dbcde
Support disabling drag-and-drop in Project Panel (#36719)
Click to expand commit body
Release Notes:
- Added setting for disabling drag and drop in project panel. `{
"project_panel": {"drag_and_drop": false } }`
Peter Tripp
created
aa0f7a2
Fix conflicts in Linux default keymap (#36519)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/29746
| Action | New Key | Old Key | Former Conflict |
| - | - | - | - |
| `edit_prediction::ToggleMenu` | `ctrl-alt-shift-i` | `ctrl-shift-i` |
`editor::Format` |
| `editor::ToggleEditPrediction` | `ctrl-alt-shift-e` | `ctrl-shift-e` |
`project_panel::ToggleFocus` |
These aren't great keys and I'm open to alternate suggestions, but the
will work out of the box without conflict.
Release Notes:
- N/A
Peter Tripp
created
372b3c7
acp: Enable feature flag for everyone (#36928)
Click to expand commit body
Release Notes:
- N/A
Bennet Bo Fenner
created
10a1140
acp: Improve matching logic when adding new entry to agent_servers (#36926)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Bennet Bo Fenner
and
Antonio Scandurra
created
b249593
agent2: Always finalize diffs from the edit tool (#36918)
Click to expand commit body
Previously, we wouldn't finalize the diff if an error occurred during
editing or the tool call was canceled.
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Ben Brandt
and
Antonio Scandurra
created
c14d84c
acp: Add button to configure custom agent in the configuration view (#36923)
Click to expand commit body
Release Notes:
- N/A
Bennet Bo Fenner
created
428fc6d
chore: Fix typo in `10_bug_report.yml` (#36922)
Click to expand commit body
Release Notes:
- N/A
Dan Dascalescu
created
64b14ef
Fix Sqlite newline syntax in workspace migration (#36916)
Click to expand commit body
Fixes one more case where I incorrectly tried to use a `\n` escape
sequence for a newline in sqlite.
Release Notes:
- N/A
Max Brunsfeld
created
bf5ed6d
Remote: Change "sh -c" to "sh -lc" to make config in $HOME/.profile effective (#36760)
Click to expand commit body
Closes #ISSUE
Release Notes:
- The environment of original remote dev cannot be changed without sudo
because of the behavior of "sh -c". This PR changes "sh -c" to "sh -lc"
to let the shell source $HOME/.profile and support customized
environment like customized $PATH variable.
Rui Ning
created
bb5cfe1
Add "shift-r" and "g ." support for helix mode (#35468)
Click to expand commit body
Related #4642
Compatible with #34136
Release Notes:
- Helix: `Shift+R` works as Paste instead of taking you to ReplaceMode
- Helix: `g .` goes to last modification place (similar to `. in vim)
Closes #33736
Use `thiserror` to implement error stack and `anyhow` to report is to
user.
Also move some code from main to remote_server to have better crate
isolation.
Release Notes:
- N/A
---------
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Gwen Lg
and
Kirill Bulatov
created
99cee87
tab_switcher: Add support for diagnostics (#34547)
Click to expand commit body
Support to show diagnostics on the tab switcher in the same way they are
displayed on the tab bar. This follows the setting
`tabs.show_diagnostics`.
This will improve user experience when disabling the tab bar and still
being able to see the diagnostics when switching tabs
Preview:
<img width="768" height="523" alt="Screenshot From 2025-07-16 11-02-42"
src="https://github.com/user-attachments/assets/308873ba-0458-485d-ae05-0de7c1cdfb28"
/>
Release Notes:
- Added diagnostics indicators to the tab switcher
---------
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Alvaro Parker
and
Kirill Bulatov
created
823a001
acp: Show output for read_file tool in a code block (#36900)