d6f0811
acp: Receive available commands over notifications (#37499)
Click to expand commit body
See: https://github.com/zed-industries/agent-client-protocol/pull/62
Release Notes:
- Agent Panel: Fixes an issue where Claude Code would timeout waiting
for slash commands to be loaded
Co-authored-by: Cole Miller <cole@zed.dev>
Closes #ISSUE
Centralizes the references to the `ZED_STATELESS` env var into a single
location in a new crate named `zed_env_vars`
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Ben Kunkle
created
bf1ae1d
docs: Fix typo in the `CLAUDE.md` section (#37497)
Click to expand commit body
Follow-up to https://github.com/zed-industries/zed/pull/37496. Fix a
typo and improves writing overall.
Release Notes:
- N/A
Danilo Leal
created
3b7dbb8
docs: Add note about `CLAUDE.md` usage (#37496)
Click to expand commit body
Some users asked whether Claude Code in Zed can also observe/consume
`CLAUDE.md` guidelines, regardless of whether they're at the root
`.claude` directory or within the project. Answer is yes and the
documentation will mention it now!
Release Notes:
- N/A
This reverts commit bf5ed6d1c9795369310b5b9d6c752d9dc54991b5.
We believe this may be breaking some users whose shell initialization
scripts change the working directory.
Release Notes:
- N/A
Rendering the disclosure button last (on the far right of the header
container) to avoid awkward layouts when there's truncation and elapsed
time information being displayed.
Release Notes:
- N/A
Danilo Leal
created
2aa0114
ai onboarding: Add some fast-follow adjustments (#37486)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37305
Release Notes:
- N/A
---------
Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Danilo Leal
,
Ben Kunkle
, and
Anthony Eid
created
bb2d833
Revert "gpui: Fix overflow_hidden to support clip with border radius" (#37480)
Click to expand commit body
This reverts commit 40199266b6634cc3165f3842abae1d562ef4dcca.
The issue with the commit is: ContentMask<Pixels>::intersect is doing
intersection of corner radii which makes inner containers use the max
corner radius out of all the parents when it should be more complex to
correctly clip children (clip sorting..?)
Release Notes:
- N/A
localcc
created
eedfc5b
acp: Improve handling of invalid external agent server downloads (#37465)
Click to expand commit body
Related to #37213, #37150
When listing previously-downloaded versions of an external agent, don't
try to use any downloads that are missing the agent entrypoint
(indicating that they're corrupt/unusable), and delete those versions,
so that we can attempt to download the latest version again.
Also report clearer errors when failing to start a session due to an
agent server entrypoint or root directory not existing.
Release Notes:
- N/A
Cole Miller
created
0e76cc8
acp: Display a new version call out when one is available (#37479)
Click to expand commit body
<img width="500" alt="CleanShot 2025-09-03 at 16 13 59@2x"
src="https://github.com/user-attachments/assets/beb91365-28e2-4f87-a2c5-7136d37382c7"></img>
Release Notes:
- Agent Panel: Display a callout when a new version of an external agent
is available
---------
Co-authored-by: Cole Miller <cole@zed.dev>
Agus Zubiaga
and
Cole Miller
created
6bd5251
settings_ui: Add test for default values (#37466)
Click to expand commit body
Closes #ISSUE
Adds a test that checks that all settings have default values in
`default.json`. Currently only tests that settings supported by
SettingsUi have defaults, as more settings are added to the settings
editor they will be added to the test as well.
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Ben Kunkle
created
13de400
editor: Do not correct text contrast on non-opaque editor (#37471)
Click to expand commit body
We don’t know the background color behind a non-opaque editor, so we
should skip contrast correction in that case. This prevents
single-editor mode (which is always transparent) from showing weird text
colors when text is selected.
We can’t account for the actual background during contrast correction
because we compute contrast outside gpui, while the actual color
blending happens inside gpui during drawing.
<img width="522" height="145" alt="image"
src="https://github.com/user-attachments/assets/6ee71475-f666-482d-87e6-15cf4c4fceef"
/>
Release Notes:
- Fixed an issue where Command Palette text looked faded when selected.
Closes https://github.com/zed-industries/zed/issues/37144
Adjusts `editor::DeleteToPreviousWordStart`,
`editor::DeleteToNextWordEnd`, `editor::DeleteToNextSubwordEnd` and
`editor::DeleteToPreviousSubwordStart` actions to
* take whitespace sequences with length >= 2 into account and stop after
removing them (whilst movement would also include the word after such
sequences)
* take current language's brackets into account and stop after removing
the text before them
The latter is configurable and can be disabled with `"ignore_brackets":
true` parameter in the action.
Release Notes:
- Improved word deletions to consider whitespace sequences and brackets
by default
Kirill Bulatov
created
7327ef6
terminal_view: Fix focusing of center-pane terminals (#37359)
Click to expand commit body
With `reveal_stragegy=always` + `reveal_target=center`,
`TerminalPanel::spawn_task` activates & focuses the pane of the task.
This works fine in the terminal pane but doesn't for
`reveal_target=center`.
Please note: I'm not verified familiar with the architecture and
internal APIs of zed. If there's a better way or if this fix is a bad
idea, I'm fine with adapting this 😃
Closes #35908
Release Notes:
- Fixed task focus when re-spawning a task with `reveal_target=center`
---------
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Moritz von Göwels
and
Marshall Bowers
created
c1ca730
editor: Make blame and inline blame work for multibuffers (#37366)
Click to expand commit body
Release Notes:
- Added blame view and inline blame support for multi buffer editors
---------
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
Lukas Wirth
and
Kirill Bulatov
created
9228328
Fix rendering on devices that don't support MapOnDefaultTextures (#37456)
Fixes https://github.com/zed-industries/zed/issues/33459
Release Notes:
- Fixed python tasks failing when the python binary path contains
whitespaces
Lukas Wirth
created
ebc22c2
gpui: Don't risk accidentally panicking during tests (#37457)
Click to expand commit body
See the failure in
https://github.com/zed-industries/zed/actions/runs/17413839503/job/49437345296
Release Notes:
- N/A
Nia
created
7633bbf
acp: Fix issue with claude code /logout command (#37452)
Click to expand commit body
### First issue
In the scenario where you have an API key configured in Zed and you run
`/logout`, clicking on `Use Anthropic API Key` would show `Method not
implemented`.
This happened because we were only intercepting the `Use Anthropic API
Key` click if the provider was NOT authenticated, which would not be the
case when the user has an API key set.
### Second issue
When clicking on `Reset API Key` the modal would be dismissed even
though you picked no Authentication Method (which means you still would
be unauthenticated)
---
This PR fixes both of these issues
Release Notes:
- N/A
Bennet Bo Fenner
created
91cbb2e
Add onboarding banner for claude code support (#37443)
c446662
Fix font rendering at very large scales (#37440)
Click to expand commit body
Release Notes:
- Fixed fonts disappearing at very large scales on windows
localcc
created
6feae92
rust: Improve highlighting in derive macros (#37439)
Click to expand commit body
Follow-up to https://github.com/zed-industries/zed/pull/37049
This fixes an issue where we would lose highlighting in derive macros if
one of the names was qualified.
| Before | After |
| --- | --- |
| <img width="886" height="398" alt="Bildschirmfoto 2025-09-03 um 10 39
25"
src="https://github.com/user-attachments/assets/dbc680e3-6ce3-4059-9934-9daa4c59d4a0"
/> | <img width="886" height="398" alt="Bildschirmfoto 2025-09-03 um 10
38 14"
src="https://github.com/user-attachments/assets/6e10df6f-5158-4bfd-81ab-8f2b384f1e99"
/> |
Release Notes:
- N/A
Finn Evers
created
ae840c6
acp: Fix handling of single-file worktrees (#37412)
Click to expand commit body
When the first visible worktree is a single-file worktree, we would
previously try to use the absolute path of that file as the root
directory for external agents, causing an error. This PR changes how we
handle this situation: we'll use the root of the first non-single-file
visible worktree if there are any, and if there are none, the parent
directory of the first single-file visible worktree.
Related to #37213
Release Notes:
- acp: Fixed being unable to run external agents when a single file (not
part of a project) was opened in Zed.
Cole Miller
created
d7fd591
Use slice from Rope chunk when possible while iterating lines (#37430)
Click to expand commit body
Release Notes:
- N/A
Michael Sloan
created
8d58613
Allow wrapping markdown text into `*` by selecting text and writing the `*` (#37426)
Click to expand commit body
Release Notes:
- Allowed wrapping markdown text into `*` by selecting text and writing
the `*`
The only warnings remaining are links to private modules/items, but I
lack knowledge to work out if the referenced modules/items should be
made public, or if the links should be rewritten into exposed
traits/items.
Links to associated items such as trait implementations have to be
written using full markdown format such as:
... [[ `App::update_global` ]](( BorrowAppContext::update_global ))
This is due to https://github.com/rust-lang/rust/issues/74563 which
sadly prohibits fully-qualified syntax:
... [[ `<App as BorrowAppContext>::update_global` ]]
Release Notes:
- N/A
Probably related to https://github.com/zed-industries/zed/pull/37072
Jakub Konka
created
2a7761f
Instruct macOS users to run `xcodebuild -downloadComponent MetalToolchain` (#37411)
This PR removes the example from the `reqwest_client` crate, as it
doesn't seem worth maintaining.
Release Notes:
- N/A
Marshall Bowers
created
035d7dd
ci: Skip Nix for commits on release branches and tags (#37407)
Click to expand commit body
When doing stable/preview releases simultaneously there are two tags and
two branches pushed. Previously nix was attempting 1 job for each. Our
current mac parallelism is 4.
Can't easily test this. 🤷
Release Notes:
- N/A
Peter Tripp
created
9d67276
agent: Fix cut off slash command descriptions (#37408)
Click to expand commit body
Release Notes:
- N/A
Danilo Leal
created
161d128
Handle model refusal in ACP threads (#37383)
Click to expand commit body
If the model refuses a prompt, we now:
* Show an error if it was a user prompt (and truncate it out of the
history)
* Respond with a failed tool call if the refusal was for a tool call
<img width="607" height="260" alt="Screenshot 2025-09-02 at 5 11 45 PM"
src="https://github.com/user-attachments/assets/070b5ee7-6ad6-4a63-8395-f9a5093cc40e"
/>
<img width="607" height="265" alt="Screenshot 2025-09-02 at 5 11 38 PM"
src="https://github.com/user-attachments/assets/98862586-390b-494e-b1f8-71d8341c8d9d"
/>
Release Notes:
- Improve handling of model refusals in ACP threads
Richard Feldman
created
e1b0a98
ci: Remove Windows crash analysis CI scripts (#36694)
Click to expand commit body
We'll just SSH into the Windows runners and look for crashes there.
Reverts #35926
Release Notes:
- N/A
---------
Co-authored-by: Peter Tripp <petertripp@gmail.com>
Cole Miller
and
Peter Tripp
created
ae0ee70
Add configurable timeout for context server tool calls (#33348)
Click to expand commit body
Closes: #32668
- Add
[tool_call_timeout_millis](https://github.com/cline/cline/pull/1904)
field to ContextServerCommand, like in Cline
- Update ModelContextServerBinary to include timeout configuration
- Modify Client to store and use configurable request timeout
- Replace hardcoded REQUEST_TIMEOUT with self.request_timeout
- Rename REQUEST_TIMEOUT to DEFAULT_REQUEST_TIMEOUT for clarity
- Maintain backward compatibility with 60-second default
Release Notes:
- context_server: Add support for configurable timeout for MCP tool
calls
---------
Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
Rafał Krzyważnia
and
Ben Brandt
created
893eb92
docs: Note edge case for macOS 26 (#37392)
Click to expand commit body
- I believe this is caused by metal not being found due to it being on
the XcodeBeta path, not sure if there's a better fix for this but it'll
work until 26 is the latest release
Release Notes:
- N/A
versecafe
created
45fa6d8
tailwind: Add `HTML+ERB` to the list of supported languages (#36797)
Click to expand commit body
Hi! As part of https://github.com/zed-extensions/ruby/issues/162 we
would like to rename HTML/ERB to HTML+ERB since it is more syntactically
correct to treat such language as ERB on top of HTML rather than HTML or
ERB.
To keep the user experience intact, we outlined the prerequisites in the
linked issue. This is the first PR that adds the HTML+ERB language name
to the list of enabled languages for the Emmet extension. We will do the
same for the Tailwind configuration in the Zed codebase. Once the new
versions of Emmet and Zed are released, we will merge the pull request
in the Ruby extension repository and release the updated version. After
that, we will remove the old HTML/ERB and YAML/ERB languages. Let me
know if that sounds good. Thanks!
Release Notes:
- N/A
Co-authored-by: Marshall Bowers <git@maxdeviant.com>
564ded7
acp: Disable external agents over SSH (#37402)
Click to expand commit body
Follow-up to #37377
Show a clearer error here until SSH support is implemented.
Release Notes:
- N/A
Cole Miller
created
63b3839
language_models: Prevent sending the tools object to unsupported models for Ollama (#37221)
Click to expand commit body
Closes #32758
Release Notes:
- Resolved an issue with the Ollama provider that caused requests to
fail with a 400 error for models that don't support tools. The tools
object is now only sent to compatible models to ensure successful
requests.
Umesh Yadav
created
9f74988
language_models: Fix tool_choice null issue for other providers (#34554)
Click to expand commit body
Follow up: #34532
Closes #35434
Mostly fixes a issue were when the tool_choice is none it was getting
serialised as null. This was fixed for openrouter just wanted to follow
up and cleanup for other providers which might have this issue as this
is against the spec.
Release Notes:
- N/A
Umesh Yadav
created
946efb0
Add option for code context menu items to have dynamic width (#37404)
Click to expand commit body
Follow up to https://github.com/zed-industries/zed/pull/30598
This PR introduces the `display_options` field in the
`CompletionResponse`, allowing a code context menu width to be
dynamically dictated based on its larger item. This will allow us to
have the @-mentions and slash commands completion menus in the agent
panel not be bigger than it needs to be. It may also be relevant/useful
in the future for other use cases.
For now, we set all instances of code context menus to use a fixed
width, as defined in the PR linked above, which means this PR shouldn't
cause any visual change.
Release Notes:
- N/A
Co-authored-by: Michael Sloan <mgsloan+github@gmail.com>
This PR removes the `http_client` feature from the `gpui` crate, as it
wasn't really doing anything.
It only controlled whether we depend on the `http_client` crate, but
from what I can tell we always depended on it anyways.
Obviates https://github.com/zed-industries/zed/pull/36615.
Release Notes:
- N/A
Marshall Bowers
created
4368c1b
language_models: Add OpenRouterError and map OpenRouter errors to LanguageModelCompletionError (#34227)
Click to expand commit body
Improves the error handling for openrouter and adds automatic retry like
anthropic for few of the status codes.
Release Notes:
- Improves error messages for Openrouter provider
- Automatic retry when rate limited or Server error from Openrouter