Commit log

9b555c7 clean

Ben Kunkle created

d4e8cf6 Step 2: Split Deployments into Nightly, Preview, and Stable

Ben Kunkle created

e6593f9 generate deploy docs

Ben Kunkle created

50dcb6c PLAN

Ben Kunkle created

a18b772 Add GPT-5.3-Codex BYOK model under the OpenAI provider (#50122)

Click to expand commit body
Adds `gpt-5.3-codex` as a built-in model under the OpenAI provider for
BYOK usage.

Model specs:
- 400,000 context window
- 128,000 max output tokens
- Reasoning token support (default medium effort)
- Uses the Responses API (like other codex models)
- Token counting falls back to the gpt-5 tokenizer

Closes AI-59

Release Notes:

- Added support for GPT-5.3-Codex as a bring-your-own-key model in the
OpenAI provider.

Richard Feldman created

876086e docs: Apply preview release suggestions (#50118)

Click to expand commit body
Documentation updates for Preview release - generated by
docs-suggest-publish

Release Notes:

- N/A

morgankrey created

646ec5e docs: Remove Preview callouts for stable release (#50119)

Click to expand commit body
This PR removes Preview callouts from documentation for features that
are now in Stable.

Features documented with Preview callouts are now included in the stable
release.

Generated by script/docs-strip-preview-callouts

Release Notes:

- N/A

morgankrey created

b4fe63b git_graph: Polish UX (#50123)

Click to expand commit body
This is a follow-up on #50027

I address my comments by adding a hash map look-up to find the selected
pending commit. I also removed the limitation where we would only retry
finding the pending commit 5 times. The pending selection is removed
when the graph is fully loaded and doesn't contain the pending commit.

This PR also cleans up some internal code structure and starts work to
enable search and propagating git log error messages to the UI.

UI wise I made the git graph item show the repository name instead of
"Git Graph" in Zed.

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:

- N/A

---------

Co-authored-by: Remco Smits <djsmits12@gmail.com>

Anthony Eid and Remco Smits created

046b173 agent: Improve SpawnAgentTool instructions for clarity (#50114)

Click to expand commit body
Trying to keep it from reiterating instructions


Release Notes:

- N/A

Ben Brandt created

c9aea6f ep: Stratify by cursor_path by default (#50111)

Click to expand commit body
Also, `ep split train=100` now means 100 lines, not 100 groups (repos or
cursor_paths).


Release Notes:

- N/A

Oleksiy Syvokon created

706faa9 project_panel: Fix selection not updating for already-visible gitignored files (#49521)

Click to expand commit body
## Summary
- Keep auto-reveal behavior for ignored files unchanged (no implicit
reveal).
- When an ignored file is already visible in the project panel, mark it
as selected on `ActiveEntryChanged`.
- Add regression coverage for switching back to a visible gitignored
file.

## Testing
- `project_panel_tests::test_autoreveal_and_gitignored_files`
- `project_panel_tests::test_gitignored_and_always_included`
- `project_panel_tests::test_explicit_reveal`

Closes #49515

Release Notes:

- Fixed project panel not updating selection when switching to a
gitignored file that was already visible.

Efe created

6acc1a3 Remove dead AgentGitWorktreeInfo code (#50101)

Click to expand commit body
This code was part of a series of stacked diff PRs that became obsolete
because we changed the UI design, so none of this code is necessary
anymore.

Release Notes:

- N/A

Richard Feldman created

1b2c1b4 Fix a bug where closing the workspace could skip the dirty check for other workspaces (#50105)

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

bbbe723 git: Add diff stats in git_panel (#49519)

Click to expand commit body
This PR adds the small UI change of `git diff --numstat` to the git
panel so you can see the number of additions/deletions per file. There
is an option in the settings UI for this under `git_panel`.`diff_stats`.
This option is set to `false` by default.

<!-- initial version <img width="1648" height="977" alt="Screenshot
2026-02-18 at 18 42 47"
src="https://github.com/user-attachments/assets/b8b7f07c-9c73-4d06-9734-8f1cf30ce296"
/> -->

<img width="1648" height="977" alt="Screenshot 2026-02-18 at 21 25 02"
src="https://github.com/user-attachments/assets/73257854-6168-4d12-84f8-27c9e0abe89f"
/>


Release Notes:

- Added git diff stats to git panel entries

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Anthony Eid <anthony@zed.dev>

Bob Mannino , Danilo Leal , and Anthony Eid created

f4920f4 Fix Zed panicking on invalid ranges in semantic token deltas (#50106)

Click to expand commit body
Closes ZED-59J

Release Notes:

- Fixed Zed panicking on invalid ranges in semantic token deltas

Kirill Bulatov created

c40cc0c extension_ci: Ensure version bump does not happen too often (#50108)

Click to expand commit body
Sigh....

Release Notes:

- N/A

Finn Evers created

21fdf70 Fix "add custom context server" modal hanging indefinitely (#50085)

Tom Houlé created

f786e04 Notify after populating MCP server IDs (#50089)

Tom Houlé created

c235d53 agent: Support streaming tool input (#50099)

Click to expand commit body
This PR introduces a `ToolInput` struct which allows tools to receive
their inputs incrementally as they stream in. Right now no tool makes
use of the streaming APIs, will be used for the streaming edit file tool
in #50004

Release Notes:

- N/A

Bennet Bo Fenner created

3714f31 extension_ci: Fix condition comparison type (#50100)

Click to expand commit body
No comment.
No string.
And this definitely does not spark joy.

Release Notes:

- N/A

Finn Evers created

533cdb8 gpui(linux): Fix RefCell borrow panic when callbacks register new callbacks (#49533)

Click to expand commit body
## Summary

Fixes RefCell borrow panic on Linux (Wayland and X11) when callbacks try
to register new callbacks.

**Root cause:** Linux GPUI backends invoked callbacks while still
holding a `RefCell` borrow on the `Callbacks` struct. If a callback
tried to register a new
callback (e.g., `on_window_should_close`), it would panic with "already
borrowed: BorrowMutError".

  **Bug pattern:**
  ```rust
// Callback runs while borrow is held - panics if callback borrows
callbacks
  if let Some(ref mut fun) = self.callbacks.borrow_mut().input {
      fun(input);
  }

Fix: Apply the take-call-restore pattern (already used in macOS
backend):
  // Take callback out, release borrow, call, restore
  let callback = self.callbacks.borrow_mut().input.take();
  if let Some(mut fun) = callback {
      let result = fun(input);
      self.callbacks.borrow_mut().input = Some(fun);
  }

  Changes

  - Wayland (window.rs): Fixed 6 callback invocations
  - X11 (window.rs): Fixed 4 callback invocations

  Test plan

  - cargo check -p gpui compiles successfully
  - Tested on Linux (Wayland) - no more RefCell panic

  Release Notes:

- Fixed a crash on Linux when window callbacks attempted to register new
callbacks

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

cardinalpointstudio and Claude Opus 4.5 created

ea09744 zeta2: Try to fix ep disabled in buffer bugs (#50098)

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

ff83f08 python: Fix warning in injections query (#49397)

Click to expand commit body
Release Notes:

- N/A

Finn Evers created

afadd4b agent_server: Remove root_dir from agent server connect APIs (#50093)

Click to expand commit body
This isn't necessary and allows us to potentially share processes across
threads.

Release Notes:

- N/A

Ben Brandt created

8b41a64 Bump Zed to v0.227 (#50095)

Click to expand commit body
Release Notes:

- N/A

Joseph T. Lyons created

ae53f56 Redact environment variables from debugger errors (#50008)

Click to expand commit body
Closes #50007

- Follow-up to: https://github.com/zed-industries/zed/pull/44783

Release Notes:

- Improved redaction of sensitive environment variables from debugger
error logs.

Peter Tripp created

aa3a12b sidebar: Zoom temporarily hides sidebar (#50088)

Click to expand commit body
Using zoom now temporarily hides the sidebar. Unzooming reopens the
sidebar

Release Notes:

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

Cameron Mcloughlin created

54ac532 agent_servers: Use agent display_name for session titles (#50092)

Click to expand commit body
Use a separate `display_name` field (distinct from `server_name`) so
that session titles show a human-readable name. For custom agents this
resolves to the configured display name; for built-ins it falls back to
the server name.

Release Notes:

- N/A

Ben Brandt created

94d66ff project_panel: Add diagnostic count badges (#49802)

Click to expand commit body
Discussed in #6668 specifically this comment from @zackangelo:

> The biggest thing keeping me from using Zed as a daily driver is error
indication in the project panel. When I'm making big project-wide
changes I can't clearly see which files have errors (in editors like
VSCode the filenames turn red).

> VSCode seems to use a letter on the right gutter to indicate git
status and a number next to it to indicate diagnostic status. The color
indicates either.

This PR implements that, I added an opt-in `diagnostic_badges` setting
(default is false) that shows error and warning counts as colored labels
on the right side of each project panel entry. Counts bubble up to
parent directories.

When `diagnostic_badges` is enabled, diagnostic severity takes priority
over git status for entry text color.
Since warnings and git-modified share the same yellow, git status with
this option on is readable through the file icon decoration and the
absence of a number badge on the right.

Example:
<img width="522" height="785" alt="image"
src="https://github.com/user-attachments/assets/2da62580-86fe-480b-9b57-ff137ea42285"
/>


<img width="884" height="580" alt="image"
src="https://github.com/user-attachments/assets/198e9a45-dacd-4f1e-a66c-f2b84fd4db63"
/>

Release Notes:
- Added diagnostic count badges to the project panel, displaying error
and warning counts next to file names. You can modify this setting using
the `diagnostic_badges` option, which is enabled by default.

---------

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

Davide Scaccia and Smit Barmase created

13eb0f6 git_ui: Improve connection between the graph and commit views (#50027)

Click to expand commit body
- Enabled opening the Git Graph, with the corresponding commit detail
drawer open, from the commit view
- Redesigned the commit view's header and toolbar to allow addition of
the Git Graph icon button
- Redesigned icons for the Git Graph and commit view


https://github.com/user-attachments/assets/8efef60a-0893-4752-9b40-838da21ceb54

---

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 (_Git Graph is still feature flagged, so no release notes for
now_)

Danilo Leal created

bc023b3 languages: Improve completion sorting for Python-based LSPs (#47160)

Click to expand commit body
Closes #47086

This PR detects completion items ending with `=` (which typically
represent keyword arguments in function calls provided by
`Pyright`/`BasedPyright`/`pylsp`) and assigns them the highest sorting
priority.

This ensures that when a user is filling out function arguments, the
named parameters appear at the top of the list, rather than being buried
mixed with other symbols.

After fix:
<img width="786" height="460" alt="image"
src="https://github.com/user-attachments/assets/75e94b0f-a2e7-4876-b9bd-02ad98cc8c50"
/>


> **Note on Sorting:** Currently, these named arguments will be sorted
alphabetically by label. Preserving the original order of the function
definition would be ideal, but it requires information not currently
available in this logical block. Insights on how to retrieve the
definition order would be appreciated.

> **Note on other LSPs:** 
> * **`ty`**: Already provides well-sorted completions natively, so no
intervention is required.

Release Notes:

- Improved completion order for Python-based LSPs

Xin Zhao created

6fb5109 agent_ui: Refresh agent registry when reopening page (#50078)

Click to expand commit body
Make sure we get an up-to-date list whenever you actually visit the page

Release Notes:

- N/A

Ben Brandt created

8829947 Add debug panel toggle (#48020)

Click to expand commit body
This adds `debug_panel::Toggle` which is the same as
`terminal_panel::Toggle` but for the debug panel. It also moves
`debug_panel::{Toggle, ToggleFocus}` to its own `pub mod` for
consistency with other keybinds.

[Related
discussion](https://github.com/zed-industries/zed/discussions/47931#discussion-9404091)

Release Notes:

- Added `debug_panel::Toggle` to show/hide debug panel like
`terminal_panel::Toggle`

Samuel Domínguez Lorenzo created

938b8ab languages: Add `.mdc` as a recognized Markdown file suffix (#50074)

Click to expand commit body
Highlight files ending in `.mdc` as Markdown.

The `.mdc` extension is used by Cursor for its Markdown-based rule files
(`.cursor/rules/*.mdc`). These files are standard Markdown with optional
YAML frontmatter, which the existing Markdown grammar already handles
well. Adding `.mdc` to the recognized suffixes ensures proper syntax
highlighting out of the box.

This was requested during review of the agnix extension PR
([zed-industries/extensions#4743](https://github.com/zed-industries/extensions/pull/4743))
by @MrSubidubi as the preferred approach over defining a custom MDC
language in an extension.

Release Notes:

- Added `.mdc` as a recognized Markdown file extension.

Avi Fenesh created

3d5c8a5 thread_view: Add fallback error handling for connect failures (#50063)

Click to expand commit body
Following up from https://github.com/zed-industries/zed/pull/50061: when
connecting to an ACP adapter fails before any thread is active, errors
would not display in the Agent Panel. Falling back to
`handle_load_error` to show the error UI properly as it already handles
this.

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 fallback error handling for connect failures in the Agent Panel

Kunall Banerjee created

ca066cb Replace some hot `TreeMaps` with `Arc<HashMap>` (#49984)

Click to expand commit body
These tend to be very often mutated while we don't really need the
subtree sharing of TreeMaps, so replacing them here is generally
cheaper.

Release Notes:

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

Co-authored by: John Tur <jtur@zed.dev>

Lukas Wirth created

7e3e168 Fix window bounds related bugs from multi-workspace serialization (#50065)

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

21bd74a text: Narrow insertion-relative offsets from `usize` to `u32` (#49801)

Click to expand commit body
Reduces memory usage of `InsertionSlice` from 32 to 24 bytes, `Fragment`
from 120 to 96 bytes by narrowing offsets that are relative to
individual insertion operations from `usize` to `u32`. These offsets are
bounded by the size of a single insertion, not the total buffer size, so
`u32` is sufficient.

To prevent any single insertion from exceeding `u32::MAX` bytes, both
`Buffer::new_normalized` and `apply_local_edit`/`apply_remote_edit` now
split large text insertions into multiple fragments via
`push_fragments_for_insertion`.

Release Notes:

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

Lukas Wirth created

a0d7698 agent: Delay edit tool buffer clearing until the first chunk is sent (#49633)

Click to expand commit body
Release Notes:

- The agent edit tool no longer clears files until the first edit comes
in, preventing a buffer being empty for prolonged time if the agent is
slow in reporting the first text chunk

Lukas Wirth created

40d3aa6 Make Workspace::split infallible (#50060)

Click to expand commit body
Fixes ZED-596

Release Notes:

- Fixed a panic in editor::GoToDefinitionSplit if you managed to close
the current pane before the definitions were resolved

Conrad Irwin created

0103f15 agent_server_store: Broaden Windows asset detection to all architectures (#50061)

Click to expand commit body
Previously only `x86_64` Windows used ZIP archives, but ARM64 Windows
builds also use ZIP format.

Closes #50039.

> [!NOTE]
> The P1 is two-fold: the user cannot download the ZIP file on Windows
ARM. BUT -- the Agent Panel is stalled because of that. This ONLY makes
it so that the ZIP download doesn’t fail, but if for some reason the
download fails, the panel is genuinely stuck with no recovery path.
Every restart attempts the same download, hits the same GZIP error, and
silently drops it again.

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:

- Broaden Windows asset detection to all architectures

Kunall Banerjee created

cb793a4 Fix a panic when git askpass triggers during commit (#50057)

Click to expand commit body
Fixes ZED-597

Release Notes:

- Fixed a panic when the askpass dialogue opened while committing.

Conrad Irwin created

c9dc794 Fix panic in copilot (#50056)

Click to expand commit body
Fixes ZED-599

register_buffer() only sometimes registers the buffer

Release Notes:

- Fixed a panic in Copilot completions

Conrad Irwin created

3275481 Fix race condition in channel notes rejoin (#50034)

Click to expand commit body
Closes #49998

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:

- Fixed a (very rare) crash that could happen due to lost edits in
channel buffers

Conrad Irwin created

bc81ada Fix panic in can_resolve when passed an invalid excerpt ID (#50052)

Click to expand commit body
Fixes ZED-59F

This is follow-up work from #49994; which assumed that can_resolve would
return
false for an invalid excerpt id.

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

0caaecc Fix panic in message editor paste (#50051)

Click to expand commit body
Fixes ZED-4KY

Release Notes:

- Fixed a panic when pasting into the agent UI

Conrad Irwin created

c94a9b7 Edit prediction: prioritize related excerpts that are referenced near the cursor (#50050)

Click to expand commit body
We store the byte distance between the cursor and references to each
definition. When including excerpts in the prompt, we prioritize them in
the order of proximity. I've updated the Edit Prediction Context view to
display the excerpt's `order`, and sorting the files in order of their
excerpt with the lowest order.

Release Notes:

- N/A

Max Brunsfeld created

23f7bde git: Simplify excerpt syncing code for `SplittableEditor` (#49943)

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

Cole Miller created

6111af7 Use a separate feature flag for EP jumps than for zeta2 (#50041)

Click to expand commit body
This allows us to enable zeta2 for certain end users without opting them
into the still-in-development jumps feature.

Release Notes:

- N/A

Max Brunsfeld created

c3efb13 agent_ui: Add some UI adjustments to subagents (#50032)

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

- Adding the gradient overlay in all states within the preview slot
- Remove label from the "Full Screen" button to make it simpler and more
minimal

<img width="400" height="1182" alt="Screenshot 2026-02-24 at 7  59@2x"
src="https://github.com/user-attachments/assets/3c30e2b2-a572-4438-8cd3-4879bf54fea0"
/>

Release Notes:

- N/A

Danilo Leal created