92dc812
git_ui: Fix commit/amend telemetry and amend click from commit modal (#28795)
Click to expand commit body
Release Notes:
- N/A
Smit Barmase
created
c7e80c8
gemini: Pass system prompt as system instructions (#28793)
Click to expand commit body
https://ai.google.dev/gemini-api/docs/text-generation#system-instructions
Release Notes:
- agent: Improve performance of Gemini models
Bennet Bo Fenner
created
c381a50
agent: Show a warning when some tools are incompatible with the selected model (#28755)
Click to expand commit body
WIP
<img width="644" alt="image"
src="https://github.com/user-attachments/assets/b24e1a57-f82e-457c-b788-1b314ade7c84"
/>
<img width="644" alt="image"
src="https://github.com/user-attachments/assets/b158953c-2015-4cc8-b8ed-35c6fcbe162d"
/>
Release Notes:
- agent: Improve compatibility with Gemini Tool Calling APIs. When a
tool is incompatible with the Gemini APIs a warning indicator will be
displayed. Incompatible tools will be automatically excluded from the
conversation
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Bennet Bo Fenner
and
Danilo Leal
created
ff4334e
eval: Fix stalling on tool confirmation (#28786)
Click to expand commit body
The `always_allow_tool_actions` setting would get overridden with the
default when we loaded each example project, leading to examples
stalling when they run a tool that needed confirmation. There's now a
separate `runner_settings.json` file where we can configure the
environment for the eval.
Release Notes:
- N/A
---------
Co-authored-by: Oleksiy <oleksiy@zed.dev>
Agus Zubiaga
and
Oleksiy
created
b1e4e60
agent: Add more Rust code examples, update TODO check (#28737)
Click to expand commit body
Release Notes:
- N/A
Thomas Mickley-Doyle
created
d0f8064
gpui: Fix `snap_to_window_with_margin` when window has client inset (#27330)
Click to expand commit body
Release Notes:
- Fixed popup menu snap to window to leave margin on Linux.
This change to continue #17159 to fix same thing on Linux.
| Before | After |
| -- | -- |
| 
|

|
Jason Lee
created
b6cce1e
collab: Add support for launching a general-purpose billing portal session (#28785)
Click to expand commit body
This PR adds a new `ManageSubscriptionIntent` that allows uses to launch
a general-purpose billing portal session to manage their subscription.
Release Notes:
- N/A
Marshall Bowers
created
05fc9ee
call: Fix crash when screensharing on MacOS (#28784)
Click to expand commit body
Closes #ISSUE
Release Notes:
- Fixed a crash when screensharing on MacOS
Co-authored-by: Conrad <conrad@zed.dev>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Piotr Osiewicz
,
Conrad
, and
Anthony Eid
created
8f52bb9
agent: Add ability to interrupt current generation with a new message (#28762)
Click to expand commit body
If you wanted to interrupt the current LLM response that's generating to
send a follow up message, you'd need to stop it first, type your new
message, and then send it. Now, you can just type your new message while
there's a response generating and send it. This will interrupt the
previous response generation and kick off a new one.
Release Notes:
- agent: Allow to send a new message while a response is generating,
interrupting the LLM to focus instead on the most recent prompt.
Danilo Leal
created
144fd0b
Fix the git panel's commit button sometimes opening the modal (#28767)
Click to expand commit body
Release Notes:
- N/A
Cole Miller
created
cd4a3fd
debugger: Skip out-of-bounds breakpoints when deserializing (#28781)
Click to expand commit body
Previously we'd crash when deserializing a breakpoint whose row number
was out of bounds (could happen if the file was externally modified).
This PR fixes that code to skip such breakpoints.
An alternative would be to clip the deserialized `PointUtf16`, but I
think that would mostly result in nonsensical breakpoints.
Release Notes:
- N/A
Cole Miller
created
42c3f4e
debugger_ui: Preview thread state when using the dropdown (#28778)
Click to expand commit body
This PR changes the thread list dropdown menu in the debugger UI to
eagerly preview the state of a thread when selecting it, instead of
waiting until confirming the selection.
Release Notes:
- N/A
Cole Miller
created
90dec1d
collab: Add Zed Pro checkout flow (#28776)
Click to expand commit body
This PR adds support for initiating a checkout flow for Zed Pro.
Release Notes:
- N/A
Release Notes:
- "Block" diagnostics (that show up in the diagnostics view, or when
using `f8`/`shift-f8`) are rendered more clearly
- `f8`/`shift-f8` now always go to the "next" or "prev" diagnostic,
regardless of the state of the editor

---------
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
Conrad Irwin
,
Kirill Bulatov
, and
Julia Ryan
created
To make DAP work over SSH we want to create the binary
at the project level (so we can wrap it in an `ssh` invocation
transparently).
This means not pushing the adapter down into the session, and resolving
more information ahead-of-time.
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Piotr <piotr@zed.dev>
Release Notes:
- N/A
---------
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Piotr <piotr@zed.dev>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Anthony <anthony@zed.dev>
Conrad Irwin
,
Anthony Eid
,
Piotr
,
Piotr Osiewicz
, and
Anthony
created
6f0951f
debugger_ui: Move `DEBUGGER_PANEL_PREFIX` out of `db` (#28768)
Click to expand commit body
This PR moves the `DEBUGGER_PANEL_PREFIX` constant out of the `db` crate
and into `debugger_ui`, since it is specific to that.
Release Notes:
- N/A
Marshall Bowers
created
5e09455
agent: Return `ToolResult` from `run` inside `Tool` (#28763)
Click to expand commit body
This is just a refactor which adds no functionality.
We now return a `ToolResult` from `Tool > run(...)`. For now this just
wraps the output task in a struct. We'll use this to implement custom
rendering of tools, see #28621.
Release Notes:
- N/A
Bennet Bo Fenner
created
32829d9
Use proper codenames for macOS versions (#28766)
Adjust the heading sizes for the Agent Panel so they're not aggressively
huge.
Release Notes:
- N/A
Danilo Leal
created
e26f0a3
agent: Make `ToolWorkingSet` an `Entity` (#28757)
Click to expand commit body
Motivation is to emit events when enabled tools change, want to use this
in #28755
Release Notes:
- N/A
Bennet Bo Fenner
created
7e1b419
markdown: Add ability to customize individual heading level (#28733)
Click to expand commit body
This PR adds a new field in the `MarkdownStyle` struct,
`heading_level_styles`, allowing, via the newly added function
`apply_heading_style` and struct `HeadingLevelStyles` to customize each
individual heading level in Markdown rendering/styling function.
Things like this should now be possible:
```rust
MarkdownStyle {
heading_level_styles: Some(HeadingLevelStyles {
h1: Some(TextStyleRefinement {
font_size: Some(rems(1.15).into()),
..Default::default()
}),
}),
..Default::default()
}
```
Release Notes:
- N/A
Danilo Leal
created
98d001b
debugger: Always show process list in attach (#28685)
Click to expand commit body
Closes #ISSUE
Release Notes:
- N/A
Piotr Osiewicz
created
d4a985a
Case Insensitive Unicode Text Search: Fallback To Regex (#28752)
Click to expand commit body
Closes #9980
Release Notes:
- Fixed: case insensitive text search with unicode characters
François Mockers
created
616d17f
git_ui: Force commit modal mode from command palette (#28745)
Click to expand commit body
Depending on `git::commit` or `git::amend` action triggered, commit
modal opens up in appropriate mode, handling edge cases like if you are
already in amend mode, etc.
Release Notes:
- N/A
Smit Barmase
created
e1c4231
gemini: Fix "invalid argument" error when request contains no tools (#28747)
Click to expand commit body
When we do not have any tools, we want to set the `tools` field to
`None`
Release Notes:
- Fixed an issue where Gemini requests would sometimes return a Bad
Request ("Invalid argument...")
Bennet Bo Fenner
created
cfc848d
git_ui: Fix commit modal dismiss on commit menu click (#28744)
Click to expand commit body
Release Notes:
- N/A
Smit Barmase
created
d4761ce
debugger: Remember pane layout from previous debugger session (#28692)
Click to expand commit body
This PR makes a debugger's pane layout persistent across session's that
use the same debug adapter.
Release Notes:
- N/A
---------
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Cole Miller <m@cole-miller.net>
Anthony Eid
,
Piotr Osiewicz
, and
Cole Miller
created
This is a combination of the "read file" and "list directory contents"
tools as part of a push to reduce our quantity of builtin tools by
combining some of them.
The functionality is all there for this tool, although there's room for
improvement on the visuals side: it currently always shows the same icon
and always says "Read" - so you can't tell at a glance when it's reading
a directory vs an individual file. Changing this will require a change
to the `Tool` trait, which can be in a separate PR. (FYI @danilo-leal!)
<img width="606" alt="Screenshot 2025-04-14 at 11 56 27 PM"
src="https://github.com/user-attachments/assets/bded72af-6476-4469-97c6-2f344629b0e4"
/>
Release Notes:
- Added `contents` tool
This PR removes the LLM service from collab, as it has been moved to
Cloudflare.
Release Notes:
- N/A
Marshall Bowers
created
12b012e
language: Further optimize `language_for_file` (#28694)
Click to expand commit body
Follow-up to #28671
This primarily follows two ideas:
1. We currently take the element with the highest score which appears
last in the iterator (see
[`last_by_key`](https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.max_by_key)),
so we can also just reverse the iterator and take the first highest
match instead.
2. Once we have a match with a given precedence, we are not interested
in any matches with a lower or even the same priority, given what was
established in 1. Thus, we also only have to check whether any language
checked afterwards has a higher priority match.
Furthermore, once we have a match with the highest possible precedence,
there is no need to look for any more possible matches. Thus, this PR
also adds short-circuiting for that scenario.
Lastly, I also cleaned-up the custom suffix match (an empty glob-set
will never match so no need to iterate there) as well reorder the
zip-call in the content matches, as we never need the content if there
is no first line pattern present for the checked languages.
Release Notes:
- N/A
Version was bumped to `v0.183.0` last Wednesday here:
https://github.com/zed-industries/zed/pull/28419
But was accidentally downgraded here:
https://github.com/zed-industries/zed/pull/27964
Release Notes:
- N/A
Joseph T. Lyons
created
6b80eb5
Add judge to new eval + provide LSP diagnostics (#28713)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
Co-authored-by: agus <agus@zed.dev>
Michael Sloan
,
Antonio Scandurra
, and
agus
created
2603f36
agent: Improve compatibility when using MCP servers with Gemini models (#28700)
Click to expand commit body
WIP
Release Notes:
- agent: Improve compatibility when using MCPs with Gemini models
Bennet Bo Fenner
created
6c93d10
zlog: Ansi styling of zlog output to stdout (#28711)
Click to expand commit body
Co-Authored-By: Zed AI <ai@zed.dev>
Closes #ISSUE
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Zed AI <ai@zed.dev>
Ben Kunkle
and
Zed AI
created
5b6efa4
copilot_chat: Add Gemini 2.5 Pro support to Copilot Chat (#28660)
Richard Hao
created
84aa480
Add support for OpenAI GPT-4.1 models (#28708)
Click to expand commit body
Release Notes:
- Add support for OpenAI GPT-4.1 via Copilot Chat and OpenAI API
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Umesh Yadav
,
Danilo Leal
, and
Bennet Bo Fenner
created
6db29eb
Remove debug assertions in git_store.rs (#28706)
Click to expand commit body
Closes #ISSUE
Release Notes:
- N/A
Cole Miller
created
ff41be3
Fix bugs with multicursor completions (#28586)
Click to expand commit body
Release Notes:
- Fixed completions with multiple cursors leaving duplicated prefixes.
- Fixed crash when accepting a completion in a multibuffer with multiple
cursors.
- Vim: improved `single-repeat` after accepting a completion, now
pressing `.` to replay the completion will re-insert the completion text
at the cursor position.
This is because
[issues/new](https://github.com/zed-industries/zed/issues/new) now
redirects to
[issues/new/choose](https://github.com/zed-industries/zed/issues/new/choose)
(good!) so you can no longer create issues skipping templates.
Release Notes:
- N/A