Commit log

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.

Umesh Yadav created

ccba82a zed 0.202.1

Cole Miller created

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)

Click to expand commit body
Release Notes:

- N/A

Antonio Scandurra created

adbf063 acp: Upgrade errors (#36980)

Click to expand commit body
- **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

Conrad Irwin created

4b2355e v0.202.x preview

Joseph T. Lyons created

e6e6401 acp: Require gemini version 0.2.0 (#36960)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

d0aef3c thread view: Fix cut-off review button (#36970)

Danilo Leal created

1eae76e Restructure remote client crate, consolidate SSH logic (#36967)

Click to expand commit body
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)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

d7c7359 Add xAI's Grok Code Fast 1 model (#36959)

Click to expand commit body
Release Notes:

- Add the `grok-code-fast-1` model to xAI's list of available models.

Daniel Dye created

d884719 thread view: Adjust thinking block UI (#36958)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Danilo Leal and Conrad Irwin created

bd4e943 acp: Add onboarding modal & title bar banner (#36784)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Danilo Leal and Bennet Bo Fenner created

c5d3c7d thread view: Improve agent installation UI (#36957)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Danilo Leal and Conrad Irwin created

fff0ece windows: Fix keystroke & keymap (#36572)

Click to expand commit body
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

Adam Mulvany created

65c6c70 thread view: Refine tool call UI (#36937)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

Danilo Leal and Bennet Bo Fenner created

858ab9c Revert "ai: Auto select user model when there's no default" (#36932)

Click to expand commit body
Reverts zed-industries/zed#36722

Release Notes:

- N/A

Bennet Bo Fenner created

2c64b05 emacs: Add editor::FindAllReferences keybinding (#36840)

Click to expand commit body
This commit maps `editor::FindAllReferences` to Alt+? in the Emacs
keymap.

Release Notes:

- N/A

Daniel Martín created

b7dad2c Fix initial_tasks.json triggering diagnostic warning (#36523)

Click to expand commit body
`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>

Bennet Bo Fenner and Antonio Scandurra created

e96b68b acp: Polish UI (#36927)

Click to expand commit body
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)

Romans Malinovskis created

633ce23 acp: Send user-configured MCP tools (#36910)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

d43df9e Fix workspace migration failure (#36911)

Click to expand commit body
This fixes a regression on nightly introduced in
https://github.com/zed-industries/zed/pull/36714

Release Notes:

- N/A

Max Brunsfeld created

f8667a8 Remove unused files (#36909)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

1460573 acp: Rename dev command (#36908)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

65de969 Do not show directories in the `InvalidBufferView` (#36906)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/36764

Release Notes:

- N/A

Kirill Bulatov created

628a9cd thread view: Add link to docs in the toolbar plus menu (#36883)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

ad25aba remote_server: Improve error reporting (#33770)

Click to expand commit body
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)

Click to expand commit body
Release Notes:

- N/A

Cole Miller created

9cc006f acp: Update error matching (#36898)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

0470bac open_ai: Remove `model` field from ResponseStreamEvent (#36902)

Click to expand commit body
Closes #36901

Release Notes:

- Fixed use of Open WebUI as an LLM provider.

Michael Sloan created