Commit log

c5f933b Allow examples to use tags as revisions, and apply uncommitted diffs

Max Brunsfeld created

34d497f Clippy

Max Brunsfeld created

d2ba8fc Checkpoint: Adding predict command

Click to expand commit body
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>

Agus Zubiaga and Max Brunsfeld created

640bd59 Add uncommitted diff field to zeta example files

Max Brunsfeld created

06bdb28 zeta cli: Add convert-example command (#41608)

Click to expand commit body
Adds a `convert-example` subcommand to the zeta cli that converts eval
examples from/to `json`, `toml`, and `md` formats.

Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>

Agus Zubiaga and Max Brunsfeld created

d6b58bb agent_ui: Use agent font size tokens for thread markdown rendering (#41610)

Click to expand commit body
Release Notes:

- N/A

--- 

Previously, agent markdown rendering used hardcoded font sizes
(TextSize::Default and TextSize::Small) which ignored the
agent_ui_font_size and agent_buffer_font_size settings. This updates the
markdown style to respect these settings.

This pull request adds support for customizing the font size of code
blocks in agent responses, making it possible to set a distinct font
size for code within the agent panel. The changes ensure that if the new
setting is not specified, the font size will fall back to the agent UI
font size, maintaining consistent appearance.

(I am a frontend developer without any Rust knowledge so this is
co-authored with Claude Code)


**Theme settings extension:**

* Added a new `agent_buffer_code_font_size` setting to
`ThemeSettingsContent`, `ThemeSettings`, and the default settings JSON,
allowing users to specify the font size for code blocks in agent
responses.
[[1]](diffhunk://#diff-a3bba02a485aba48e8e9a9d85485332378aa4fe29a0c50d11ae801ecfa0a56a4R69-R72)
[[2]](diffhunk://#diff-aed3a9217587d27844c57ac8aff4a749f1fb1fc5d54926ef5065bf85f8fd633aR118-R119)
[[3]](diffhunk://#diff-42e01d7aacb60673842554e30970b4ddbbaee7a2ec2c6f2be1c0b08b0dd89631R82-R83)
* Updated the VSCode import logic to recognize and import the new
`agent_buffer_code_font_size` setting.

**Font size application in agent UI:**

* Modified the agent UI rendering logic in `thread_view.rs` to use the
new `agent_buffer_code_font_size` for code blocks, and to fall back to
the agent UI font size if unset.
[[1]](diffhunk://#diff-f73942e8d4f8c4d4d173d57d7c58bb653c4bb6ae7079533ee501750cdca27d98L5584-R5584)
[[2]](diffhunk://#diff-f73942e8d4f8c4d4d173d57d7c58bb653c4bb6ae7079533ee501750cdca27d98L5596-R5598)
* Implemented a helper method in `ThemeSettings` to retrieve the code
block font size, with fallback logic to ensure a value is always used.
* Updated the settings application logic to propagate the new code block
font size setting throughout the theme system.


### Example Screenshots
![Screenshot 2025-10-31 at 12 38
28](https://github.com/user-attachments/assets/cbc34232-ab1f-40bf-a006-689678380e47)
![Screenshot 2025-10-31 at 12 37
45](https://github.com/user-attachments/assets/372b5cf8-2df8-425a-b052-12136de7c6bd)

---------

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

Mark Christiansen and Danilo Leal created

03e0581 agent_ui: Show notifications also when the panel is hidden (#40942)

Click to expand commit body
Currently Zed only displays agent notifications (e.g. when the agent
completes a task) if the user has switched apps and Zed is not in the
foreground. This adds PR supports the scenario where the agent finishes
a long-running task and the user is busy coding within Zed on something
else.

Releases Note:

- If agent notifications are turned on, they will now also be displayed
when the agent panel is hidden, in complement to them showing when the
Zed window is in the background.

---------

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

Charles McLaughlin and Danilo Leal created

1552e13 Fix telemetry in release builds (#41695)

Click to expand commit body
This was inadvertently broken in v0.211.1-pre when we rewrote the
release build

Release Notes:

- N/A

Conrad Irwin created

ade0f13 agent_ui: Prevent mode selector tooltip from going off-screen (#41589)

Click to expand commit body
Closes #41458 

Dynamically position mode selector tooltip to prevent clipping.

Position tooltip on the right when panel is docked left, otherwise on
the left. This ensures the tooltip remains visible regardless of panel
position.

**Note:** The tooltip currently vertically aligns with the bottom of the
menu rather than individual items. Would be great if it can be aligned
with the option it explains. But this doesn't seem trivial to me to
implement and not sure if it's important enough atm?

Before: 
<img width="431" height="248" alt="Screenshot 2025-10-30 at 22 21 09"
src="https://github.com/user-attachments/assets/073f5440-b1bf-420b-b12f-558928b627f1"
/>

After:
<img width="632" height="158" alt="Screenshot 2025-10-30 at 17 26 52"
src="https://github.com/user-attachments/assets/e999e390-bf23-435e-9df0-3126dbc14ecb"
/>
<img width="685" height="175" alt="Screenshot 2025-10-30 at 17 27 15"
src="https://github.com/user-attachments/assets/84efca94-7920-474b-bcf8-062c7b59a812"
/>


Release Notes:

- Improved the agent panel's mode selector by preventing it to go
off-screen in case the panel is docked to the left.

Dijana Pavlovic created

04f7b08 Give visual feedback when an operation is pending (#41686)

Click to expand commit body
Currently, if a commit operation takes some time, there's no visual
feedback in the UI that anything's happening.

This PR changes the colour of the text on the button to the
`Color::Disabled` colour when a commit operation is pending.

Release Notes:

- Improved UI feedback when a commit is in progress

---------

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

Joe Innes and Danilo Leal created

ecbdffc debugger: Fix Debugpy attach with connect session startup (#41690)

Click to expand commit body
Closes #38345, #34882, #33280

Debugpy has four distinct configuration scenarios, which are:
1. launch
2. attach with process id
3. attach with listen
4. attach with connect

Spawning Debugpy directly works with the first three scenarios but not
with "attach with connect". Which requires host/port arguments being
passed in both with an attach request and when starting up Debugpy. This
PR passes in the right arguments when spawning Debugpy in an attach with
connect scenario, thus fixing the bug.

The VsCode extension comment that explains this:
https://github.com/microsoft/vscode-python-debugger/blob/98f5b93ee4259f99b679d7c45163ba7babcbff6d/src/extension/debugger/adapter/factory.ts#L43-L51

Release Notes:

- debugger: Fix Python attach-based sessions not working with `connect`
or `port` arguments

Anthony Eid created

aa61f25 git: Make GitPanel more responsive to long-running staging ops (#41667)

Click to expand commit body
Currently, this only applies to long-running individually selected
unstaged files in the git panel. Next up I would like to make this work
for `Stage All`/`Unstage All` however this will most likely require
pushing `PendingOperation` into `GitStore` (from the `GitPanel`).

Release Notes:

- N/A

Jakub Konka created

d406409 Fix categorization of agent server extensions (#41689)

Click to expand commit body
We missed making extensions that provide agent servers fill the
`provides` field with `agent-servers`, and thus, filtering for this type
of extension in both the app and site wouldn't return anything.

Release Notes:

- N/A

Danilo Leal created

bf79592 git_ui: Adjust stash picker (#41688)

Click to expand commit body
Just tidying it up by removing the unnecessary eye icon buttons in all
list items and adding that action in the form of a button in the footer,
closer to all other actions. Also reordering the footer buttons so that
the likely most common action is in the far right.

Release Notes:

- N/A

Danilo Leal created

d3d7199 Fix `release.yml` workflow (#41675)

Click to expand commit body
Closes #ISSUE

Release Notes:

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

Ben Kunkle created

743a9cf Add included agents in extensions search (#41679)

Click to expand commit body
Given agent servers will soon be a thing, I'm adding Claude Code, Gemini
CLI, and Codex CLI as included agents in case anyone comes first to
search them as extensions before looking up on the agent panel.

Release Notes:

- N/A

Danilo Leal created

a05358f Delete old ci.yml (#41668)

Click to expand commit body
The new one is much better

Release Notes:

- N/A

Conrad Irwin created

3a4aba1 gh-workflow release (#41502)

Click to expand commit body
Closes #ISSUE

Rewrite our release pipeline to be generated by `gh-workflow`

Release Notes:

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

Ben Kunkle created

12d71b3 ollama: Add button for refreshing available models (#38181)

Click to expand commit body
Closes #17524

This PR adds a button to the bottom right corner of the ollama settings
ui. It resets the available ollama models, also resets the "Connected"
state in the process. This means it can be used to check if the
connection is still valid as well. It's a question whether we should
clear the available models on ALL `fetch_models` calls, since these only
happen during auth anyway.

Ollama is a local model provider which means clicking the refresh button
often only flashes the "not connected" state because the latency of the
request is so low. This accentuates changes in the UI, however I don't
think there's a way around this without adding some rather cumbersome
deferred ui updates.

I've attached the refresh button to the "Connected" `ButtonLike`, since
I don't think automatic UI spacing should separate these elements. I
think this is okay because the "Connected" isn't actually something that
the user can interact with.

Before: 
<img width="211" height="245" alt="image"
src="https://github.com/user-attachments/assets/ea90e24a-b603-4ee2-9212-2917e1695774"
/>

After: 
<img width="211" height="250" alt="image"
src="https://github.com/user-attachments/assets/be9af950-86a2-4067-87a0-52034a80a823"
/>


Alternative approach: There was also a suggestion to simply add a entry
to the command palette, however none of the other providers have this
ability currently either so I went with this approach. The current
approach also makes it more discoverable to the user.

Release Notes:

- Added a button for refreshing available ollama models

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>

tidely and Bennet Bo Fenner created

34e0c97 Generate dwarf files for builds again (#41651)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A

Conrad Irwin created

cf31b73 Add Andrew to REVIEWERS.conl (#41662)

Click to expand commit body
Release Notes:

- N/A

Andrew Farkas created

1cb512f bedrock: Fix duplicate region input (#41341)

Click to expand commit body
Closes #41313

Release Notes:

- Fixes #41313

<img width="453" height="870" alt="Screenshot 2025-10-27 at 10 23 37 PM"
src="https://github.com/user-attachments/assets/93bfba18-1bff-494e-a4c2-05b54ad6eed8"
/>

Co-authored-by: Richard Feldman <oss@rtfeldman.com>

versecafe and Richard Feldman created

4e6a562 editor: Fix `refresh_linked_ranges` panics due to old snapshot use (#41657)

Click to expand commit body
Fixes ZED-29Z

Release Notes:

- Fixed panic in `refresh_linked_ranges`

Lukas Wirth created

c1dea84 agent: Model name context (#41490)

Click to expand commit body
Closes #41478

Release Notes:

- Fixed #41478

<img width="459" height="916" alt="Screenshot 2025-10-29 at 1 31 26 PM"
src="https://github.com/user-attachments/assets/1d5b9fdf-9800-44e4-bdd5-f0964f93625f"
/>

> caused by using haiku 4.5 from the anthropic provider and then
swapping to sonnet 3.7 through zed, doing this does mess with prompt
caching but a model swap already invalidates that so it shouldn't have
any cost impact on end users

versecafe created

c42d54a agent_ui: Autoscroll after inserting selections (#41370)

Click to expand commit body
Update the behavior of the `zed_actions::agent::AddSelectionToThread`
action so that, after the selecitons are added to the current thread,
the editor automatically scrolls to the cursor's position, fixing an
issue where the inserted selection's UI component could wrap the cursor
to the next line below, leaving it outside the viewable area.

Closes #39694

Release Notes:

- Improved the `agent: add selection to thread` action so as to
automatically scroll to the cursor's position after selections are
inserted

Dino created

f3a5ebc vim: Only focus when associated editor is also focused (#41487)

Click to expand commit body
Update `Vim::activate` to ensure that the `Vim.focused` method is only
called if the associated editor is also focused.

This ensures that the `VimEvent::Focused` event is only emitted when the
editor is actually focused, preventing a bug where, after starting Zed,
Vim's mode indicator would show that the mode was `Insert` even though
it was in `Normal` mode in the main editor.

Closes #41353 

Release Notes:

- Fixed vim's mode being shown as `Inserted` right after opening Zed

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

Dino and Conrad Irwin created

f73d6fe terminal: Kill the terminal child process, not the terminal process on exit (#41631)

Click to expand commit body
When rerunning a task, our process id fetching seems to sometimes return
the previous terminal's process id when respawning the task, causing us
to kill the new terminal once the previous one drops as we spawn a new
one, then drop the old one. This results in rerun sometimes spawning a
blank task as the terminal immediately exits. The fix here is simple, we
actually want to kill the process running inside the terminal process,
not the terminal process itself when we exit in the terminal.

No relnotes as this was introduced yesterday in
https://github.com/zed-industries/zed/pull/41562

Release Notes:

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

Lukas Wirth created

c6d6187 editor: Fix incorrect hover popup row clamping (#41645)

Click to expand commit body
Fixes ZED-2TR
Fixes ZED-2TQ
Fixes ZED-2TB
Fixes ZED-2SW
Fixes ZED-2SQ

Release Notes:

- Fixed panic in repainting hover popups

Co-authored by: David <david@zed.dev>

Lukas Wirth created

1f938c0 project panel: Remove extra separator when "Rename" is hidden (#41639)

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

Release Notes:

- N/A

Danilo Leal created

f2ce06c sum_tree: Replace rayon with futures (#41586)

Click to expand commit body
Release Notes:

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

Co-authored by: Kate <kate@zed.dev>

Lukas Wirth created

7c29c6d Increased the max height of pickers (#41617)

Click to expand commit body
Release Notes:

- Increased the max size of picker based UI

Mikayla Maki created

eab06eb Keep selection in `SwitchToHelixNormalMode` (#41583)

Click to expand commit body
Closes #41125

Release Notes:

- Fixed `SwitchToHelixNormalMode` to keep selection
- Added default keybinds for `SwitchToHelixNormalMode` when in Helix
mode

Andrew Farkas created

c2537fa Add a no-op compare_perf workflow (#41605)

Click to expand commit body
Testing PR for @zed-zippy

Release Notes:

- N/A

Conrad Irwin created

9778564 Add bennetbo to REVIEWERS.conl (#41604)

Click to expand commit body
Release Notes:

- N/A

Bennet Bo Fenner created

7070038 gpui: Remove type bound (#41603)

Click to expand commit body
Release Notes:

- N/A

Mikayla Maki created

b059c1f agent_servers: Expand `~` in path from settings (#41602)

Click to expand commit body
Closes #40796


Release Notes:

- Fixed an issue where `~` would not be expanded when specifiying the
path of an ACP server

Bennet Bo Fenner created

03c6d62 outline_panel: Fix collapse/expand all entries (#41342)

Click to expand commit body
Closes #39937

Release Notes:

- Fixed expand/collapse all entries not working in singleton buffer mode

Chris created

60c5461 zeta2: Expose llm-based context retrieval via zeta_cli (#41584)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>

Agus Zubiaga , Max Brunsfeld , and Oleksiy Syvokon created

8aa2158 vim: Improve pasting while in replace mode (#41549)

Click to expand commit body
- Update `vim::normal::Vim.normal_replace` to work with more than one
  character
- Add `vim::replace::Vim.paste_replace` to handle pasting the 
  clipboard's contents while in replace mode
- Update vim's handling of the `editor::actions::Paste` action so that
  the `paste_replace` method is called when vim is in replace mode,
  otherwise it'll just call the regular `editor::Editor.paste` method

Closes #41378 

Release Notes:

- Improved pasting while in Vim's Replace mode, ensuring that the Zed
replaces the same number of characters as the length of the contents
being pasted

Dino created

5ae0768 debugger: Polish breakpoint list UI (#41598)

Click to expand commit body
This PR fixes breakpoint icon alignment to also be at the end of a
rendered entry and enables editing breakpoint qualities when there's no
active session.

The alignment issue was caused by some icons being invisible, so the
layout phase always accounted for the space they would take up. Only
laying out the icons when they are visible fixed the issue.

#### Before
<img width="1014" height="316" alt="image"
src="https://github.com/user-attachments/assets/9a9ced06-e219-4d9d-8793-6bdfdaca48e8"
/>

#### After
[
<img width="502" height="167" alt="Screenshot 2025-10-30 at 3 21 17 PM"
src="https://github.com/user-attachments/assets/23744868-e354-461c-a940-9b6812e1bcf4"
/>
](url)

Release Notes:

- Breakpoint list: Allow adding conditions, logs, and hit conditions to
breakpoints when there's no active session

Anthony Eid created

44e5a96 debugger: Add horizontal scroll bars to variable list, memory view, and breakpoint list (#41594)

Click to expand commit body
Closes #40360

This PR added heuristics to determine what variable/breakpoint list
entry has the longest width when rendered. I added this in so the
uniform list would correctly determine which item has the longest width
and use that to calculate the scrollbar size.

The heuristic can be off if a non-mono space font is used in the UI; in
most cases, it's more than accurate enough though.

Release Notes:

- debugger: Add horizontal scroll bars to variable list, memory view,
and breakpoint list

---------

Co-authored-by: MrSubidubi <dev@bahn.sh>

Anthony Eid and MrSubidubi created

3944234 windows: Don't flood windows message queue with gpui messages (#41595)

Click to expand commit body
Release Notes:

- N/A

Co-authored by: Max Brunsfeld <max@zed.dev>

Lukas Wirth created

ac3b232 Reduce amount of foreground tasks spawned on multibuffer/editor updates (#41479)

Click to expand commit body
When doing a project wide search in zed on windows for `hang`, zed
starts to freeze for a couple seconds ultimately starting to error with
`Not enough quota is available to process this command.` when
dispatching windows messages. The cause for this is that we simply
overload the windows message pump due to the sheer amount of foreground
tasks we spawn when we populate the project search.

This PR is an attempt at reducing this.

Release Notes:

- Reduced hangs and stutters in large project file searches

Lukas Wirth created

7431803 agent_ui: Insert thread summary as proper mention URI (#40722)

Click to expand commit body
This ensures the thread summary is treated as a tracked mention with
accessible context.

Changes:
- Fixed `MessageEditor::insert_thread_summary()` to use proper mention
URI format
- Added test coverage to verify the fix

Release Notes:

- Fixed an issue where "New From Summary" was not properly inserting
thread summaries as contextual mentions when creating new threads.
Thread summaries are now inserted as proper mention URIs.

Paweł Kondzior created

3825ce5 agent_ui: Fix `agent: Chat with follow` not working (#41581)

Click to expand commit body
Release Notes:

- Fixed an issue where `agent: Chat with follow` was not working anymore

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

Bennet Fenner and Ben Brandt created

b4cf7e4 debugger: Get rid of initialize_args in php debugger setup docs (#41579)

Click to expand commit body
Related to issue: #40887

Release Notes:

- N/A

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

Anthony Eid and Remco Smits created

bdb2d6c Don't skip tests in nightly release (#41573)

Click to expand commit body
Release Notes:

- N/A

Conrad Irwin created

0c73252 project: Spawn terminal process on background executor (#41216)

Click to expand commit body
Attempt 2 for https://github.com/zed-industries/zed/pull/40774

We were spawning the process on the foreground thread before which can
block an arbitrary amount of time. Likewise we no longer block
deserialization on the terminal loading.

Release Notes:

- Improved startup time on systems with slow process spawning
capabilities

Lukas Wirth created

c7aa805 docs: Improve the Inline Assistant content (#41566)

Click to expand commit body
Release Notes:

- N/A

Danilo Leal created

94ba24d terminal: Properly kill child process on terminal exit (#41562)

Click to expand commit body
Release Notes:

- Fixed terminal processes occasionally leaking

Co-authored by: Jakub <jakub@zed.dev>

Lukas Wirth created