Commit log

5dbb193 Add a basic visual test

Kirill Bulatov created

a26fdfd Add `rainbow.exclude` to all builtin language configs

MrSubidubi created

776c6ba Simplify

Kirill Bulatov created

baed902 Merge remote-tracking branch 'origin/main' into kb/rainbow-brackets

Kirill Bulatov created

b09d72a Minor tweaks

Kirill Bulatov created

e01e0b8 Avoid panics in LSP store path handling (#42117)

Click to expand commit body
Release Notes:

- Fixed incorrect journal paths handling

Lay Sheth created

908ef03 Split out cron and non-cron unit evals (#42472)

Click to expand commit body
Release Notes:

- N/A

---------

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

Richard Feldman and Bennet Bo Fenner created

5f4d0db Fix circular reference issue around PopoverMenu (#42461)

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

Release Notes:

- N/A

feeiyu created

c50f821 docs: Fix typo in `configuring-zed.md` (#42454)

Click to expand commit body
Fix a minor typo in the setting key: `auto_install_extension` should be
`auto_install_extensions`.

Release Notes:

- N/A

brequet created

7e491ac collab: Drop `embeddings` table (#42466)

Click to expand commit body
This PR drops the `embeddings` table, as it is no longer used.

Release Notes:

- N/A

Marshall Bowers created

9e1e732 Use longer timeout on evals (#42465)

Click to expand commit body
The GPT-5 ones in particular can take a long time!

Release Notes:

- N/A

---------

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

Richard Feldman and Bennet Bo Fenner created

8335128 settings: Skip terminal env vars with substitutions in vscode import (#42464)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/40547

Release Notes:

- Fixed vscode import creating faulty terminal env vars in terminal
settings

Lukas Wirth created

03acbb7 collab: Remove unused embeddings queries and model (#42463)

Click to expand commit body
This PR removes the queries and database model for embeddings, as
they're no longer used.

Release Notes:

- N/A

Marshall Bowers created

0268b17 Add more secrets to eval workflows (#42459)

Click to expand commit body
Release Notes:

- N/A

Richard Feldman created

993919d agent_ui: Add icon button to trigger the @-mention completions menu (#42449)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37087

This PR adds an icon button to the footer of the message editor enabling
to trigger and interact with the @-mention completions menu with the
mouse. This is a first step towards making other types of context you
can add in Zed's agent panel more discoverable. Next, I want to improve
the discoverability of images and selections, given that you wouldn't
necessarily know they work in Zed without a clear way to see them. But I
think that for now, this is enough to close the issue above, which had
lots of productive comments and discussion!

<img width="500" height="540" alt="Screenshot 2025-11-11 at 10  46 3@2x"
src="https://github.com/user-attachments/assets/fd028442-6f77-4153-bea1-c0b815da4ac6"
/>

Release Notes:

- agent: Added an icon button in the agent panel that allows to trigger
the @-mention menu (for adding context) now also with the mouse.

Danilo Leal created

8467a3d agent_ui: Allow to uninstall agent servers from the settings view (#42445)

Click to expand commit body
This PR also adds items within the "Add Agent" menu to:
1. Add more agent servers from extensions, opening up the extensions
page with "Agent Servers" already filtered
2. Go to the agent server + ACP docs to learn more about them

I feel like having them there is a nice way to promote this knowledge
from within the product and have users learn more about them.

<img width="500" height="540" alt="Screenshot 2025-11-11 at 10  46 3@2x"
src="https://github.com/user-attachments/assets/9449df2e-1568-44d8-83ca-87cbb9eefdd2"
/>

Release Notes:

- agent: Enabled uninstalled agent servers from the agent panel's
settings view.

Danilo Leal created

ee2e690 agent_servers: Fix panic when setting default mode (#42452)

Click to expand commit body
Closes ZED-35A

Release Notes:

- Fixed an issue where Zed would panic when trying to set the default
mode for ACP agents

Bennet Bo Fenner created

28d019b ollama: Fix tool calling (#42275)

Click to expand commit body
Closes #42303

Ollama added tool call identifiers
(https://github.com/ollama/ollama/pull/12956) in its latest version
[v0.12.10](https://github.com/ollama/ollama/releases/tag/v0.12.10). This
broke our json schema and made all tool calls fail.

This PR fixes the schema and uses the Ollama provided tool call
identifier when available. We remain backwards compatible and still use
our own identifier with older versions of Ollama. I added a `TODO` to
remove the `Option` around the new field when most users have updated
their installations to v0.12.10 or above.

Note to reviewer: The fix to this issue should likely get cherry-picked
into the next release, since Ollama becomes unusable as an agent without
it.

Release Notes:

- Fixed tool calling when using the latest version of Ollama

tidely created

a19d111 remote: Add more context to error logging in wsl (#42450)

Click to expand commit body
cc https://github.com/zed-industries/zed/issues/40892

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

38e2c7a editor: Hide file blame on editor cancel (ESC) (#42436)

Click to expand commit body
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

10d5d78 Improve error messages on extension loading (#42266)

Click to expand commit body
This pull request improves error message when extension loading goes
wrong.

Before:

```
2025-11-08T21:16:02+08:00 ERROR [extension_host::extension_host] failed to load arkts extension.toml

Caused by:
    No such file or directory (os error 2)
```

Now:

```
2025-11-08T22:57:00+08:00 ERROR [extension_host::extension_host] failed to load arkts extension.toml, "/Users/user_name_placeholder/Library/Application Support/Zed/extensions/installed/arkts/extension.toml"

Caused by:
    No such file or directory (os error 2)

```

Release Notes:

- N/A

liuyanghejerry created

dfd7e85 Replace deprecated json.schemastore.org with www.schemastore.org (#42336)

Click to expand commit body
Release Notes:

- N/A

According to
[microsoft/vscode#254689](https://github.com/microsoft/vscode/issues/254689),
the json.schemastore.org domain has been deprecated and should now use
www.schemastore.org (or schemastore.org) instead.

This PR updates all occurrences of the old domain within the Zed
codebase,
including code, documentation, and configuration files.

Terra created

b8fcd3e gpui: Fix `RefCell already borrowed` in `WindowsPlatform::run` (#42440)

Click to expand commit body
Fixes ZED-1VX

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

9be5e31 Add clear recent files history command (#42176)

Click to expand commit body
![2025-11-07
181619](https://github.com/user-attachments/assets/a9bef7a6-dc0b-4db2-85e5-2e1df7b21cfa)


Release Notes:

- Added "workspace: clear navigation history" command

Libon created

58db387 Find proper applicable chunks for visible ranges (#42422)

Click to expand commit body
Release Notes:

- Fixed inlay hints not being queried for certain long-ranged jumps

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
Co-authored-by: Lukas Wirth <lukas@zed.dev>

Kirill Bulatov , Smit Barmase , and Lukas Wirth created

f2ad0d7 zeta cli: Print log paths when running predict (#42396)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Michael Sloan <mgsloan@gmail.com>
Co-authored-by: Ben Kunkle <ben@zed.dev>

Agus Zubiaga , Michael Sloan , and Ben Kunkle created

777b465 auto_update: Ignore dir removal errors on windows (#42435)

Click to expand commit body
The auto update helper already removes these when successful, so these
will always fail in the common case.

Additional replaces a mutable const with a static as otherwise we'll
rebuild the job list on every access

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

b3dd515 docs: Fix broken links in docs with lychee (#42404)

Click to expand commit body
Lychee is a [Rust based](https://lychee.cli.rs) async parallel link
checker.

I ran it against the codebase to suss out stale links and fixed those
up.

There's currently 2 remaining cases that I don't know how to resolve:

1. https://flathub.org/apps/dev.zed.Zed - nginx is giving a 502 bad
gateway
2.
https://github.com/zed-industries/zed/actions/workflows/ci.yml/badge.svg
- I don't want to mess with the CI pipeline in this PR.

Once again, I'll punt to the Docs Czar to see if this gets incorporated
into CI later.

---

## Running `lychee` locally:

```
cargo binstall -y lychee
lychee .
```

---
Release Notes:

- N/A

Signed-off-by: mrg <miguelraz@ciencias.unam.mx>

Miguel Raz Guzmán Macedo created

25489c2 Fix adding a Python virtual environment, may duplicate the "open this dictionary" string when modifying content. (#41840)

Click to expand commit body
Release Notes:

- Fixed an issue when adding a Python virtual environment that may cause
duplicate "open this dictionary" entries

- Trigger condition:
Type `C:\`, delete `\`, then repeatedly add `\`.

-Video

bug:

https://github.com/user-attachments/assets/f68008bb-9138-4451-a842-25b58574493b

fix:

https://github.com/user-attachments/assets/2913b8c2-adee-4275-af7e-e055fd78915f

dDostalker created

dc372e8 editor: Unfold buffers with selections on edit + Remove selections on buffer fold (#37953)

Click to expand commit body
Closes #36376 

Problem:
Multi-cursor edits/selections in multi-buffers view were jumping to
incorrect locations after toggling buffer folds. When users created
multiple selections across different buffers in a multi-buffer view
(like project search results) and then folded one of the buffers,
subsequent text insertion would either:

1. Insert text at wrong locations (like at the top of the first unfolded
buffer)
2. Replace the entire content in some buffers instead of inserting at
the intended cursor positions
3. Create orphaned selections that caused corruption in the editing
experience

The issue seems to happen because when a buffer gets folded in a
multi-buffer view, the existing selections associated with that buffer
become invalid anchor points.

Solution:
1. Selection Cleanup on Buffer Folding
- Added `remove_selections_from_buffer()` method that filters out all
selections from a buffer when it gets folded
- This prevents invalid selections from corrupting subsequent editing
operations
- Includes edge case handling: if all selections are removed (all
buffers folded), it creates a default selection at the start of the
first buffer to prevent panics

2. Unfolding buffers before editing  
- Added `unfold_buffers_with_selections()` call in `handle_input()`
ensures buffers with active selections are automatically unfolded before
editing
- This helps in fixing an edge case (covered in the tests) where, if you
fold all buffers in a multi-buffer view, and try to insert text in a
selection, it gets unfolded before the edit happens. Without this, the
inserted text would override the entire buffer content.
- If we don't care about this edge case, we could remove this method. I
find it ok to add since we already trigger buffer unfolding after edits
with `Event::ExcerptsEdited`.

Release Notes:

- Fixed multi-cursor edits jumping to incorrect locations after toggling
buffer folds in multi-buffer views (e.g, project search)
- Multi-cursor selections now properly handle buffer folding/unfolding
operations
- Text insertion no longer occurs at the wrong positions when buffers
are folded during multi-cursor editing
- Eliminated content replacement bugs where entire buffer contents were
incorrectly overwritten
- Added safe fallback behavior when all buffers in a multi-buffer view
are folded

---------

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>

Alexandre Anício and Smit Barmase created

1c4bb60 gpui: Fix invalid unwrap in windows window creation (#42426)

Click to expand commit body
Fixes ZED-34M

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

97100ce editor: Respect search case sensitivity when selecting occurrences (#42121)

Click to expand commit body
Update how the editor's `select_*` methods work in order to respect the
`search.case_sensitive` setting, or to be overriden by the
`BufferSearchBar` search options.

- Update both the `SearchableItem` and `SearchableItemHandle` traits
  with a new `set_search_is_case_sensitive` method that allows callers
  to set the case sensitivity of the search
- Update the `BufferSearchBar` to leverage
  `SearchableItemHandle.set_search_is_case_sensitive` in order to sync
  its case sensitivity options with the searchable item
- Update the implementation of the `SearchableItem` trait for `Editor`
  so as to store the argument provided to the
  `set_search_is_case_sensitive` method
- Update the way search queries are built by `Editor` so as to rely on
  `SearchableItem.set_search_is_case_sensitive` argument, if not `None`,
  or default to the editor's `search.case_sensitive` settings

Closes #41070 

Release Notes:

- Improved the "Select Next Occurrence", "Select Previous Occurrence"
and "Select All Occurrences" actions in order to respect the case
sensitivity search settings

---------

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

Dino and Conrad Irwin created

dcf5614 vim: Sort whole buffer when no range is specified (#42376)

Click to expand commit body
- Introduce a `default_range` field to `VimCommand`, to be optionally
  used when no range is specified for the command
- Update `VimCommand.parse` to take into consideration the
  `default_range`
- Introduce `CommandRange::buffer` to obtain the `CommandRange` which
  corresponds to the whole buffer
- Update the `VimCommand` definitions for both `sort` and `sort i` to
  default to the whole buffer when no range is specified

Closes #41750 

Release Notes:

- Improved vim's `:sort` command to sort the buffer's content when no
selection is used

Dino created

46db753 diagnostics: Fix panic due non-sorted diagnostics excerpt ranges (#42416)

Click to expand commit body
Fixes ZED-356

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>

Lukas Wirth and Smit Barmase created

1a807a7 terminal: Spawn terminal process on main thread on macos again (#42411)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/42365, follow up to
https://github.com/zed-industries/zed/pull/42234

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

f90d078 git: Add notification to git clone (#41712)

Click to expand commit body
Adds a simple notification when cloning a repo using the integrated git
clone on Zed. Before this, the user had no feedback after starting the
cloning action.

Demo:


https://github.com/user-attachments/assets/72fcdf1b-fc99-4fe5-8db2-7c30b170f12f

Not sure about that icon I'm using for the animation, but that can be
easily changed.

Release Notes:

- Added notification when cloning a repo from zed

Alvaro Parker created

9e717c7 Use cloud for auto-update (#42246)

Click to expand commit body
We've had several outages with a proximate cause of "vercel is
complicated",
and auto-update is considered a critical feature; so lets not use vercel
for
that.

Release Notes:

- Auto Updates (and remote server binaries) are now downloaded via
https://cloud.zed.dev instead of https://zed.dev. As before, these URLs
redirect to the GitHub release for actual downloads.

Conrad Irwin created

823844e vim: Fix increment order (#42256)

Click to expand commit body
before:


https://github.com/user-attachments/assets/d490573c-4c2b-4645-a685-d683f06c611f


after:


https://github.com/user-attachments/assets/a69067a1-6e68-4f05-ba56-18eadb1c54df

Release Notes:

- Fix vim increment order

CnsMaple created

70bcf93 Add an `event_source` to events (#42125)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

378b30e Use cloud.zed.dev for install.sh (#42399)

Click to expand commit body
Similar to #42246, we'd like to avoid having Vercel on the critical
path.

https://zed.dev/install.sh is served from Cloudflare by intercepting a
route on that page, so this makes the shell-based install flow vercel independent.

Release Notes:

- `./script/install.sh` will now fetch assets via
`https://cloud.zed.dev/`
instead of `https://zed.dev`. As before it will redirect to GitHub
releases
  to complete the download.

Conrad Irwin created

83e7c21 collab: Remove unused user queries (#42400)

Click to expand commit body
This PR removes queries on users that were no longer being used.

Release Notes:

- N/A

Marshall Bowers created

e488b6c agent_ui: Fix issue where MCP extension could not be uninstalled (#42384)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/42312

The issue here was that we assumed that context servers provided by
extensions would always need a config in the settings to be present when
actually the opposite was the case - context servers provided by
extensions are the only context servers that do not need a config to be
in place in order to be available in the UI.

Release Notes:

- Fixed an issue where context servers provided by extensions could not
be uninstalled if they were previously unconfigured.

Finn Evers created

f52549c Small documentation fixes (#42397)

Click to expand commit body
Release Notes:

- N/A

Co-authored-by: Ole Jørgen Brønner <olejorgenb@gmail.com>

Kirill Bulatov and Ole Jørgen Brønner created

faa5179 Use more stable and appropriate, depth-based, bracket colorization.

Kirill Bulatov created

359521e Allow passing model_name to evals (#42395)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

b607077 Add old_text/new_text as a zeta2 prompt format (#42171)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Agus Zubiaga <agus@zed.dev>
Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>
Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Michael Sloan <mgsloan@gmail.com>

Max Brunsfeld , Agus Zubiaga , Oleksiy Syvokon , Ben Kunkle , and Michael Sloan created

e5fce42 Update CI badge in README (#42394)

Click to expand commit body
This PR updates the CI badge in the README, after the CI workflow
reorganization.

Release Notes:

- N/A

Marshall Bowers created

a8b0436 Refactor completions (#42122)

Click to expand commit body
This is progress toward multi-word snippets (including snippets with
prefixes containing symbols)

Release Notes:

- Removed `trigger` argument in `ShowCompletions` command

---------

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

Andrew Farkas and Conrad Irwin created

11b38db collab: Drop `channel_messages` table and its dependents (#42392)

Click to expand commit body
This PR drops the `channel_messages` table and its
dependents—`channel_message_mentions` and `observed_channel_messages`—as
they are no longer used.

Release Notes:

- N/A

Marshall Bowers created

112b5c1 Add QuitMode policy to GPUI (#42391)

Click to expand commit body
Applications can select a policy for when the app quits using the new
function `Application::with_quit_mode`:
- Only on explicit calls to `App::quit`
- When the last window is closed
- Platform default (former on macOS, latter everywhere else) 

Release Notes:

- N/A

John Tur created