5a40e68
editor: Fix a bunch of inlay hint bugs (#50377)
Click to expand commit body
Release Notes:
- Fixed multiple language servers applying to the same buffer
overwriting each others inlay hints
- Fixed multiple language servers applying to the same multibuffer
discarding each others inlay hints
- Fixed a bug that caused some inlay hints to sometimes duplicate
Fixes ZED-59P
Release Notes:
- Linux: Fix panic when requested window size was larger than supported
by your GPU
Conrad Irwin
created
69d6bfd
Avoid panicking in wgpu rendering during resize (#50169)
Click to expand commit body
Fixes Zed-5AW
Fixes Zed-5AP
Claude believes this is the right fix, but would love someone who knows
more about graphics than me to take a look: @reflectronic / @zortax?
The panic is:
```
wgpu error: Validation Error
Caused by:
In Texture::create_view
Texture with 'path_intermediate' label is invalid
gpui::platform::wgpu::wgpu_renderer::WgpuRenderer::create_path_intermediate (wgpu_renderer.rs:742)
gpui::platform::wgpu::wgpu_renderer::WgpuRenderer::update_drawable_size (wgpu_renderer.rs:784)
gpui::platform::linux::x11::window::X11WindowStatePtr::set_bounds (window.rs:1169)
gpui::platform::linux::x11::client::X11Client::handle_event (client.rs:902)
```
or:
```
wgpu error: Validation Error
Caused by:
In Texture::create_view
Texture with 'path_intermediate' label is invalid
gpui::platform::wgpu::wgpu_renderer::WgpuRenderer::create_path_intermediate (wgpu_renderer.rs:742)
gpui::platform::wgpu::wgpu_renderer::WgpuRenderer::new (wgpu_renderer.rs:274)
gpui::platform::linux::x11::window::X11WindowState::new::{{closure}} (window.rs:698)
gpui::platform::linux::x11::window::X11WindowState::new (window.rs:488)
gpui::platform::linux::x11::window::X11Window::new (window.rs:814)
gpui::platform::linux::x11::client::X11Client::open_window (client.rs:1514)
gpui::platform::linux::platform::<T>::open_window (platform.rs:289)
gpui::window::Window::new (window.rs:1119)
gpui::app::App::open_window::{{closure}} (app.rs:1025)
gpui::app::App::update (app.rs:835)
gpui::app::App::open_window (app.rs:1022)
```
I haven't seen a Wayland equivalent (not sure if that's because it
doesn't happen on Wayalnd or because I havent' seen it yet)
Release Notes:
- Linux: Fixed a panic in the new WPGU renderer during resize
Conrad Irwin
created
47c5a31
Dynamically detect surface size limits on WGPU (#50340)
required after livekit bump
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
Conrad Irwin
created
30ceb91
Reduce wgpu memory usage during resize (#50030)
Click to expand commit body
Closes #49435
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:
- Linux: Reduced GPU memory usage during resize
112b90c
agent_servers: Use more stable hasher for binary artifact downloads (#50315)
Click to expand commit body
Since there aren't as many guarantees on the default hasher, uses sha256
like our other github downloaders.
Release Notes:
- N/A
Ben Brandt
created
e762bb9
Remove unwrap() from `lsp::Uri::from_file_path` (#50244)
Click to expand commit body
Fixes ZED-3BM
Fixes ZED-1RT
Release Notes:
- Windows: Fixed a panic registering a path with language servers when
the UNC path cannot be represented by a Rust URI.
---------
Co-authored-by: MrSubidubi <finn@zed.dev>
Conrad Irwin
and
MrSubidubi
created
cabf189
agent: Render subagent labels as they stream in (#50306)
Click to expand commit body
Release Notes:
- N/A
Ben Brandt
created
6796539
agent: Allow jumping from diff to actual file (#50292)
Click to expand commit body
If you place your cursor inside an agent diff you can now jump to the
corresponding file by running `editor: Open excerpts`/`editor: Open
excerpts split`.
https://github.com/user-attachments/assets/cf3dba4e-68b7-4643-b9a9-844c2df58295
Release Notes:
- agent: Allow jumping to a file from a diff inside the agent
conversation with option-enter (`editor: Open excerpts`)
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Bennet Bo Fenner
and
Danilo Leal
created
9c76869
ci: Add check for formatting of query files (#50140)
Click to expand commit body
Follow-up to https://github.com/zed-industries/zed/pull/50138
I deliberately decided against adding this in a separete job because
ts_query_ls is very fast when it comes to both formatting these as well
as checking for proper formatting. Will see here how long it takes to
install and whether we might need to adjust to account for the
installation time.
Release Notes:
- N/A
Finn Evers
created
d15263e
gpui: Gate Linux screen capture APIs behind feature flag (#50300)
Click to expand commit body
We were missing the cfg statements in the `LinuxClient` trait definition
Release Notes:
- N/A
This reverts commit aa3a12b566, because we no longer want a zoomed item
to block the sidebar.
This is because the sidebar is used for navigation and it interrupts a
user's flow if they're scrolling through their active workspaces, and
the sidebar just vanishes.
### Before
<img width="3248" height="2122" alt="image"
src="https://github.com/user-attachments/assets/c1c94b2c-fbbc-41a4-8eb9-47160ecba994"
/>
### After
<img width="1624" height="1061" alt="Screenshot 2026-02-27 at 2 10
24 PM"
src="https://github.com/user-attachments/assets/91d70281-f8ed-4da5-8e50-056370eb2fee"
/>
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:
- N/A
Anthony Eid
created
d9ee18a
docs: Add footer with links to pages (#50296)
Click to expand commit body
This PR includes a little footer with handy links in all docs pages:
<img width="500" height="532" alt="Screenshot 2026-02-27 at 10 03@2x"
src="https://github.com/user-attachments/assets/f1beb998-ae73-41d1-8fe1-734def58b0c5"
/>
Release Notes:
- N/A
Danilo Leal
created
88df73c
Add PR 50138 to `.git-blame-ignore-revs` (#50293)
Click to expand commit body
This PR adds https://github.com/zed-industries/zed/pull/50138 to the
`.git-blame-ignore-revs` file.
Release Notes:
- N/A
Finn Evers
created
5ed538f
Format Tree-sitter queries with `ts_query_ls` (#50138)
Fixes a few things:
- Don't filter out any agents from the registry
- Sort the agents case-insensitively
- Allow removing custom agents from the settings page as well
Release Notes:
- N/A
Ben Brandt
created
a759000
ep: Heuristic to apply patches to files without trailing newline (#50291)
Click to expand commit body
This is a workaround for the fact that ep patches don't have the '\No
newline at end of file` marker.
Release Notes:
- N/A
Oleksiy Syvokon
created
c9425f2
agent: Stream `new_text` in `StreamingEditFileTool` (#50240)
Click to expand commit body
We now stream the new text into the buffer as soon as we receive partial
chunks of `new_text`. This is pretty much a full re-write of the way
streaming worked, which is now much closer to how the edit agent works:
- `ToolEditParser` buffers chunks as they stream in, and emits relevant
events (`OldTextChunk`,`NewTextChunk`, ...) that we use to power the
`EditSession` pipeline.
- `EditSession::process_events` takes care of consuming these events and
applying the edits incrementally as chunks stream in. `EditPipeline`
maintains the underlying state machine for each edit.
- We handle whitespace mismatches similar to the edit agent, the code is
shared by moving that logic to `reindent.rs`
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:
- N/A
Bennet Bo Fenner
created
78878e5
Decrease review needs of the duplicate bot (#50289)
Click to expand commit body
Turns out you can't query the duplicate issue for the id of the
original/canonical issue, even though GitHub UI displays “Closed as
duplicate of <original issue id>”. Oh well. For the bot performance
tracking all that matters is whether any of its suggestions were the
actual originals, so we're working around the API limitation by querying
the suggested issues instead.
Release Notes:
- N/A
Lena
created
511be9a
Fix version reporting for duplicates bot (#50286)
Click to expand commit body
Obviously™, we add the bot-commented issues onto the tracking board at
the time of the issues getting closed, which is very much not the same
time as when the bot commented. We could very well be adding the issue
with a v1 bot comment to the board when v2 is already deployed. This
commit stops messing up those stats.
Release Notes:
- N/A
Lena
created
96abd03
Fix Cmd+click navigating to file instead of definition (#49012)
Click to expand commit body
## Summary
- Tighten `link_pattern_file_candidates` regex from `\(([^)]*)\)` to
`]\(([^)]*)\)` so only Markdown link syntax `[title](path)` triggers
path extraction from parentheses
- Prevents function call arguments like `do_work(file2)` from being
incorrectly resolved as file paths, which preempted LSP go-to-definition
Closes #48938
## Test plan
- [x] `cargo test -p editor hover_links` — all 12 tests pass
- [x] New unit tests verify: function calls don't extract arguments as
file candidates; Markdown links still extract correctly
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Release Notes:
- Fixed Cmd+click navigating to file instead of definition in certain
cases
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Wuji Chen
and
Claude Opus 4.6
created
0fad478
markdown_preview: Fix mermaid diagrams failing to render with empty subgraphs (#50280)
Click to expand commit body
Upgrade mermaid-rs-renderer to 9d8360d9cea10dc4bc86d7b8012cc6e9656e6cf2
Release Notes:
- N/A
Smit Barmase
created
365e415
agent_ui: Add more improvements to the subagent UI (#50260)
Click to expand commit body
This PR includes the following adjustments:
- Add divider in the full screen view to expose what part of a
subagent's output is actually sent to the parent model
- Auto-expand the subagent card if there's only one running on a turn
- Adjust errors display within the subagent card
Release Notes:
- N/A
Danilo Leal
created
7f09bff
gpui: Reduce amount of wasm cfgs in gpui (#50278)
Plus some minor cleanup.
Release Notes:
- Fixed GPU acceleration not working on certain Linux devices.
John Tur
created
a217578
docs: Point to the right Bash extension repository (#50271)
Click to expand commit body
Closes #50261.
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
- [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:
- N/A
Kunall Banerjee
created
1c39e19
languages: Reorder type identifier highlights in JavaScript (#49325)
Click to expand commit body
Move general type identifier rules before class-specific ones to ensure
proper precedence in the syntax highlighting query.
Closes #49226.
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
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
Release Notes:
- Fixed an issue where class names were not highlighted correctly in
JavaScript files
Kunall Banerjee
created
9ff0b02
Include optional model version with EP acceptance and rejection messages (#50262)
Click to expand commit body
Release Notes:
- N/A
Max Brunsfeld
created
d4e89f9
Add edit prediction evals that test related excerpt usage (#50256)
Click to expand commit body
I've also fixed a race condition with the programmatic context retrieval
in the CLI, which was causing no excerpts to be fetched for the Rust
examples.
Release Notes:
- N/A
This reverts commit 69e5ff7c76faa888ac71ff1d83cd335fb183b065.
Release Notes:
- N/A
Kirill Bulatov
created
0859cce
Add Vercel AI gateway provider integration (#50207)
Click to expand commit body
## Summary
- add a new `ai_gateway` language model provider in zed using the
openai-compatible chat completions path
- register ai gateway in provider wiring, settings schema, and default
settings
- add vercel ai gateway icon and provider list entry
- parse ai gateway model capabilities from tags (`tool-use`, `vision`)
and supported parameters
- clean up ai gateway oidc auth failures into a concise actionable error
message
Release Notes:
- Added Vercel AI Gateway as a new LLM provider in Zed.
dancer
created
f1c5ed3
Add folder_paths for project grouping (#50249)
Click to expand commit body
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:
- N/A
Mikayla Maki
created
cbbcb1e
acp: Fix stale ACP reasoning-effort options when model switch keeps same config IDs (#50246)
Click to expand commit body
## Problem
Zed's ACP config-options UI was only rebuilding selectors when the set
of config option IDs changed.
For many model switches, the IDs stay the same (`mode`, `model`,
`reasoning_effort`) while the valid values for `reasoning_effort` change
by model. As a result, the picker could show stale values (for example,
missing `xhigh` on `gpt-5.3-codex`, or showing extra `xhigh` after
switching away).
This is especially problematic for providers like Copilot that expose
multiple agents/models with different reasoning-level capabilities.
## Fix
Rebuild ACP config-option selectors on every `config_option_update`, not
only when config IDs change.
This refreshes cached picker entries whenever model-specific option
values change, even if option IDs are unchanged.
## User Impact
- Reasoning-effort picker now reflects the selected model immediately on
Claude <-> GPT transitions.
- Prevents stale or invalid effort choices in ACP sessions.
## Validation
- Manual validation: switch across models with different
reasoning-effort sets and confirm picker updates immediately.
- Local `cargo check -p agent_ui` remains blocked by unrelated
pre-existing `livekit-protocol` compile errors in this checkout.
## Files Changed
- `crates/agent_ui/src/acp/config_options.rs`
Release Notes:
- acp: Fix for config selectors not always being refreshed
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Nikhil Pandey
and
Ben Brandt
created
da2bed1
agent: Rename run_turn to send in subagent handle (#50242)
Click to expand commit body
Align better with naming in thread. I grabbed the wrong function name :D
Release Notes:
- N/A
Ben Brandt
created
6a74938
Add fast mode toggle in agent panel (#49714)
Click to expand commit body
This is a staff only toggle for now, since the consequences of
activating it are not obvious and quite dire (tokens costs 6 times
more).
Also, persist thinking, thinking effort and fast mode in DbThread so the
thinking mode toggle and thinking effort are persisted.
Release Notes:
- Agent: The thinking mode toggle and thinking effort are now persisted
when selecting a thread from history.
From the looks of it, this setting was never used by the File Finder. It
also doesn’t make much sense to show git info in the File Finder. The
Project Panel already exposes this information to the user.
Closes #49709.
| Before | After |
|--------|--------|
| <img width="1012" height="769" alt="image"
src="https://github.com/user-attachments/assets/9666ace7-38cb-4789-8681-80c15b8ac3fd"
/> | <img width="1012" height="769" alt="image"
src="https://github.com/user-attachments/assets/5e0505d7-3ede-46fa-bb33-a44865a9f64b"
/> |
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:
- Removed unused `file_finder.git_status` setting
Implements a basic web platform for the wasm32-unknown-unknown target
for gpui
Release Notes:
- N/A *or* Added/Fixed/Improved ...
---------
Co-authored-by: John Tur <john-tur@outlook.com>
Lukas Wirth
and
John Tur
created
e832531
languages: Add `.prettierrc` to JSON `path_suffixes` (#50156)
Click to expand commit body
`.prettierrc` can be [written](https://prettier.io/docs/configuration)
in either JSON or YAML. Whether you write JSON or YAML, VS Code will
default to recognizing it as JSON. See screenshot.
Without this change, the user is forced to do:
```jsonc
"file_types": {
"JSON": [".prettierrc"],
},
```
Small QoL improvement.
| VS Code | Zed (after the changes) |
|--------|--------|
| <img width="1732" height="1125" alt="image"
src="https://github.com/user-attachments/assets/1f9533fc-a77a-40f3-b8a5-6c36faeccffd"
/> | <img width="1732" height="1125" alt="image"
src="https://github.com/user-attachments/assets/bef8ca94-006c-44bd-ac1c-59f915b67123"
/> |
Closes #50072.
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 `.prettierrc` to JSON `path_suffixes`