Commit log

4ee2dae markdown: Fix indented codeblocks having incorrect content ranges (#38225)

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

Release Notes:

- Fixed agent panel panicking when streaming indented codeblocks from
agent output

Lukas Wirth created

c27d8e0 editor: Don't pull diagnostics on excerpts change in diagnostics editors (#38212)

Click to expand commit body
This can lead to an infinite regress when using a language server that
supports pull diagnostics, since the excerpts for the diagnostics editor
are set based on the project's diagnostics.

Closes #36772

Release Notes:

- Fixed a bug that could cause duplicated diagnostics with some language
servers.

Cole Miller created

f6c5c68 collab: Remove user backfiller (#38291)

Click to expand commit body
This PR removes the user backfiller from Collab.

Release Notes:

- N/A

Marshall Bowers created

74e5b84 cloud_llm_client: Make `default_model` and `default_fast_model` optional (#38288)

Click to expand commit body
This PR makes the `default_model` and `default_fast_model` fields
optional on the `ListModelsResponse`.

Release Notes:

- N/A

Marshall Bowers created

ee399eb macOS: Make it easier to debug NSAutoFillHeuristicControllerEnabled (#38285)

Click to expand commit body
Uses `setObject` instead of `registerDefaults`, so that it can be read
with `defaults read dev.zed.Zed`. Still can be overrided.

Release Notes:

- N/A

Smit Barmase created

54c82f2 Windows: Unminimize a window when activating it (#38287)

Click to expand commit body
Closes #36287

Release Notes:

- Windows: Fixed an issue where a Zed window would stay minimized when
opening an existing file in that window via the Zed CLI.

Max Brunsfeld created

e14a4ab Fix small spelling mistakes (#38284)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

Uwe Krause created

0343b5f Add new crate denoise required by audio (#38217)

Click to expand commit body
The audio crate will use the denoise crate to remove background noises
from microphone input.

We intent to contribute this to rodio. Before that can happen a PR needs
to land in candle. Until then this lives here.

Uses a candle fork which removes the dependency on `protoc` and has the PR's mentioned above already applied.

Release Notes:

- N/A

---------

Co-authored-by: Mikayla <mikayla@zed.dev>

David Kleingeld and Mikayla created

26202e5 language_models: Use `message` field from Cloud error responses, if present (#38286)

Click to expand commit body
This PR updates the Cloud language model provider to use the `message`
field from the Cloud error response, if it is present.

Previously we would always show the entire JSON payload in the error
message, but with this change we can show just the user-facing `message`
the error response is in a shape that we recognize.

Release Notes:

- N/A

Marshall Bowers created

ee91236 Check if virtual environment is in worktree root (#37510)

Click to expand commit body
The problem from issue #37509 comes from local virtual environments
created with certain approaches (including the 'simple' way of `python
-m venv`) not having a `.project` file with the path to the project's
root directory. When the toolchains are sorted, a virtual environment in
the project is not treated as being for that project and therefore is
not prioritized.

With this change, if a toolchain does not have a `project` associated
with it, we check to see if it is a virtual environment, and if it is we
use its parent directory as the `project`. This will make it the top
priority (i.e. the default) if there are no other virtual environments
for a project, which is what should be expected.

Closes #37509

Release Notes:

- Improved python toolchain prioritization of local virtual
environments.

George Waters created

673a98a Fix a number of spelling mistakes (#38281)

Click to expand commit body
My pre push hooks keep failing on these. This is easier then disabling
and re-enabling those hooks all the time :)

Closes #ISSUE

Release Notes:

- N/A

David Kleingeld created

5674445 Move keyboard shortcut for `pane::GoForward` (#38221)

Click to expand commit body
Move keyboard shortcut for `pane:GoForward` so it's going to be
displayed as a shortcut hint in UI. Currently `Forward` is shown as a
hint, which isn't consistent with `GoBack` action and can be confusing.

Release Notes: 

- Improved the displayed keybinding for the `pane::GoForward` action on
Linux.

VBB created

53513ca Fix filled button hover background (#38235)

Click to expand commit body
Release Notes:

- Fixed filled button hover background.

## Before


https://github.com/user-attachments/assets/fbc75890-d1a4-4a0c-b54e-ca2c7e63a661

## After


https://github.com/user-attachments/assets/a3595b01-e143-4cd0-8bc4-90db9ccfbf74


This appears to be a minor calculation error, not an intentional use of
this value.

If we pass `0.92` to `fade_out`, the calculated will be `alpha: 0.08`.

---------

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

Jason Lee and Danilo Leal created

e885a93 git_ui: Add tooltip for branch picker items (#38261)

Click to expand commit body
Closes #38256

<img width="300" alt="image"
src="https://github.com/user-attachments/assets/5018951f-0f1b-4d5d-b59d-5b5266380e43"
/>


Release Notes:

- Added tooltip to Git branch picker items, making it easier to
distinguish long branch names.

Smit Barmase created

a01a2ed languages: Add Tailwind CSS support for TypeScript (#38254)

Click to expand commit body
Closes #37028

I noticed many projects use Tailwind in plain TypeScript (.ts) files, so
it makes sense to support them out of the box, alongside .js and .tsx
files we already handle. For example, see
[supabase](https://github.com/supabase/supabase/blob/master/packages/ui/src/lib/theme/defaultTheme.ts).

Note: You’ll still need to add `"classFunctions": ["cva", "cx"],`
manually for Tailwind completions to work in `cva` type methods. This is
because you don’t want completions on every string, only in specific
methods or regex matches. This is documented.

Release Notes:

- Added out-of-the-box support for Tailwind completions in `.ts` files.

Smit Barmase created

af3bc45 Drop ellipses from About Zed menu item (#38211)

Click to expand commit body
Follow the macOS app style guideline.

Release Notes:

- N/A

Nathan Sobo created

173074f search: Re-issue project search if search query is stale on replacement (#38251)

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

Release Notes:

- Fixed project search replacement replacing stale search results

Lukas Wirth created

a7cb64c Remove unused agent server settings module (#38250)

Click to expand commit body
This was no longer in the module graph (the settings moved elsewhere) so
cleaning up the dead code.

Release Notes:

- N/A

Ben Brandt created

c6472fd agent_settings: Fix schema validation rejecting custom llm providers (#38248)

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

Release Notes:

- N/A

Lukas Wirth created

c0710fa agent_servers: Set proxy env for all ACP agents (#38247)

Click to expand commit body
- Use ProxySettings::proxy_url to read from settings or env 
- Export HTTP(S)_PROXY and NO_PROXY for agent CLIs 
- Add read_no_proxy_from_env and move parsing from main

Closes https://github.com/zed-industries/claude-code-acp/issues/46

Release Notes:

- acp: Pass proxy settings through to all ACP agents

Ben Brandt created

f321d02 auto_update: Show update error on hover and open logs on click (#38241)

Click to expand commit body
Release Notes:

- Improved error reporting when auto-updating fails

Lukas Wirth created

1c09985 worktree: Add more context to `log_err` calls (#38239)

Click to expand commit body
Release Notes:

- N/A

Lukas Wirth created

d986077 client: Hide usage when not available (#38234)

Click to expand commit body
Release Notes:

- N/A

Marshall Bowers created

555b6ee agent: Add small UI fixes (#38231)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

6446963 agent: Make assistant panel input size configurable (#37975)

Click to expand commit body
Release Notes:

- Added the `agent. message_editor_min_lines `setting to allow users to
customize the agent panel message editor default size by using a
different minimum number of lines.

<img width="800" height="1316" alt="Screenshot 2025-09-11 at 5 47 18 pm"
src="https://github.com/user-attachments/assets/20990b90-c4f9-4f5c-af59-76358642a273"
/>

---------

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

Owen Kelly and Danilo Leal created

ceb907e onboarding: Add scrollbar to pages (#38093)

Click to expand commit body
Closes #37214

This PR adds a scrollbar to the onboarding view and additionally ensures
the scroll state is properly reset when switching between the different
pages each time.

Release Notes:

- N/A

Finn Evers created

3dbccc8 Fix hover element on ACP thread mode selector (#38204)

Click to expand commit body
Closes #38197

This will render `^ click to also ...` on MacOS and `Ctrl + click to
also ...` on Windows and Linux.

|Before|After|
|-|-|
| <img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/09909f1b-3163-40d1-b025-4eb9b159fbf3"
/> | <img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/47d0290d-afa2-4b1b-a588-adfe3130d0b1"
/>|

On Mac: 

<img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/f63103b5-1ceb-4193-ae6c-be55b97106e0"
/>

Release Notes:

- Fixed keymap hint when hovering over mode selector

---------

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

Alvaro Parker and Danilo Leal created

853e625 edit predictions: Add new excerpt logic (not yet used) (#38226)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: agus <agus@zed.dev>

Michael Sloan and agus created

0784bb8 docs: Add "Copy as Markdown" button to toolbar (#38218)

Click to expand commit body
## Summary
Adds a "Copy as Markdown" button to the documentation toolbar that
allows users to easily copy the raw markdown content of any
documentation page.

This feature is inspired by similar implementations on sites like
[Better Auth docs](https://www.better-auth.com/docs/installation) and
[Cloudflare Workers docs](https://developers.cloudflare.com/workers/)
which provide easy ways for users to copy documentation content.

## Features
- **Button placement**: Positioned between theme toggle and search icon
for optimal UX
- **Content fetching**: Retrieves raw markdown from GitHub's API for the
current page
- **Consistent styling**: Matches existing toolbar button patterns

## Test plan
- [x] Copy functionality works on all documentation pages
- [x] Toast notifications appear and disappear correctly
- [x] Button icon animations work properly (spinner → checkmark → copy)
- [x] Styling matches other toolbar buttons
- [x] Works in both light and dark themes

## Screenshots
The button appears as a copy icon between the theme and search buttons
in the left toolbar.
<img width="798" height="295" alt="image"
src="https://github.com/user-attachments/assets/37d41258-d71b-40f8-b8fe-16eaa46b8d7f"
/>
<img width="1628" height="358" alt="image"
src="https://github.com/user-attachments/assets/fc45bc04-a290-4a07-8d1a-a010a92be033"
/>

---------

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

Kenny and Danilo Leal created

9046091 Add a test that would have caught the bug last week (#38222)

Click to expand commit body
This adds a test to make sure that the default value of the auto update
setting is always true. We manually re-applied the broken code from last
week, and confirmed that this test fails with that code.

Release Notes:

- N/A

---------

Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Mikayla Maki , Ben Kunkle , and Conrad Irwin created

6384966 agent: Improve some items in the settings view UI (#38199)

Click to expand commit body
All described in each commit; mostly small things, simplifying/clearing
up the UI.

Release Notes:

- N/A

Danilo Leal created

8b9c747 docs: Call out Omarchy specifically in regards to issues with `amdvlk` (#38214)

Click to expand commit body
Closes #28851


Release Notes:

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

Ben Kunkle created

63586ff Add new injections for Go (#37605)

Click to expand commit body
support for injecting sql, json, yaml, xml, html, css, js, lua and csv
value

if you use `/* lang */` before string literals, highlights them

**Example:**

```go
const sqlQuery = /* sql */ "SELECT * FROM users;" // highlights as SQL code
```

<img width="629" height="46" alt="Screenshot 2025-09-05 at 06 17 49"
src="https://github.com/user-attachments/assets/80f404d8-0a47-428d-bdb5-09fbee502cfe"
/>


Closes #ISSUE

Release Notes:

- Go: Added support for injecting sql, json, yaml, xml, html, css, js, lua and csv language highlights into string literals, when they are prefixed with `/* lang */`

**Example:**

```go
const sqlQuery = /* sql */ "SELECT * FROM users;" // Will be highlighted as SQL code
```

Kaan Kuscu created

35e5aa4 Re-add VSCode syntax node motions (#38208)

Click to expand commit body
Closes #ISSUE

Release Notes:

- (preview only) restored ctrl-shift-{left,right} for Larger/Smaller
syntax node. This is VSCode's default and avoids the breaking change
from #37874

Conrad Irwin created

7ea94a3 Create failed tool call entries for missing tools (#38207)

Click to expand commit body
Release Notes:

- When an agent requests a tool that doesn't exist, this is now treated
as a failed tool call instead of stopping the thread.

Richard Feldman created

6d6c3d6 lsp: Fix overnotifying about open buffers for unrelated servers (#38196)

Click to expand commit body
Do not report all open buffers to new instances of the same language
server, as they can respond with ~spurious errors.

This regressed in  https://github.com/zed-industries/zed/pull/34142

Closes https://github.com/zed-industries/zed/issues/35017

Release Notes:

- Fixed Zed overly notifying language servers about open buffers, which
could've resulted in confusing errors in multi-language projects (in
e.g. Go).

Piotr Osiewicz created

53b2f37 Enhance layout and styling of tool list in AgentConfiguration (#38195)

Click to expand commit body
Improve the layout and styling of the tool list in the
AgentConfiguration, ensuring better responsiveness and visual clarity.

closes #38194

<img width="1270" height="738" alt="image"
src="https://github.com/user-attachments/assets/86345e57-4fd0-43b8-8b8d-6209dc635dfb"
/>

---------

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

Hichem and Danilo Leal created

92b946e acp_thread: Properly use `project` terminal API (#38186)

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

Release Notes:

- Fixed shell selection for terminal tool

Lukas Wirth created

e9b4f59 Fix external agent authentication with spaces in paths (#38175)

Click to expand commit body
This fixes terminal-based authentication for external ACP agents (Claude
Code, Gemini CLI) when file paths contain spaces, like "Application
Support" on macOS and "Program Files" on Windows.

When users click authentication buttons or type `/login`, they get
errors like `Cannot find module '/Users/username/Library/Application'`
because the path gets split at the space.

The fix removes redundant `shlex::try_quote` calls from
`spawn_external_agent_login`. These were causing double-quoting since
the terminal spawning code already handles proper shell escaping.

Added a test to verify paths with spaces aren't pre-quoted.

Release Notes:

- Fixed external agent authentication failures when file paths contain
spaces

---------

Co-authored-by: Hakan Ensari <hakanensari@users.noreply.github.com>
Co-authored-by: Claude <claude@anthropic.com>

Hakan Ensari , Hakan Ensari , and Claude created

989adde Add scrollbars to markdown preview and syntax tree view (#38183)

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

This PR adds default scrollbars to the markdown preview and syntax tree
view.

Release Notes:

- Added scrollbars to the markdown preview and syntax tree view.

Finn Evers created

393d678 terminal: Do not auto close shell terminals if they error out (#38182)

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

This also reduces an annoying level of shell nesting

Release Notes:

- N/A

Lukas Wirth created

4a58250 ui: Follow-up improvements to the scrollbar component (#38178)

Click to expand commit body
This PR lands some more improvements to the reworked scrollbars.

Namely, we will now explicitly paint a background in cases where a track
is requested for the specific scrollbar, which prevents a flicker, and
also reserve space only if space actually needs to be reserved. The
latter was a regression introduced by the recent changes.

Release Notes:

- N/A

Finn Evers created

cfb2925 macOS: Disable NSAutoFillHeuristicController on macOS 26 (#38179)

Click to expand commit body
Closes #33182

From
https://github.com/zed-industries/zed/issues/33182#issuecomment-3289846957,
thanks @mitchellh.

Release Notes:

- Fixed an issue where scrolling could sometimes feel choppy on macOS
26.

Smit Barmase created

14f4e86 terminal: Do not auto close shell terminals if they error out (#38180)

Click to expand commit body
cc https://github.com/zed-industries/zed/issues/38134
Release Notes:

- N/A

Lukas Wirth created

4d54ccf agent_servers: Let Gemini CLI know it is running in Zed (#38058)

Click to expand commit body
By passing through Zed as the surface, Gemini can know which editor it
is running in.

Release Notes:

- N/A

Ben Brandt created

5b1c87b Fix incorrect ANSI color contrast adjustment on some background colors (#38155)

Click to expand commit body
The `Hsla` -> `Rgba` conversion sometimes results in negative (but very
close to 0) color components due to floating point imprecision, causing
the `.powf(constants.main_trc)` computations in the `srgb_to_y` function
to evaluate to `NaN`. This propagates to `apca_contrast` which then
makes `ensure_minimum_contrast` unconditionally return `black` for
certain background colors. This PR addresses this by clamping the rgba
components in `impl From<Hsla> for Rgba` to 0-1.

Before/after:
<img width="1044" height="48" alt="before"
src="https://github.com/user-attachments/assets/771f809f-3959-43e9-8ed0-152ff284cef8"
/>
<img width="1044" height="49" alt="after"
src="https://github.com/user-attachments/assets/5fd6ae25-1ef0-4334-90d1-7fc5acf48958"
/>

Release Notes:

- Fixed an issue where ANSI colors were incorrectly adjusted to improve
contrast on some background colors

Tim Vermeulen created

0fef17b Hide BasedPyright banner in toolbar when dismissed (#38135)

Click to expand commit body
This PR fixes the `BasedPyrightBanner`, making sure the banner is
completely hidden in the toolbar, when it was dismissed, or it's not
installed.

Without the fix, the banner still occupies some space in the toolbar,
making the UI looks inconsistent when editing a Python file. The bug is
**especially prominent** when the toolbar is hidden in the user's
settings (see below).

_Banner is shown_
<img width="1470" height="254" alt="Screenshot 2025-09-14 at 11 36 37"
src="https://github.com/user-attachments/assets/1415b075-0660-41ed-8069-c2318ac3a7cf"
/>

_Banner dismissed_
<img width="1470" height="207" alt="Screenshot 2025-09-14 at 11 36 44"
src="https://github.com/user-attachments/assets/828a3fba-5c50-4aba-832c-3e0cc6ed464b"
/>

_Banner dismissed (and the toolbar is hidden)_
<img width="1470" height="177" alt="Screenshot 2025-09-14 at 12 07 25"
src="https://github.com/user-attachments/assets/41aa5861-87df-491f-ac7e-09fc1558dd84"
/>

Closes n/a

Release Notes:

- Fixed the basedpyright onboarding banner

Vladimir Varankin created

5261969 language_models: Add support for API key to Ollama provider (#34110)

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

Release Notes:

- Ollama: Added configuration of URL and API key for remote Ollama provider.

---------

Signed-off-by: Umesh Yadav <git@umesh.dev>
Co-authored-by: Peter Tripp <peter@zed.dev>
Co-authored-by: Oliver Azevedo Barnes <oliver@liquidvoting.io>
Co-authored-by: Michael Sloan <michael@zed.dev>

Umesh Yadav , Peter Tripp , Oliver Azevedo Barnes , and Michael Sloan created

a598fba ai: Show "API key configured for {URL}" for non-default urls (#38170)

Click to expand commit body
Followup to #38163, also makes some changes intended to be included in
that PR.

Release Notes:

- N/A

Michael Sloan created

634ae72 Misc cleanup + clear language model provider API key editors when API keys are submitted (#38165)

Click to expand commit body
Followup to #38163 along with some other misc cleanups

Release Notes:

- N/A

Michael Sloan created