Commit log

05afe95 agent: Fix bug in creating empty files (#31626)

Click to expand commit body
Release Notes:

- NA

Oleksiy Syvokon created

a5a1164 agent: Rejecting agent changes shouldn't discard user edits (#31617)

Click to expand commit body
The fix prevents data loss, but it also results in a somewhat confusing
UX. Specifically, after the user has made changes to an AI-created file,
selecting "Reject" will leave AI changes in place.

This is because there's no trivial way to disentangle user edits from
the edits made by the AI.

A better solution might exist. In the meantime, this change should do.
    
Closes
* #30527 

Release Notes:

- Prevent data loss when reverting changes in an agent-created file

Oleksiy Syvokon created

361ceee collab: Introduce `StripeClient` trait to abstract over Stripe interactions (#31615)

Click to expand commit body
This PR introduces a new `StripeClient` trait to abstract over
interacting with the Stripe API.

This will allow us to more easily test our billing code.

This initial cut is small and focuses just on making
`StripeBilling::find_or_create_customer_by_email` testable. I'll follow
up with using the `StripeClient` in more places.

Release Notes:

- N/A

Marshall Bowers created

68724ea agent: Make clicking on the backdrop to dismiss message editing more reliable (#31614)

Click to expand commit body
Previously, the click on the backdrop to dismiss the message editing was
unreliable. You would click on it and sometimes it would work and others
it wouldn't. This PR fixes that now.

Release Notes:

- agent: Fixes the previous message dismissal by clicking on the
backdrop

Danilo Leal created

e12106e agent: Move focus to the panel after dismissing a user message edit (#31611)

Click to expand commit body
Previously, when you clicked on a previous message to edit it and then
dismissed it, your focus would jump to the buffer. This caught me
several times as the most obvious place to return to for me was the
agent panel main message editor, so I can continue prompting something
else. And this is what this PR changes.

Release Notes:

- agent: Improved previous message editing UX by returning focus to the
main panel's text area after dismissing it.

Danilo Leal created

77aa667 docs: Update LM Studio docs to show tool use is supported (#31610)

Click to expand commit body
As the lmstudio tool call support was added recently:
https://github.com/zed-industries/zed/pull/30589. This updates the doc
to reflect it.

Release Notes:

- N/A

Umesh Yadav created

8b47b40 Improve AI GitHub Issue template (#31598)

Click to expand commit body
Release Notes:

- N/A

Peter Tripp created

01990c8 Bump Tree-sitter to 0.25.5 for YAML-editing crash fix (#31603)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/31380

See https://github.com/tree-sitter/tree-sitter/pull/4472 for the fix

Release Notes:

- Fixed a crash that could occur when editing YAML files.

Max Brunsfeld created

4e7dc37 language_models: Remove handling of WrappedTextContent in tool result content (#31605)

Click to expand commit body
Fixes ci pipeline

Release Notes:

- N/A

Umesh Yadav created

00fd045 Make language model deserialization more resilient (#31311)

Click to expand commit body
This expands our deserialization of JSON from models to be more tolerant
of different variations that the model may send, including
capitalization, wrapping things in objects vs. being plain strings, etc.

Also when deserialization fails, it reports the entire error in the JSON
so we can see what failed to deserialize. (Previously these errors were
very unhelpful at diagnosing the problem.)

Finally, also removes the `WrappedText` variant since the custom
deserializer just turns that style of JSON into a normal `Text` variant.

Release Notes:

- N/A

Richard Feldman created

7443fde Show version info when downloading and installing updates (#31568)

Click to expand commit body
Follow up to #31179 

In addition to seeing the version when in the `Click to restart and
update Zed` status, this PR allows us to see the version when in
`Downloading Zed update…` or `Installing Zed update…` status, in a
tooltip, when hovering on the activity indicator.

Will merge after tomorrow's release.

Release Notes:

- Added version information, in a tooltip, when hovering on the activity
indicator for both the download and install status.

Joseph T. Lyons created

d5ab42a Clean up some auto updater code (#31543)

Click to expand commit body
This PR simply does a tiny bit of cleanup on some code, where I wasn't
quite happy with the naming and ordering of parameters of the now
`check_if_fetched_version_is_newer` function. There should be no
functional changes here, but I will wait until after tomorrow's release
to merge.

Release Notes:

- N/A

Joseph T. Lyons created

07403f0 Improve LSP tasks ergonomics (#31551)

Click to expand commit body
* stopped fetching LSP tasks for too long (but still use the hardcoded
value for the time being — the LSP tasks settings part is a simple bool
key and it's not very simple to fit in another value there)

* introduced `prefer_lsp` language task settings value, to control
whether in the gutter/modal/both/none LSP tasks are shown exclusively,
if possible

Release Notes:

- Added a way to prefer LSP tasks over Zed tasks

Kirill Bulatov created

00bc154 debugger: Fix invalid schema for `pathMappings` (#31595)

Click to expand commit body
See
https://github.com/xdebug/vscode-php-debug?tab=readme-ov-file#remote-host-debugging

Release Notes:

- Debugger Beta: Fixed invalid schema for `pathMappings`

Remco Smits created

f627ac9 Bump Zed to v0.190 (#31592)

Click to expand commit body
Release Notes:

-N/A

Joseph T. Lyons created

218e8d0 Revert "Fix text wrapping in commit message editors (#31030)" (#31587)

Click to expand commit body
This reverts commit f2601ce52ce82eb201799ae6c4f1f92f42ccf7c8.

Release Notes:

- N/A

Cole Miller created

2c4b75a Remove agent label for github issues (#31591)

Click to expand commit body
Release Notes:

- N/A

Peter Tripp created

aab7620 debugger beta: Fix bug where debug Rust main running action failed (#31291)

Click to expand commit body
@osiewicz @SomeoneToIgnore If you guys have time to look this over it
would be greatly appreciated. I wanted to move the bug fix into the task
resolution code but wasn't sure if there was a reason that we didn't
already.

The bug is caused by an env variable being empty when we send it as a
terminal command. When the shell resolves all the env variables there's
an extra space that gets added due to the empty env variable being
placed between two other variables.

Closes #31240

Release Notes:

- debugger beta: Fix a bug where debug main Rust runner action wouldn't
work

Anthony Eid created

f3f0766 assistant_tools: Remove description.md files of removed tools (#31586)

Click to expand commit body
This pull request removes orphaned description.md files for tools that
were deleted in [PR
#29808](https://github.com/zed-industries/zed/pull/29808). These
descriptions are no longer needed as their corresponding tools no longer
exist
Closes #ISSUE

Release Notes:

- N/A

Umesh Yadav created

148e9ad Revert "agent: Namespace MCP server tools" (#31588)

Click to expand commit body
Reverts zed-industries/zed#30600

Ben Brandt created

e314963 agent: Add max mode on text threads (#31361)

Click to expand commit body
Related discussions #30240 #30596

Release Notes:

- Added the ability to use max mode on text threads.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Alvaro Parker and Danilo Leal created

957e4ad Fix lag when interacting with `MarkdownElement` (#31585)

Click to expand commit body
Previously, we forgot to associate the `Markdown` entity to
`MarkdownElement` during `prepaint`. This caused calls to
`Context<Markdown>::notify` to not invalidate the view cache, which
meant we would have to wait for some other invalidation before seeing
the results of that initial notify.

Release Notes:

- Improved responsiveness of mouse interactions with the agent panel.

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>

Antonio Scandurra and Ben Brandt created

fee6f13 debugger: Fix go locator creating false scenarios (#31583)

Click to expand commit body
This caused other locators to fail because go would accept build tasks
that it couldn't actually resolve

Release Notes:

- N/A

Anthony Eid created

4f78165 Show progress as the agent locates which range it needs to edit (#31582)

Click to expand commit body
Release Notes:

- Improved latency when the agent starts streaming edits.

---------

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>

Antonio Scandurra and Ben Brandt created

94a5fe2 debugger: Improve Go support (#31559)

Click to expand commit body
Supersedes https://github.com/zed-industries/zed/pull/31345 
This PR does not have any terminal/console related stuff so that it can
be solved separately.

Introduces inline hints in debugger:
<img width="1141" alt="image"
src="https://github.com/user-attachments/assets/b0575f1e-ddf8-41fe-8958-2da6d4974912"
/>
Adds locators for go, so that you can your app in debug mode:
<img width="706" alt="image"
src="https://github.com/user-attachments/assets/df29bba5-8264-4bea-976f-686c32a5605b"
/>
As well is allows you to specify an existing compiled binary:
<img width="604" alt="image"
src="https://github.com/user-attachments/assets/548f2ab5-88c1-41fb-af84-115a19e685ea"
/>

Release Notes:

- Added inline value hints for Go debugging, displaying variable values
directly in the editor during debug sessions
- Added Go debug locator support, enabling debugging of Go applications
through task templates
- Improved Go debug adapter to support both source debugging (mode:
"debug") and binary execution (mode: "exec") based on program path

cc @osiewicz, @Anthony-Eid

Alex created

c0a5ace debugger: Add locator for Python tasks (#31533)

Click to expand commit body
Closes #ISSUE

Release Notes:

- debugger: Python tests/main functions can now we debugged from the
gutter.

---------

Co-authored-by: Kirill Bulatov <kirill@zed.dev>

Piotr Osiewicz and Kirill Bulatov created

15d59fc vim: Fix crash when using ‘ge’ motion on multibyte character (#31566)

Click to expand commit body
Closes #30919

- [x] Test

Release Notes:

- Fixed the issue where using the Vim motion `ge` on multibyte character
would cause Zed to crash.

Smit Barmase created

6545c5e linux: Fix crash when switching repository via git panel (#31556)

Click to expand commit body
Closes #30409

Handles edge case where `f32` turns into `Nan` and causes panic down the
code.

Release Notes:

- Fixed issue where Zed crashes on switching repository via git panel on
Linux.

Smit Barmase created

506beaf Add caching of parsed completion documentation markdown to reduce flicker when selecting (#31546)

Click to expand commit body
Related to #31460 and #28635.

Release Notes:

- Fixed redraw delay of documentation from language server completions
and added caching to reduce flicker when using arrow keys to change
selection.

Michael Sloan created

31d908f Remove redundant words in comments (#31512)

Click to expand commit body
remove redundant word in comment


Release Notes:

- N/A

Signed-off-by: tongjicoder <tongjicoder@icloud.com>

tongjicoder created

0731097 agent: Improve consecutive tool call UX and rebrand Max Mode (#31470)

Click to expand commit body
This PR improves the consecutive tool call UX by allowing users to
quickly continue an interrupted with one-click. What we do here is
insert a hidden "Continue" message that will just nudge the LLM to keep
going. We're also using the opportunity to upsell the previously called
"Max Mode", now rebranded as "Burn Mode", which allows users to don't be
interrupted anymore if they ever have 25 consecutive tool calls again.

Release Notes:

- agent: Improve consecutive tool call UX by allowing users to quickly
continue an interrupted thread with one click.

---------

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Co-authored-by: Agus Zubiaga <hi@aguz.me>
Co-authored-by: Agus Zubiaga <agus@zed.dev>

Danilo Leal , Ben Brandt , Agus Zubiaga , and Agus Zubiaga created

233b73b ui: Implement hover color for scrollbar component (#25525)

Click to expand commit body
This PR implements color changing for the scrollbar component based upon
user mouse interaction.


https://github.com/user-attachments/assets/2fd14e2d-cc5c-4272-906e-bd39bfb007e4


This PR also already adds the state for a scrollbar being actively
dragged. However, as themes currently do not provide a color for this
scenario, this implementation re-uses the hover color as a placeholder
instead. If this feature is at all wanted, I can quickly open up a
follow-up PR which adds support for that property to themes as well as
this component.

Release Notes:

- Added hover state to scrollbars outside of the editor.

Finn Evers created

0145e2c inline_completion_button: Fix links to account page (#31558)

Click to expand commit body
This PR fixes an issue where the various links to the account page from
the Edit Prediction menu were not working.

The `OpenZedUrl` action is opening URLs that deep-link _into_ Zed.

Fixes https://github.com/zed-industries/zed/issues/31060.

Release Notes:

- Fixed an issue with opening links to the Zed account page from the
Edit Prediction menu.

Marshall Bowers created

09fc64e collab: Downgrade non-collab queries to `READ COMMITTED` isolation level (#31552)

Click to expand commit body
This PR downgrades a number of database queries that aren't part of the
actual collaboration from `SERIALIZABLE` to `READ COMMITTED`.

The serializable isolation level is overkill for these queries.

Release Notes:

- N/A

Marshall Bowers created

fc803ce collab: Increase max database connections to 250 (#31553)

Click to expand commit body
This PR increases the number of max database connections to 250.

Release Notes:

- N/A

Marshall Bowers created

697c2ba Enable merge conflict parsing for currently-unmerged files (#31549)

Click to expand commit body
Previously, we only enabled merge conflict parsing for files that were
unmerged at the last time a change was detected to the repo's merge
heads. Now we enable the parsing for these files *and* any files that
are currently unmerged.

The old strategy meant that conflicts produced via `git stash pop` would
not be parsed.

Release Notes:

- Fixed parsing of merge conflicts when the conflict was produced by a
`git stash pop`

Max Brunsfeld created

f54c057 Add warning message when editing a message in a thread (#31508)

Click to expand commit body
<img width="479" alt="Screenshot 2025-05-27 at 9 42 44 AM"
src="https://github.com/user-attachments/assets/7bd9e1b9-26b4-4396-9f93-e92a5f4ac2e1"
/>

Release Notes:

- Added notice that editing a message in the agent panel will restart
the thread from that point.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Richard Feldman and Danilo Leal created

32848e9 collab: Add support for overage billing for Claude Opus 4 (#31544)

Click to expand commit body
This PR adds support for billing for overages for Claude Opus 4.

Release Notes:

- N/A

Marshall Bowers created

86b7575 debugger beta: Autoscroll to recently saved debug scenario when saving a scenario (#31528)

Click to expand commit body
I added a test to this too as one of my first steps of improving
`NewSessionModal`'s test coverage.


Release Notes:

- debugger beta: Select saved debug config when opening debug.json from
`NewSessionModal`

Anthony Eid created

94c0062 Properly handle ignored files in the file finder (#31542)

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

Add a button and also allows to use `search::ToggleIncludeIgnored`
action in the file finder to toggle whether to show gitignored files or
not.
By default, returns back to the gitignored treatment before the PR
above.


![image](https://github.com/user-attachments/assets/c3117488-9c51-4b34-b630-42098fe14b4d)


Release Notes:

- Improved file finder to include indexed gitignored files in its search
results

Kirill Bulatov created

5b6b911 nix: Refactor gh-actions and re-enable nightly builds (#31489)

Click to expand commit body
Now that the nix build is working again, re-enable nightly builds and
refactor the workflow for re-use between nightly releases and CI jobs.

Release Notes:

- N/A

---------

Co-authored-by: Rahul Butani <rrbutani@users.noreply.github.com>

Julia Ryan and Rahul Butani created

b9a5d43 Cursor settings import (#31424)

Click to expand commit body
Closes #ISSUE

Release Notes:

- Added support for importing settings from cursor. Cursor settings can
be imported using the `zed: import cursor settings` command from the
command palette

Ben Kunkle created

21bd91a agent: Namespace MCP server tools (#30600)

Click to expand commit body
This fixes an issue where requests were failing when MCP servers were
registering tools with the same name.
We now prefix the tool names with the context server name, in the UI we
still show the name that the MCP server gives us

Release Notes:

- agent: Fix an error were requests would fail if two MCP servers were
using an identical tool name

Bennet Bo Fenner created

5db14d3 task: Wrap programs in ""s (#31537)

Click to expand commit body
This commit effectively re-implements #21981 in task system. commands
with spaces cannot be spawned currently, and we don't want to have to
deal with shell variables wrapped in "" in DAP locators.

Closes #ISSUE

Release Notes:

- Fixed an issue where tasks with spaces in `command` field could not be
spawned.

Piotr Osiewicz created

b63cea1 debugger beta: Fix gdb/delve JSON data conversion from New Session Modal (#31501)

Click to expand commit body
test that check's that each conversion works properly based on the
adapter's config validation function. 

Co-authored-by: Zed AI \<ai@zed.dev\>

Release Notes:

- debugger beta: Fix bug where Go/GDB configuration's wouldn't work from
NewSessionModal

Anthony Eid created

b7c5540 git_ui: Replace spaces with hyphens in new branch names (#27873)

Click to expand commit body
This PR improves UX by converting spaces to hyphens, following branch
naming conventions and allowing users to create branches without
worrying about naming restrictions.

I think a few other git tools do this, which was nice.



![image](https://github.com/user-attachments/assets/db40ec31-e461-4ab3-a3de-e249559994fc)

Release Notes:

- Updated the branch picker to convert spaces to hyphens when creating
new branch names.

---------

Co-authored-by: Marshall Bowers <git@maxdeviant.com>

5brian and Marshall Bowers created

b01f7c8 Make it possible to use cargo-zigbuild for ZED_BUILD_REMOTE_SERVER (#31467)

Click to expand commit body
This is significantly faster for me than using Cross.

Release Notes:

- N/A

Cole Miller created

3476705 docs_preprocessor: Ensure keybind is found for actions with arguments (#27224)

Click to expand commit body
Tried fixing a keybind in
https://github.com/zed-industries/zed/pull/27217 just to find out it
[still doesnt render
afterwards](https://zed.dev/docs/extensions/languages#language-metadata)
😅 This PR is a quick follow-up to fix this issue.

Issue here is (as seen in the code comment) that the
`editor::ToggleComments` command has additional arguments which caused
the match to fail. However, simply adding the missing arguments does not
work, since the regex only matches the first closing brace and fails to
match multiple closing braces. I decided against changing the matching
since it additionally looked confusing and unintuitive to use.

To not be too intrusive with this change, I just decided to add some
processing for the action string (the `KeymapAction` is not exported
from the settings and the `Value` it holds is also private). The
processing basically reverts the conversion done in `keymap_file.rs`
https://github.com/zed-industries/zed/blob/4b5df2189b9d6d2ed183cfbced7e502884cd3d48/crates/settings/src/keymap_file.rs#L102-L115
and extracts just the action name. It changes nothing for existing
keybinds and fixes the aforementioned issue.

Release Notes:

- N/A

---------

Co-authored-by: Marshall Bowers <git@maxdeviant.com>

Finn Evers and Marshall Bowers created

ba6b5a5 windows: Fix title bar not responsing (#31532)

Click to expand commit body
Closes #31431

Release Notes:

- N/A

张小白 created

28d6362 Revert "Highlight file finder entries according to their git status" (#31529)

Click to expand commit body
Reverts zed-industries/zed#31469

This isn't looking great, so reverting for now.

/cc @SomeoneToIgnore

Antonio Scandurra created