This PR updates the Mistral AI provider icon to better align with
Mistral's branding. The current icon (from 2023) is not fully aligned
with Mistral's visual identity, and this change ensures consistency and
clarity for users.
### Changes Made
- Replaced the Mistral AI provider icon with an updated design to better
reflect Mistral's branding.
### Testing
- **Manual Testing:** Screenshots have been taken to verify the visual
changes. No visual regression testing was performed since this is a
minor icon update.
<img width="306" height="249" alt="Capture d’écran 2026-02-21 à 09 26
44"
src="https://github.com/user-attachments/assets/b6fa568b-66e5-4460-9bf8-88c0c6139c88"
/>
<img width="331" height="249" alt="Capture d’écran 2026-02-21 à 09 12
50"
src="https://github.com/user-attachments/assets/31ed4ffd-0b9a-47f3-92b8-e8eff6f0acb6"
/>
<img width="306" height="249" alt="Capture d’écran 2026-02-21 à 09 12
56"
src="https://github.com/user-attachments/assets/6339bb9e-5824-41e1-bdef-d809e5ac1cf3"
/>
- **Test Coverage:** No additional test coverage is required for this
change, as it is purely visual.
### Checklist
- [x] Added screenshots for manual testing.
- [x] Done a self-review taking into account security and performance
aspects (no impact).
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist).
### Release Notes
- Updated Mistral AI provider icon to align with Mistral's branding.
---
### Additional Notes
- The previous icon (from 2024) was not fully aligned with Mistral's
visual identity. This update ensures consistency.
- Screenshots of the new icon are attached for review.
- Don't enable heap tracing by default since it has a large performance
impact. A separate action that records with heap tracing is available.
- Use in-memory recording rather than file recording, since the latter
seems to cause a lot of dropped stack walks.
- Don't record stack walk data for GPU events to help reduce the trace
size.
Release Notes:
- N/A
John Tur
created
d1cd9fb
Fix certain title bar elements not being interactive on Windows (#49781)
Click to expand commit body
https://github.com/zed-industries/zed/pull/48330 caused the title bar to
start eating input events below these controls. We should find a way to
make the title bar handling less busted, but this will do for now.
Before you mark this PR as ready for review, make sure that you have:
- [X] Added a solid test coverage and/or screenshots from doing manual
testing
- [X] Done a self-review taking into account security and performance
aspects
Release Notes:
- N/A
John Tur
created
9e0c5f4
diagnostics: Fix typo in toolbar controls (#49779)
Click to expand commit body
Release Notes:
- Fixed typo in stop diagnostics update tooltip.
Previously, `didChangeWatchedFiles` registrations triggered a rebuild of
a single `GlobSet` containing all file watch patterns for the language
server. This means that, each time `didChangeWatchedFiles` is
registered, the work it takes to construct the `GlobSet` increases. This
quadratic blowup caused massive lag with language servers which register
thousands of watched files (like Roslyn).
Instead, create one `GlobSet` per registration and try matching them
one-by-one each time a file watcher event is raised.
---
Before you mark this PR as ready for review, make sure that you have:
- [X] Added a solid test coverage and/or screenshots from doing manual
testing
- [X] Done a self-review taking into account security and performance
aspects
Release Notes:
- Optimized performance for language servers which register many
file-watching notifications.
John Tur
created
57725ca
title_bar: Show organization plans (#49769)
Click to expand commit body
This PR updates the organization selector to also show the plan that is
available through each organization.
Also makes the `plan` method on the `UserStore` return the plan for the
current organization, if it exists.
We aren't yet populating the `plans_by_organization` collection.
Release Notes:
- N/A
Marshall Bowers
created
1dc574f
title_bar: Factor out `PlanChip` component (#49766)
Click to expand commit body
This PR factors out a `PlanChip` component in the `title_bar`.
Release Notes:
- N/A
This PR adds an organization selector to the title bar for switching
between organizations.
Closes CLO-301.
Release Notes:
- N/A
Marshall Bowers
created
930d932
git: Fix panic when unstaged diff is recalculated before its primary diff (#49753)
Click to expand commit body
For inverted diff APIs like `hunks_intersecting_base_text_range`, we
need a snapshot of the main buffer to use as context to compare hunk
anchors, convert anchors to points, etc. Previously, we were always
using a snapshot of the main buffer at the time when the diff was
calculated. This worked well for the hunks of the primary `BufferDiff`,
but it's not valid when the diff also has a secondary set of hunks,
because those hunks are recalculated on their own schedule--so it's
possible for the hunks of the secondary diff to contain anchors that are
newer than the original buffer snapshot that was taken at the time the
primary diff hunks were last calculated. This caused a panic when using
these anchors with the original buffer snapshot.
This PR fixes the issue by using the same approach for inverted diffs as
for non-inverted diffs at the multibuffer level: we take a snapshot of
the main buffer at the time when we snapshot the diff state (including
the diff itself), guaranteeing that that snapshot will be new enough to
resolve all the anchors included in both the primary diff and the
secondary diff.
Closes ZED-54J
Release Notes:
- Fixed a panic that could occur when using the branch diff in split
view mode.
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Cole Miller
and
Antonio Scandurra
created
765444d
zeta2: Include type definitions in related files (#49748)
8f5ae2d
ep_cli: Only compute reversals on last user edit (#49747)
Click to expand commit body
Closes #ISSUE
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Ben Kunkle
created
f676dfe
docs: Update docs for external agents (Claude Agent) (#49739)
Click to expand commit body
- Documentation URLs have been updated to point to `code.claude.com`
instead. This’ll prevent an unnecessary redirect for everyone.
- Added note about Agent teams feature not yet supported.
Closes #49663.
Before you mark this PR as ready for review, make sure that you have:
- ~[ ] Added a solid test coverage and/or screenshots from doing manual
testing~ N/A
- ~[ ] Done a self-review taking into account security and performance
aspects~ N/A
- ~[ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)~
N/A
Release Notes:
- N/A
---------
Co-authored-by: Katie Geer <katie@zed.dev>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Kunall Banerjee
,
Katie Geer
, and
Claude Sonnet 4.6
created
556271b
zeta2: Try not to jump to collaborators as much (#49742)
7bd4437
Fix broken accounts.html links in migrate docs (#49744)
Click to expand commit body
Fixes broken `docs/accounts.html` links in all five migration guides.
## Changes
Replace `https://zed.dev/docs/accounts.html` with
`https://zed.dev/docs/authentication` in:
- `docs/src/migrate/vs-code.md`
- `docs/src/migrate/intellij.md`
- `docs/src/migrate/pycharm.md`
- `docs/src/migrate/webstorm.md`
- `docs/src/migrate/rustrover.md`
These links were flagged as 4xx in an SEO audit. The `accounts.html`
page does not exist; `authentication` is the correct destination.
Release Notes:
- N/A
Katie Geer
created
66bdb11
agent: Change tool name to spawn_agent (#49741)
Click to expand commit body
After looking around a bit, I felt like subagent wasn't the right way to
introduce this tool to the model. And with some back and forth
verification + market research, we both agreed spawn_agent was a better
name for what this tool is doing.
It still calls the right tool if you ask for a subagent, but especially
if we move these to be running in the background, spawn will be a better
name anyway.
Release Notes:
- N/A
Ben Brandt
created
9304e02
agent: Allow the agent to reprompt an existing subagent (#49737)
Click to expand commit body
Also fixes a regression I introduced that didn't cancel threads after
the timeout was hit
Release Notes:
- N/A
Ben Brandt
created
36b6e83
agent: More generous timeouts for subagents (#49734)
Click to expand commit body
Release Notes:
- N/A
Ben Brandt
created
e42dae5
agent: Tweak subagent input params and docs (#49732)
Click to expand commit body
Release Notes:
- N/A
Ben Brandt
created
56fd9da
git_ui: Add diff stat numbers in Branch Diff view (#49716)
Click to expand commit body
This PR adds the diff stat numbers to the `git: branch diff` view
toolbar.
<img width="550" height="1964" alt="Screenshot 2026-02-20 at 10 58@2x"
src="https://github.com/user-attachments/assets/0fc63b64-ce6e-417a-92b5-8008f2561a8f"
/>
---
Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- Git: Added diff stat numbers to the Branch Diff (`git: branch diff`)
view.
Danilo Leal
created
9ad8c7a
editor: Distribute lines across cursors when pasting from external sources (#48676)
Click to expand commit body
Release Notes:
- When pasting multiple lines equaling the number of cursors Zed now
maps each line to each cursor
Lukas Wirth
created
9fdfc42
Fix cargo test -p editor for Linux/Wayland (#49730)
Click to expand commit body
`cargo test -p editor` now builds on Linux/Wayland
Release Notes:
- N/A
Jakub Konka
created
9b0cb4e
text: Store fragment's deletions on stack (#49726)
Click to expand commit body
Helps #38927
- In the common case, each fragment has at most one deletion, so we can
skip the heap allocation
- SmallVec is smaller than an empty HashSet
- Makes cloning cheaper
- From my analysis of the code it's not possible to have duplicate ticks
(I may be wrong tho)
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A
Marco Mihai Condrache
created
40c159c
git: Prevent panic when updating excerpts in split diff (#49725)
Click to expand commit body
When using the split view, if the project diff inserts excerpts for the
same buffer using two different `PathKey`s, we panic inside
`LhsEditor::update_path_excerpts_from_rhs` because of an implicit
assumption that `excerpts_for_path()` and `excerpts_for_buffer()` return
the same number of values. This PR addresses that by ignoring any
excerpts for the given buffer that have a different path key from the
provided one.
Release Notes:
- Fixed a crash when using the split diff view.
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Co-authored-by: Eric <eric@zed.dev>
Closes #ISSUE
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Ben Kunkle
created
0823cac
multi_buffer: Fix outdated anchors resolving incorrectly in diff hunks in `resolve_summary_for_anchor` (#49719)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/48441
Release Notes:
- Fixed panics with selection handling in expanded diff hunk
Lukas Wirth
created
fd32e31
editor: Add copy button for project diagnostics messages (#49671)
Click to expand commit body
| Before | After |
|---|---|
| <img width="734" height="178" alt="before"
src="https://github.com/user-attachments/assets/1cea5854-e1b5-45a5-92ee-ed66bde06cc6"
/> | <img width="834" height="186" alt="after"
src="https://github.com/user-attachments/assets/bddb9280-89b3-4800-b9c9-08e456bc9ed8"
/> |
Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- Added copy button for project diagnostics messages
---------
Co-authored-by: ozacod <ozacod@users.noreply.github.com>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
ozacod
,
ozacod
, and
Danilo Leal
created
46d11d2
agent: Allow tools to have structured output (#49722)
Click to expand commit body
Previously we only had the ability to return anyhow errors, which
limited the amount of structured data we could send the model.
Now tools can also return structured data in the error cases, which is
super helpful for subagents in particular
Release Notes:
- N/A
Ben Brandt
created
366d5fa
collab_ui: Add a loading state when signing in (#49713)
Click to expand commit body
| Before | After |
| ------------- | ------------- |
| <video
src="https://github.com/user-attachments/assets/ad5892f8-1fb9-4ea4-ba97-e1f2dc778f9e">
| <video
src="https://github.com/user-attachments/assets/f932dfd7-90a7-4536-b42e-f5508412e5d8">
|
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A
https://github.com/user-attachments/assets/8b0be641-625e-410f-b7c1-abe549504c11
Before you mark this PR as ready for review, make sure that you have:
- [X] Added a solid test coverage and/or screenshots from doing manual
testing
- [X] Done a self-review taking into account security and performance
aspects
- [X] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- Added a `zed: record etw profile` action that can be used to collect
performance profiles on Windows.
John Tur
created
f22f4db
agent: Make agent::addSelectionToThread use current line when no selection (#48045)
Click to expand commit body
When there is no selection, make `cmd->` (`agent::addSelectionToThread`)
use the current line containing the cursor instead of doing nothing.
Supports both Zed Agent and Zed Assistant.
Works with multiple-cursors and a mix of selections and cursors.
Authored by Claude Opus 4.5, tested by me.
Release Notes:
- agent: Make `agent::addSelectionToThread` (`cmd->`) use the current
line of the cursor when there is no selection.
---------
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Peter Tripp
and
Bennet Bo Fenner
created
b1366c3
git_ui: Refine display of the "Review Diff" button (#49710)
Click to expand commit body
This PR makes the "Review Diff" button show up only if the multibuffer
_isn't_ empty and if AI is enabled. It was previously just checking for
the AI setting.
Release Notes:
- N/A
Danilo Leal
created
9cefb04
gpui_linux: Fix cargo test on wayland (#49686)
Click to expand commit body
Ensures we can run tests for just `gpui_linux` on Linux/Wayland like so:
```
$ cargo test -p gpui_linux
```
Release Notes:
- N/A
Jakub Konka
created
be6f27c
remote: Fix wsl interop detection failing on some setups (#49708)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/49697
Release Notes:
- Fixed interop detection on WSL not working on newer setups
Lukas Wirth
created
10a7987
agent: Use default tool behavior for subagents (#49706)
Click to expand commit body
Looking at this more, the map of tools is just for what is available and
all of the filtering happens at runtime. So we can just rely on the
current behavior for the list of tools (it was already a matching set)
and we can simplify all of the code paths again where we were adding
this filtered list.
Release Notes:
- N/A
Ben Brandt
created
35f9c64
agent: Change max subagent depth to 1 for now (#49704)
Click to expand commit body
There are some UI concerns, especially for permission requests, that get
extremely complicated for recurisve subagents.
We'll move this to 1 for now to reduce complexity, and revisit once we
have a better way for representing all current permission requests.
Release Notes:
- N/A
Ben Brandt
created
d9ece42
text: Inline `text::Anchor`'s timestamp field, shrinking its size (#49703)
Click to expand commit body
This shrinks the size of `text::Anchor` from 32 bytes to 24 and
`multi_buffer::Anchor` from 72 bytes to 56
Release Notes:
- Improved the memory usage of Zed a bit
Closes #ISSUE
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- N/A
Piotr Osiewicz
created
11bccbc
Fix stale folded buffers in split diff view (#49699)
Click to expand commit body
When a buffer is folded in the split diff view and then removed from the
multibuffer (via `remove_excerpts_for_path`), the block map's
`folded_buffers` set retains a stale entry for that buffer ID. Later,
when the split view syncs folded state from the RHS display map to the
LHS, it tries to look up the companion mapping for this stale buffer and
fails because the companion no longer tracks a buffer that's been
removed from the multibuffer.
This originally caused a panic via `.expect()`. This PR:
1. Converts the panic into graceful handling by skipping unmapped
buffers.
2. Actively removes stale entries from `folded_buffers` so they don't
persist as ghost state — ensuring that if the same buffer is later
re-added, it won't incorrectly appear as folded.
3. Adds a regression test covering the full lifecycle: fold → remove →
split → re-add → assert both LHS and RHS report the buffer as not
folded.
Release Notes:
- Fixed a crash in split diff view when a folded buffer was removed and
re-added.
Antonio Scandurra
created
325e941
anthropic: Support alternative provider SSE formatting (#47847)
Click to expand commit body
The issue I ran into was that responses from anthropic compatible
providers, like Kimi for Coding, have no space after `data:`. This
change just adds a quick check to also allow for those providers to
work.
Before it just resolved but did not show any output:
<img width="50%" alt="CleanShot 2026-01-28 at 12 50 31@2x"
src="https://github.com/user-attachments/assets/c3c8fe27-348e-4b21-a5f1-25bcc82f3774"
width=50%/>
Now it returns the proper result:
<img width="50%" alt="CleanShot 2026-01-28 at 12 56 30@2x"
src="https://github.com/user-attachments/assets/4e524c1e-78ab-4956-bd65-a919d46adc59"
width=50%/>
Normal Anthropic models still work as expected:
<img width="50%" alt="CleanShot 2026-01-28 at 12 58 37@2x"
src="https://github.com/user-attachments/assets/5a2906aa-1183-45b6-939b-01a6830f3385"
/>
Config to test
```json
"language_models": {
"anthropic": {
"api_url": "https://api.kimi.com/coding",
"available_models": [
{
"name": "kimi-for-coding",
"display_name": "Kimi 2.5 Coding",
"max_tokens": 262144,
"max_output_tokens": 32768,
},
],
},
}
```
TLDR:
- Accepts SSE data:{...} lines (no space) emitted by some alternative
Anthropic providers, in addition to the standard data: {...} format.
Release Notes:
- Fixed Anthropic streaming for alternative providers by accepting SSE data:{...} (no space) lines.
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Raphael Lüthy
and
Ben Brandt
created
fb82b11
ep: Fix panic when switching to a non-store provider (#49698)
Click to expand commit body
The `unreachable()` assumption at `queue_prediction_refresh` could be
violated by an async race condition:
1. `request_prediction_internal` spawns an async task
2. The task awaits a prediction request
3. If the prediction returns `None`, it calls `queue_prediction_refresh`
4. Between the time the prediction was initiated (when the provider was
an EP-store provider) and when the async callback runs, the user can
change their edit prediction provider setting to a non-EP-store provider
5. `queue_prediction_refresh` re-reads the settings and hits the
`unreachable!()
Release Notes:
- N/A
Oleksiy Syvokon
created
ae9bb6a
repl: Add WSL and SSH remote kernel support (#47891)
Click to expand commit body
Closes #15196, #46918
- fix: notebook_ui, use buffer so that notebooks open in remote/WSL
settings.
- fix: add musl in nix for cross-compilation, without this remote server
doesn't build inside NixOS
Release Notes:
- Implement WSL and SSH remote kernels (crates/repl/src/kernels/*) and
wire up spawn/kill kernel proto messages and client requests.
MostlyK
created
7e4eb4f
agent_ui: Fix panic in load/copy thread to/from clipboard (#49694)
Closes #15947
This adds `repl:ClearCurrentOutput` and `repl:ClearOutputs` commands. No
keybindings are set for this. Just an action people can bind.
Release Notes:
- Added ability to clear outputs by action
Kyle Kelley
created
19404e4
repl: Support HTML outputs through `html_to_markdown` (#49646)
Click to expand commit body
Closes #15555
Adds a super basic render of html output from jupyter kernels.
<img width="1061" height="1207" alt="image"
src="https://github.com/user-attachments/assets/1bfb8c71-0e38-4bff-9f0c-bec12721232a"
/>
Obviously not as full featured as #48157
Release Notes:
- Added basic handling of HTML in REPL outputs
Kyle Kelley
created
3a00810
editor: Prevent comment extension on REPL separators (#48174)
Release Notes:
- N/A
The WASI-SDK is several hundred megabytes in size; using streaming
downloads is network-friendly and can reduce memory usage.
Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>