40af9dc
open_ai: Fix tool output for /responses endpoint (#51789) (cherry-pick to stable) (#51792)
Click to expand commit body
Cherry-pick of #51789 to stable
----
We were sending the raw tool debug output as JSON to the model rather
than whatever the tool intended as content for the model.
Which meant we were sending unneeded information to the model, which
matters in the edit tool case.
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
a7b9321
editor: Fix panic in `refresh_inline_values` when spanning cross excerpts (#51685) (cherry-pick to stable) (#51687)
Click to expand commit body
Cherry-pick of #51685 to stable
----
Fixes ZED-5VQ
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Lukas Wirth <lukas@zed.dev>
zed-zippy[bot]
and
Lukas Wirth
created
17529df
gpui: Fix hash collision panics in ProfilingCollector (#51683) (cherry-pick to stable) (#51691)
Click to expand commit body
Cherry-pick of #51683 to stable
----
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Lukas Wirth <lukas@zed.dev>
zed-zippy[bot]
and
Lukas Wirth
created
982348a
agent_ui: Disable editing and regeneration for subagent messages (#51654) (cherry-pick to stable) (#51660)
Click to expand commit body
Cherry-pick of #51654 to stable
----
We had inconsistent handling of this read-only behavior. Now subagents
should behave the same as agents that don't support editing
Release Notes:
- agent_ui: Fix inconsistent behavior for subagent views when focusing
on previous messages.
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
4e1b3af
http_client: Fix GitHub downloads failing if the destination path exists (#51548) (cherry-pick to stable) (#51557)
Click to expand commit body
Cherry-pick of #51548 to stable
----
cc
https://github.com/zed-industries/zed/pull/45428#issuecomment-4060334728
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Lukas Wirth <lukas@zed.dev>
bbcfafd
Do not load runnables and diagnostics in git panel (#51270) (cherry-pick to preview) (#51274)
Click to expand commit body
Cherry-pick of #51270 to preview
----
Release Notes:
- N/A
---------
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
zed-zippy[bot]
,
Kirill Bulatov
, and
Jakub Konka
created
3a32fc2
Enable diff stats in the git panel by default (#51215) (cherry-pick to preview) (#51218)
Click to expand commit body
Cherry-pick of #51215 to preview
----
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
- [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:
- Enabled `diff_stats` in the git panel by default.
Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
zed-zippy[bot]
and
Joseph T. Lyons
created
3ac1b1b
zed: Fix file logging being disabled accidentally (#51121) (cherry-pick to preview) (#51162)
Click to expand commit body
Cherry-pick of #51121 to preview
----
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Lukas Wirth <lukas@zed.dev>
zed-zippy[bot]
and
Lukas Wirth
created
f8b8403
agent_servers: Use correct default settings (#51136) (cherry-pick to preview) (#51137)
Click to expand commit body
Cherry-pick of #51136 to preview
----
These are edge cases, but there are a few ways you can get into a state
where you are setting favorites for registry agents and we don't have
the setting yet. This prioritizes `type: registry` for agents that we
have in the registry, especially the previous built-ins.
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
35b388e
agent_ui: Handle legacy agent enum variants during deserialization (#51125) (cherry-pick to preview) (#51126)
Click to expand commit body
Cherry-pick of #51125 to preview
----
Add custom `Deserialize` implementations for `AgentType` and
`ExternalAgent` to map old built-in variant names to current custom
agent names, while still accepting current serialized formats.
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
5a59d48
Fix expand/collapse all button for splittable editor (#50859) (cherry-pick to preview) (#51124)
Click to expand commit body
Cherry-pick of #50859 to preview
----
The "Expand All Files"/"Collapse All Files" button in `BufferSearchBar`
was broken for `SplittableEditor`, which is used in the project diff
view. It was happening because `ProjectDiff::as_searchable` returns an
handle to the `SplittableEditor`, which the search bar implementation
then tries to downcast to an `Editor`, which the `SplittableEditor` did
not support, so both the expand/collapse all buttons, as well as the
collapse state were broken.
Unfortunately this was accidentally introduced in
https://github.com/zed-industries/zed/pull/48773 , so this Pull Request
updates the `Item` implementation for `SplittableEditor` in order for it
to be able to act as an `Editor`.
Release Notes:
- Fix the "Expand All Files"/"Collapse All Files" button in the project
diff view
---------
Co-authored-by: Tom Houlé <tom@tomhoule.com>
Co-authored-by: Dino <dinojoaocosta@gmail.com>
Co-authored-by: Tom Houlé <tom@tomhoule.com>
zed-zippy[bot]
,
Dino
, and
Tom Houlé
created
5c9bc66
Do not derive symbol highlights if they do not fit into multi buffer (#50948) (cherry-pick to preview) (#51116)
zed-zippy[bot]
,
Kirill Bulatov
, and
Conrad Irwin
created
823578b
editor: Fix underflow panic in block map sync when blocks overlap (#51078) (cherry-pick to preview) (#51081)
Click to expand commit body
Cherry-pick of #51078 to preview
----
In `BlockMap::sync`, blocks within an edited region are sorted and
processed sequentially. Each block placement computes
`rows_before_block` by subtracting `new_transforms.summary().input_rows`
from the block's target position. The `Near`/`Below` cases have a guard
that skips the block if the target is already behind the current
progress, but `Above` and `Replace` were missing this guard.
When a `Replace` block (tie_break 0) is processed before an `Above`
block (tie_break 1) at the same or overlapping position, the `Replace`
block consumes multiple input rows, advancing `input_rows` past the
`Above` block's position. The subsequent `position - input_rows`
subtraction underflows on `u32`, producing a huge `RowDelta` that wraps
`wrap_row_end` past `wrap_row_start`, creating an inverted range that
propagates through the display map layers and panics as `begin <= end
(47 <= 0)` in a rope chunk slice.
Add underflow guards to `Above` and `Replace`, matching the existing
pattern in `Near`/`Below`.
Release Notes:
- Fixed a source of underflowing subtractions causing spurious panics
Co-authored-by: Lukas Wirth <lukas@zed.dev>
zed-zippy[bot]
and
Lukas Wirth
created
a794cbc
editor: Prevent panic in `lsp_symbols_at_cursor` with diff hunks handling (#51077) (cherry-pick to preview) (#51079)
Click to expand commit body
Cherry-pick of #51077 to preview
----
Fixes ZED-5M9
No test as I couldn't quite reproduce this, as the cause is mostly a
guess
Release Notes:
- Fixed a panic in `lsp_symbols_at_cursor` when dealing with diff hunks
Co-authored-by: Lukas Wirth <lukas@zed.dev>
zed-zippy[bot]
and
Lukas Wirth
created
b05b6e1
Add more verbosity for panic inside `summaries_for_anchors_with_payloads` (#50940) (cherry-pick to preview) (#50942)
Click to expand commit body
Cherry-pick of #50940 to preview
----
We are seeing the timestamp comparison fail in an unexpected way, e.g.
https://zed-dev.sentry.io/issues/7293482758/events/c7f7eab3f8f2463f879d4889a80d623e,
where it seems like `text::Anchor::is_max` should be returning true but
it apparently isn't. Add some more information when this panic happens
to understand what's going on.
Release Notes:
- N/A
Co-authored-by: Piotr Osiewicz
<24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
zed-zippy[bot]
,
Cole Miller
, and
Piotr Osiewicz
created
cfddb9d
Linux: Handle device lost with wgpu (#50898) (cherry-pick to preview) (#50902)
Click to expand commit body
Cherry-pick of #50898 to preview
----
Release Notes:
- Linux: Handle GPU device loss gracefully
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
zed-zippy[bot]
and
Conrad Irwin
created
01e8444
Add GPT-5.4 and GPT-5.4-pro BYOK models (#50858) (cherry-pick to preview) (#50896)
Click to expand commit body
Cherry-pick of #50858 to preview
----
Add GPT-5.4 and GPT-5.4-pro as Bring Your Own Key model options for the
OpenAI provider.
**GPT-5.4** (`gpt-5.4`):
- 1,050,000 token context window, 128K max output
- Supports chat completions, images, parallel tool calls
- Default reasoning effort: none
**GPT-5.4-pro** (`gpt-5.4-pro`):
- 1,050,000 token context window, 128K max output
- Responses API only (no chat completions)
- Default reasoning effort: medium (supports medium/high/xhigh)
Also fixes context window sizes for GPT-5 mini and GPT-5 nano (272K →
400K) to match current OpenAI docs.
Closes AI-78
Release Notes:
- Added GPT-5.4 and GPT-5.4-pro as available models when using your own
OpenAI API key.
Co-authored-by: Richard Feldman <richard@zed.dev>
zed-zippy[bot]
and
Richard Feldman
created
ff72764
zeta2: Don't remove redundant excerpts on the client (#50886) (#50888)
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
58cf75b
Fix crash in `start_display_link` (#50875) (cherry-pick to preview) (#50878)
Click to expand commit body
Cherry-pick of #50875 to preview
----
Fixes ZED-5G8
If `DisplayLink::new` fails, `frame_requests` is dropped . It is not
valid to destroy a DispatchSource that is not `resume()`d. So, ensure we
call `resume()` before there's a chance for anything to fail.
Release Notes:
- Fixed a crash that could occur on macOS when changing monitor
configurations
Co-authored-by: John Tur <john-tur@outlook.com>
zed-zippy[bot]
and
John Tur
created
4ef3fc3
agent: Gate agent registry refresh behind Disable AI setting (#50868) (cherry-pick to preview) (#50869)
Click to expand commit body
Cherry-pick of #50868 to preview
----
Make sure we don't download this file if disable_ai is enabled
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
150634b
agent_ui: Always show smaller subagent preview (#50864) (cherry-pick to preview) (#50867)
Click to expand commit body
Cherry-pick of #50864 to preview
----
Remove the conditional fullscreen path for subagent tool calls so
expanded content consistently renders as a capped preview with the
overlay and fixed height. Also add a pointer cursor to the maximize
control to clarify clickability.
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
9ba5399
agent_ui: Remove feature upsell banners from agent registry (#50862) (cherry-pick to preview) (#50865)
Click to expand commit body
Cherry-pick of #50862 to preview
----
These aren't built in anymore!
Release Notes:
- N/A
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
zed-zippy[bot]
and
Ben Brandt
created
1704857
Temporarily disable leak detector for v0.227.x (#50718)
Click to expand commit body
See
https://github.com/zed-industries/zed/actions/runs/22676830288/job/65735747311
Release Notes:
- N/A
9b8ad01
ep: Option to configure custom Baseten environment (#50706)
Click to expand commit body
Release Notes:
- N/A
Oleksiy Syvokon
created
a1d4037
cloud_api_client: Send the organization ID in LLM token requests (#50517)
Click to expand commit body
This is already expected on the cloud side. This lets us know under
which organization the user is logged in when requesting an llm_api
token.
Closes CLO-337
Release Notes:
- N/A
Adds a consent banner, similar to the one on zed.dev
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
Gaauwe Rombouts
created
d5137d7
git: Add trusted worktree support to git integrations (#50649)
Click to expand commit body
This PR cleans up the git command spawning by wrapping everything in
GitBinary instead to follow a builder/factory pattern. It also extends
trusted workspace support to git commands.
I also added a `clippy.toml` configuration to our git crate that warns
against using `Command` struct to spawn git commands instead of going
through `GitBinary`. This should help us maintain the factory pattern in
the future
Before you mark this PR as ready for review, make sure that you have:
- [x] Added solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
Release Notes:
- git: Add trusted workspace support for Zed's git integration
Refactor the changes introduced in
https://github.com/zed-industries/zed/pull/50525, in order to remove the
`DisplayMap.clear_folded_buffer` method and update the editor's handling
of `multi_buffer::Event::ExcerptsRemoved` to actually call
`DisplayMap.unfold_buffers`, which correctly updates the `BlockMap`
using its `BlockMapWriter`, ensuring that the block map is synced.
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
Dino
created
932981f
editor: Prevent underlines from appearing in minimap (#48510)
Click to expand commit body
I noticed that the minimap seems to render underlines with the same
thickness as the main editor, which looks a bit off. This becomes much
more noticeable when enabling `semantic_token_rules` (due to the
increased number of underlines):
```json
"global_lsp_settings": {
"semantic_token_rules": [
{
"token_modifiers": ["mutable"],
"underline": true,
},
],
}
```
Looking at the existing code, I found that diagnostic underlines already
check `editor_style.show_underlines` to ensure they are only displayed
in the main editor. To maintain consistency, I applied the same
filtering logic to `chunk_highlight` so that these underlines are no
longer rendered in the minimap.
Before:
<img alt="CleanShot 2026-02-06 at 02 28 31@2x"
src="https://github.com/user-attachments/assets/16401154-23f5-43ef-a7a8-b1035c19e076"
/>
After:
<img alt="CleanShot 2026-02-06 at 02 31 36@2x"
src="https://github.com/user-attachments/assets/979a04be-e585-44be-9c42-4dfab7b89186"
/>
Release Notes:
- N/A *or* Added/Fixed/Improved ...
ᴀᴍᴛᴏᴀᴇʀ
created
90ddd58
agent: Move file_read_times logic to ActionLog instead of Thread (#50688)
Click to expand commit body
Since the read times always correspond to an action log call anyway, we
can let the action log track this internally, and we don't have to
provide a reference to the Thread in as many tools.
Release Notes:
- N/A
---------
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: MrSubidubi <dev@bahn.sh>
Ben Brandt
,
Bennet Bo Fenner
, and
MrSubidubi
created
de10776
Add .cppm (C++20 module interface) to C++ file extensions (#50667)
Click to expand commit body
`.cppm` is the widely used extension for C++20 module interface units,
supported by MSVC, Clang, and GCC. Currently Zed doesn't recognize it as
C++, so users get no syntax highlighting or LSP support.
Changes:
`crates/languages/src/cpp/config.toml`: add cppm to path_suffixes
`crates/theme/src/icon_theme.rs`: add cppm to the C++ icon matcher
https://github.com/search?q=path%3A*.cppm&type=code
Release Notes:
- N/A
moleium
created
007e3ec
docs: Update docs for the subagent tool (#50689)
Click to expand commit body
Adds the actual tool name so people can turn it off if they want.
Release Notes:
- N/A
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: MrSubidubi <dev@bahn.sh>
Ben Brandt
,
Bennet Bo Fenner
, and
MrSubidubi
created
4668dbc
agent: Allow for expanding the subagent thread when permissions are requested (#50684)
Click to expand commit body
Previously, there was no way to view the full thread context
Release Notes:
- N/A
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: MrSubidubi <dev@bahn.sh>
Ben Brandt
,
Bennet Bo Fenner
, and
MrSubidubi
created
f0abcd8
More fixes for OpenGL initialization on Intel HD 4000 (#50680)
Click to expand commit body
Release Notes:
- N/A
John Tur
created
f023109
docs: Fix incorrect IAM terminology under Bedrock section (#50546)
Click to expand commit body
IAM users cannot be assumed; only IAM roles can be.
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
john
created
152d3ea
project_panel: Fix Reveal in File Manager for WSL projects (#50610)
Click to expand commit body
Closes #46767
## Summary
The "Reveal in File Manager" action was shown in the context menu for
WSL projects (guarded by `is_via_wsl_with_host_interop`), but the action
handler in `Render` was only registered when `project.is_local()` —
which returns `false` for WSL. Dispatching the action without a handler
caused a crash.
Adds the same `is_via_wsl_with_host_interop(cx)` check to the handler
registration.
## Testing
- Ran `cargo test -p project_panel` — 78 passed, 0 failed
- Manual testing: connected to WSL Ubuntu, right-clicked a file in the
project panel, used "Reveal in File Manager" — Windows Explorer opened
correctly without crashing
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:
- Fixed a crash when using "Reveal in File Manager" on files in WSL
projects (#46767).
Continues #47114
Release Notes:
- Fixed REPL output width clamping to apply to the content area so
images don’t get clipped by controls
---------
Co-authored-by: MrSubidubi <finn@zed.dev>
Casper van Elteren
and
MrSubidubi
created
e51cd49
doc: Improve documentation for language server `...` expansion (#50672)
Click to expand commit body
Hi! The `...` entry in the `language_servers` setting was only explained
in a single bullet point, which led users to misconfigure their setup,
particularly when overriding defaults that disable certain servers with
`!`.
Add a detailed explanation of how `...` works and a table of examples
using Ruby's real server configuration to illustrate the override
behavior.
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
Vitaly Slobodin
created
cdb34c3
python: Register LSP adapters directly to the LanguageRegistry (#50662)
Click to expand commit body
The purpose of `register_available_lsp_adapter()` is to allow language
servers to be reused across multiple languages. Since adapters like
`ty`, `pylsp`, and `pyright` are specific to Python, there is no need to
register them for other languages. Additionally, registering them
directly to the global `LanguageRegistry` results in negligible resource
consumption.
We can then use the default settings to control the default language
server for Python, as referenced here:
https://github.com/zed-industries/zed/blob/9c9337a8021f74511625517c3f4fa021106609eb/assets/settings/default.json#L2119-L2130
Additionally, the documentation for Python has been updated to clarify
that the `"..."` syntax does not mean "keep the rest at default," but
rather "include all other available servers."
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 (no sure how to add test for this)
- [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 *or* Added/Fixed/Improved ...
Xin Zhao
created
9a6046c
Change miniprofiler file extension to `.miniprof.json` (#50429)
Click to expand commit body
The main intention behind this change is to support uploading these
files
to GitHub. `.miniprof` is not a supported extension by GitHub, but
`.json` is.
The only “downside” to this change is that the cleanup process will have
to look
for `.miniprof` files AND `.miniprof.json` files. Maybe we can remove
that change
at a later date?
Ref:
https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/attaching-files
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:
- Changed miniprofiler file extension to `.miniprof.json`
Kunall Banerjee
created
9c9337a
Add cmd-y binding for agent::Keep in agent diff review (#50656)
Click to expand commit body
Release Notes:
- Added `cmd-y` keybinding for accepting changes in the agent diff
review, matching the git diff review shortcut.