dee476b
Bump to 0.184.8 for @osiewicz
Zed Bot created
dee476b
Bump to 0.184.8 for @osiewicz
Zed Bot created
be439e9
Revert "python: Enable subroot detection for pylsp and pyright (#27364)" (cherry-pick #29658) (#29661)
Cherry-picked Revert "python: Enable subroot detection for pylsp and pyright (#27364)" (#29658) This reverts commit e661a0afd64e3e6e1e51c981cb7bda4e0af724fd. Closes #ISSUE Release Notes: - Reverted changes to Python subroot detection which could have caused multiple python processes to be spawned when working in projects with multiple `pyproject.toml` files. Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
gcp-cherry-pick-bot[bot] and Piotr Osiewicz created
7609894
Maybe fix panic (#29352)
Since around the time we shipped block diagnostics, we've been seeing an out of range panic in the editor. Although the code is heavily inlined, so the stacktrace is missing, this seems like a likely place that indexing may have gone wrong. Release Notes: - Fixed a rare panic in the editor
Conrad Irwin created
92d6ee1
zed 0.184.7
Joseph T. Lyons created
6b221fb
Derive Default for TaskId and SpawnInTerminal
These were made Default in #29208, but rather than pull that entire commit in to fix this, I'm resolving manually.
Joseph T. Lyons created
6406105
agent: Add icon for Zed's max mode (#29610)
Release Notes: - N/A
Danilo Leal created
9bd7dcb
agent: Enrich `grep` tool output with syntax information (#29601)
The `grep` tool used to include 4 lines of context around the match, but
the lines included would often be unhelpful. This PR improves this
behavior by using the range of the parent syntax node that contains the
full line(s) matched.
The match headers will also now include symbol breadcrumbs so that the
model can already gather code structure before/without reading files.
````md
### impl GitRepository for RealGitRepository βΊ fn compare_checkpoints βΊ L1278-1284
```rust
let result = git
.run(&[
"diff-tree",
"--quiet",
&left.commit_sha.to_string(),
&right.commit_sha.to_string(),
])
```
````
This positively impacts the `add_arg_to_trait_method` eval example with
better diff output, fewer tool failures, and reduced total turns.
Note: We have some plans to use a an "elision" approach where we would
combine all matches for a given file, skipping lines between them while
keeping symbol declaration lines. The theory is that this would be map
more closely to the expected input for edits. For now, this PR is a
significant improvement.
Release Notes:
- Agent: Enrich `grep` tool output with syntax information
Agus Zubiaga created
597eb8f
bedrock: Preserve thinking blocks for Bedrock (#29602)
Fixes a regression from #29055, resolves #29290 Release Notes: - agent: Fixed a regression that rendered Claude 3.7 Thinking unusable on Bedrock.
Shardul Vaidya created
c14313e
agent: Create `TerminalToolCard` and display shell output while it's running (#29546)
Also, don't require a worktree to run the terminal tool. Release Notes: - N/A
JoΓ£o Marcos created
1bc14b7
language_models: Change default fast model for Zed provider (#29600)
This PR changes the default fast model for the Zed provider from Claude 3.5 Haiku to Claude 3.5 Sonnet. We don't offer Claude 3.5 Haiku to users. Closes https://github.com/zed-industries/zed/issues/29505. Release Notes: - agent: Changed the default fast model for the Zed provider to Claude 3.5 Sonnet.
Marshall Bowers created
a108c68
Re-add code block formatting instructions (#29574)
Re-enabled instructions about code block formatting.
In practice, the model doesn't seem to use these very often, but there's
no negative effect on evals. In a future PR, I'll experiment with adding
more evals around the model actually using the code blocks.
2 runs before: (`--repetitions=8`)
```
=================================================================
AGGREGATE
=================================================================
4 examples failed to run!
Average programmatic score: 37%
Average diff score: 66%
Average thread score: 93%
-----------------------------------------------------------------
CUMULATIVE TOOL METRICS
-----------------------------------------------------------------
ββββββββββββββββββββββββββββββββ¬βββββββββββ¬βββββββββββ¬βββββββββββ
β Tool β Uses β Failures β Rate β
ββββββββββββββββββββββββββββββββΌβββββββββββΌβββββββββββΌβββββββββββ€
βedit_file β 398 β 53 β 13% β
βterminal β 11 β 1 β 9% β
βcreate_file β 40 β 2 β 5% β
βread_file β 245 β 8 β 3% β
βfind_path β 48 β 0 β 0% β
βlist_directory β 13 β 0 β 0% β
βgrep β 133 β 0 β 0% β
βthinking β 18 β 0 β 0% β
βdiagnostics β 130 β 0 β 0% β
```
```
=================================================================
AGGREGATE
=================================================================
1 examples failed to run!
Average programmatic score: 41%
Average diff score: 68%
Average thread score: 96%
-----------------------------------------------------------------
CUMULATIVE TOOL METRICS
-----------------------------------------------------------------
ββββββββββββββββββββββββββββββββ¬βββββββββββ¬βββββββββββ¬βββββββββββ
β Tool β Uses β Failures β Rate β
ββββββββββββββββββββββββββββββββΌβββββββββββΌβββββββββββΌβββββββββββ€
βfetch β 1 β 1 β 100% β
βedit_file β 553 β 63 β 11% β
βread_file β 349 β 3 β 1% β
βdiagnostics β 158 β 0 β 0% β
βfind_path β 70 β 0 β 0% β
βlist_directory β 10 β 0 β 0% β
βthinking β 45 β 0 β 0% β
βgrep β 213 β 0 β 0% β
βcreate_file β 24 β 0 β 0% β
βterminal β 17 β 0 β 0% β
ββββββββββββββββββββββββββββββββ΄βββββββββββ΄βββββββββββ΄βββββββββββ
```
1 run after this change:
```
=================================================================
AGGREGATE
=================================================================
Average programmatic score: 42%
Average diff score: 74%
Average thread score: 100%
-----------------------------------------------------------------
CUMULATIVE TOOL METRICS
-----------------------------------------------------------------
ββββββββββββββββββββββββββββββββ¬βββββββββββ¬βββββββββββ¬βββββββββββ
β Tool β Uses β Failures β Rate β
ββββββββββββββββββββββββββββββββΌβββββββββββΌβββββββββββΌβββββββββββ€
βedit_file β 534 β 92 β 17% β
βread_file β 325 β 6 β 2% β
βlist_directory β 6 β 0 β 0% β
βthinking β 12 β 0 β 0% β
βcreate_file β 16 β 0 β 0% β
βdiagnostics β 49 β 0 β 0% β
βgrep β 234 β 0 β 0% β
βfind_path β 65 β 0 β 0% β
βterminal β 38 β 0 β 0% β
ββββββββββββββββββββββββββββββββ΄βββββββββββ΄βββββββββββ΄βββββββββββ
```
Release Notes:
- N/A
Richard Feldman created
a211571
agent: Support images via @file and the file context picker (#29596)
Release Notes: - agent: Add support for @mentioning images - agent: Add support for including images via file context picker --------- Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>
Bennet Bo Fenner and Oleksiy Syvokon created
747471c
zed 0.184.6
Joseph T. Lyons created
8acd8a2
Fix gemini model token limits (#29584)
Release Notes: - N/A
Michael Sloan created
13854b4
agent: Improve MCP tools compatibility with Gemini models (#29411)
Release Notes: - agent: Improve MCP tools compatibility with Gemini models
Bennet Bo Fenner created
f50dc72
Fix context_stack race in KeyContextView (#29324)
cc @notpeter Before this change we used our own copy of `cx.key_context()` when matching. This led to races where the context queried could be either before (or after) the context used in dispatching. To avoid the race, gpui now passes out the context stack actually used instead. Release Notes: - Fixed a bug where the Key Context View could show the incorrect context, causing confusing results.
Conrad Irwin created
9e03eac
ollama: Add Qwen3 and Gemma3 (default to 16K context) (#29580)
If you have the VRAM you can increase the context by adding this to your
settings.json:
```json
"language_models": {
"ollama": {
"available_models": [
{ "max_tokens": 65536, "name": "qwen3", "display_name": "Qwen3-64k" }
]
}
},
```
Release Notes:
- ollama: Add support for Qwen3. Defaults to 16K token context. See:
[Assistant Configuration
Docs](https://zed.dev/docs/assistant/configuration#ollama-context) to
increase.
Peter Tripp created
34bb705
ollama: Add DeepSeek v3 max token length (#29156)
Add deepseek-v3 max token length for ollama Release Notes: - N/A
shenjack created
b2d49fb
Refactor markdown formatting utilities to avoid building intermediate strings (#29511)
These were nearly always used when using `format!` / `write!` etc, so it makes sense to not have an intermediate `String`. Release Notes: - N/A
Michael Sloan created
5721089
Fix agent rules files for remote project by loading via buffer (#29440)
When using the agent with a project shared by a collaborator, rules file loading didn't work as it was trying to read from the client's filesystem Release Notes: - Fixed rules file loading when using the agent with a project shared by a collaborator.
Michael Sloan created
39483b3
title_bar: Put plan behind `new-billing` feature flag (#29540)
This PR puts the displaying of the plan in the user menu behind the `new-billing` feature flag instead of the old `zed-pro` feature flag. Release Notes: - N/A
Marshall Bowers created
aff5ac5
feature_flags: Add `FeatureFlag` suffix to feature flag types (#29392)
This PR adds the `FeatureFlag` suffix to the feature flag types that were missing them. This makes the names easier to search in the codebase. Release Notes: - N/A
Marshall Bowers created
bf915e9
feature_flags: Remove `remoting` feature flag (#29390)
This PR removes the `remoting` feature flag. The feature is shipped, and we aren't referencing the flag anywhere anymore. Release Notes: - N/A
Marshall Bowers created
cc8fe25
Agent: Include partial output if terminal tool fails (#29115)
This PR addresses the behavior of the agent's terminal tool when the executed command is interrupted or fails after producing some output. Currently, if the command doesn't finish successfully, any partial output captured before the interruption/failure is discarded, and only an error message (or a generic cancellation message) is returned to the LLM. This change modifies the `run_command_limited` function in the terminal tool to catch errors when awaiting the command's status (which includes interruptions). In the case of such an error, it now includes any partial stdout/stderr captured up to that point within the error message returned to the `ToolUseState`. This ensures the LLM receives the partial context even when the command doesn't complete cleanly, framed appropriately as part of an error/interruption message. Closes #29101 Release Notes: - N/A
Mani Rash Ahmadi created
6476700
language_models: Count Google AI tokens through LLM service (#29319)
This PR wires the counting of Google AI tokens back up. It now goes through the LLM service instead of collab's RPC. Still only available for Zed staff. Release Notes: - N/A
Marshall Bowers created
0a656c2
language_models: Pass up `mode` for completion requests through Zed (#29294)
This PR makes it so we pass up the `mode` for completion requests through the Zed provider. Release Notes: - N/A
Marshall Bowers created
93cf95f
collab: Remove `CountLanguageModelTokens` RPC message (#29314)
This PR removes the `CountLanguageModelTokens` RPC message from collab. We were only using this for Google AI models through the Zed provider (which is only available to Zed staff). For now we're returning `0`, but will bring back soon. Release Notes: - N/A
Marshall Bowers created
8a68fad
collab: Remove code for embeddings (#29310)
This PR removes the embeddings-related code from collab and the protocol, as we weren't using it anywhere. Release Notes: - N/A
Marshall Bowers created
b39f9e9
agent: Include grep-related instructions in the prompt only if the tool is available (#29536)
This change updates the system prompt to conditionally include
`grep`-related instructions based on whether the `grep` tool is enabled.
Implementation details:
1. Add a `has_tool` handlebars helper.
2. Pass the `model` to all locations where the prompt is built.
3. Use `{{#if has_tool "grep"}}` in the system prompt to gate
`grep`-specific instructions.
Testing:
- Unit tests for the `hasTool` helper.
- Unit tests to verify that `grep`-related instructions are included /
omitted from the prompt as appropriate.
- Manual agent evaluation:
- Setup: Asked the Agent "List all impls of MyTrait in the project"
using a custom "No tools" profile (all tools disabled).
- Before the change: The Agent attempted to call `grep`, encountered an
error, then realized the tool was unavailable.
- After the change: The Agent immediately asked to enable a search tool.
Note: in principle, `grep`/`read_file` tool descriptions alone might be
enough, but to confirm this we need more evaluation. If it turns out to
be true, we'll be able to remove grep-specific instructions from the
system prompt and undo this change.
Release Notes:
- N/A
Oleksiy Syvokon created
7eeed54
agent: Add "max mode" toggle (#29549)
This PR adds a "max mode" toggle to the Agent panel, for models that support it. Only visible to folks in the `new-billing` feature flag. Icon is just a placeholder. Release Notes: - N/A
Marshall Bowers created
af292ed
agent: Improve attached context display and show hovers for symbol / selection / rules / thread (#29551)
* Brings back hover popover of selection context. * Adds hover popover for symbol, rules, and thread context. * Makes context attached to messages display the names / content at attachment time. * Adds the file name as the displayed parent of symbol context. * Brings back `impl Component for AddedContext` Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
Michael Sloan and Bennet Bo Fenner created
b1aa15f
Use `u64` instead of `usize` in `ElementId` (#29493)
Truncation to a 32 bit `usize` could cause two distinct IDs to be considered the same element. Release Notes: - N/A
Michael Sloan created
2bfac79
zed 0.184.5
Joseph T. Lyons created
a62a6c4
askpass: Shell escape Zed path in askpass script (cherry-pick #29447) (#29449)
Cherry-picked askpass: Shell escape Zed path in askpass script (#29447) Closes #29439 Add shell escaping as well as additional sanity check for Zed path when used in askpass. This caused issues on preview and nightly as the standard paths for those releases contain spaces which were not escaped appropriately leading to erroneous "Permission denied" errors from SSH when the askpass script failed Release Notes: - Fixed a missing shell-escape in askpass resulting in erroneous "Permission denied" errors when trying to connect to a remote server over ssh (effecting preview release v0.184.1 and nightly only) Co-authored-by: Ben Kunkle <ben@zed.dev>
gcp-cherry-pick-bot[bot] and Ben Kunkle created
d68df74
agent: Simplify elements of the thread design (#29533)
Namely, this PR removes the layout shift when you click on a user message to edit it and displays the feedback disclaimer only upon hovering the thumbs up/down button container. Release Notes: - N/A
Danilo Leal created
17e2746
agent: Bring title editing back to text threads (#29425)
This also fixes a little UI bug where the text thread title would push the buttons away from the UI when there was still space. Release Notes: - agent: Made text thread titles editable again. --------- Co-authored-by: Michael Sloan <mgsloan@gmail.com>
Danilo Leal and Michael Sloan created
45ebaac
agent tools: Make `read_file.end_line` inclusive (#29524)
One motivation is that the outlines returned by `read_file` for large files list line numbers assuming an inclusive `end_line`. As a result, when the agent uses these outlines for `read_line` calls, it would otherwise miss the last line. Release Notes: - N/A
Oleksiy Syvokon created
0f051dd
Fix error when deserializing Gemini streams (#29470)
Sometimes Gemini would report `Content` without a `parts` field. Release Notes: - Fixed a bug that would sometimes cause Gemini models to fail streaming their response.
Antonio Scandurra created
18c2137
zed 0.184.4
Joseph T. Lyons created
d92de5e
editor: Improve fuzzy match bucket logic for code completions (#29442)
Add new test and improve fuzzy match bucket logic which results into far better balance between LSP and fuzzy search. Before: <img width="500" alt="before" src="https://github.com/user-attachments/assets/3e8900a6-c0ff-4f37-b88e-b0e3783b7e9a" /> After: <img width="500" alt="after" src="https://github.com/user-attachments/assets/738c074c-d446-4697-aac6-9814362e88db" /> Release Notes: - N/A
Smit Barmase created
0078f67
editor: Add setting for snippet sorting behavior for code completion (#29429)
Added `snippet_sort_order`, which determines how snippets are sorted relative to other completion items. It can have the values `top`, `bottom`, or `inline`, with `inline` being the default. This mimics VS Codeβs setting: https://code.visualstudio.com/docs/editing/intellisense#_snippets-in-suggestions Release Notes: - Added support for `snippet_sort_order` to control snippet sorting behavior in code completion menus.
Smit Barmase created
77f1609
ui: Add `inline_code` method to label (#29306)
This makes it easy to have a label that looks like Markdown inline code via the `inline_code(cx)` method. Release Notes: - N/A
Danilo Leal created
93302ab
Fix inclusion of message when counting tokens from message editor (#29443)
Accidentally omitted this in #29233 Release Notes: - N/A
Michael Sloan created
7c93c8e
agent: Render path search results with `ToolCard` (#28894)
Implementing the `ToolCard` for the path_search tool. It also adds the "jump to file" functionality if you expand the results. Release Notes: - N/A --------- Co-authored-by: Richard Feldman <oss@rtfeldman.com> Co-authored-by: Agus Zubiaga <hi@aguz.me>
Danilo Leal , Richard Feldman , and Agus Zubiaga created
01d2066
agent: Make markdown code blocks uncollapsed by default (#29424)
Seeing the markdown code stream in is actually more helpful than hiding parts of it; parts that you may be interested in. Release Notes: - N/A
Danilo Leal created
dfea962
agent: Allow to explictly disable tools when using `enable_all_context_servers` (#29414)
Previously, all MCP tools would be completed regardless if they were disabled/enabled for the profile. This meant that the "Write" profile was always using all MCP tools, even if you disabled them in the settings. Now, when `enable_all_context_servers` is set to `true`, we will enable all tools from all MCP servers by default but disable the ones that are explicitly disabled for the profile. Also fixes an issue where the tools would not show up as enabled when using `enable_all_context_servers: true` Release Notes: - agent: Fix an issue where MCP tools could not be enabled/disabled
Bennet Bo Fenner created
0f3c56f
Bump to 0.184.3 for @bennetbo
Zed Bot created
1cbdce4
assistant: Fix issue when using inline assistant with Gemini models (cherry-pick #29407) (#29409)
Cherry-picked assistant: Fix issue when using inline assistant with Gemini models (#29407) Closes #29020 Release Notes: - assistant: Fix issue when using inline assistant with Gemini models Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
gcp-cherry-pick-bot[bot] and Bennet Bo Fenner created
745e7d6
language_models: Use `POST /completions` endpoint for Zed provider (#29389)
This PR updates the Zed provider to use the `POST /completions` endpoint. There is no functional difference from `POST /completion`, but the pluralized version reads better. Release Notes: - N/A
Marshall Bowers created
19de45c
Bring back reload of agent context before sending message (#29385)
Realized after merging #29233 that this behavior is desired Release Notes: - N/A
Michael Sloan created