ef8fe52
Try adding beta token-efficient tool use for 3.7 Sonnet (#28100)
Click to expand commit body
Release Notes:
- Enabled [token-efficient tool use
(beta)](https://docs.anthropic.com/en/docs/build-with-claude/tool-use/token-efficient-tool-use)
for Claude 3.7 Sonnet models
Richard Feldman
created
9821963
Fix `script/zed-local` on non-Windows platforms (#28098)
Click to expand commit body
This PR fixes the `script/zed-local` script, which was no longer working
properly after https://github.com/zed-industries/zed/pull/23117.
Release Notes:
- N/A
Marshall Bowers
created
cfe5620
docs: Adjust assistant configuration docs table of contents (#28099)
Click to expand commit body
Follow up https://github.com/zed-industries/zed/pull/28088
The "Feature-specific models" was under the LM Studio section, which was
incorrect.
Release Notes:
- N/A
Danilo Leal
created
5fe86f7
collab: Track input and output tokens per minute separately (#28097)
Click to expand commit body
This PR adds tracking for input and output tokens per minute separately
from the current aggregate tokens per minute.
We are not yet rate-limiting based on these measures.
Release Notes:
- N/A
Marshall Bowers
created
c94b587
squawk: Specify PostgreSQL version in config (#28094)
Click to expand commit body
This PR adds the PostgreSQL version to the squawk config, see
https://squawkhq.com/docs/cli#specifying-postgres-version for reference.
The specified version matches the PostgreSQL version in the compose-file
https://github.com/zed-industries/zed/blob/43cb925a599ead7ddbeee26efd1f5af1d1dea97a/compose.yml#L3
and prevents false positives like
https://github.com/zed-industries/zed/pull/28090#issuecomment-2778871346
from happening (tested it locally with that commit).
Release Notes:
- N/A
Finn Evers
created
43cb925
ai: Separate model settings for each feature (#28088)
Click to expand commit body
Closes: https://github.com/zed-industries/zed/issues/20582
Allows users to select a specific model for each AI-powered feature:
- Agent panel
- Inline assistant
- Thread summarization
- Commit message generation
If unspecified for a given feature, it will use the `default_model`
setting.
Release Notes:
- Added support for configuring a specific model for each AI-powered
feature
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Agus Zubiaga
,
Danilo Leal
, and
Bennet Bo Fenner
created
cf0d1e4
collab: Add granular tokens per minute columns to `models` table (#28090)
Click to expand commit body
This PR adds new granular tokens per minute columns to the `models`
table in preparation for more fine-grained rate limits.
The following columns have been added:
- `max_input_tokens_per_minute`
- `max_output_tokens_per_minute`
These mirror the "Maximum input tokens per minute (ITPM)" and "Maximum
output tokens per minute (OTPM)" [rate limits from
Anthropic](https://docs.anthropic.com/en/api/rate-limits#rate-limits).
Release Notes:
- N/A
Closes #19497
Fixed conflicts from https://github.com/zed-industries/zed/pull/19498
Added tags to tasks selector
Release Notes:
- Added ability to spawn tasks by tag with key bindings
- Added tags to tasks selector
https://github.com/user-attachments/assets/0eefea21-ec4e-407c-9d4f-2a0a4a0f74df
---------
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Artem Evsikov
and
Kirill Bulatov
created
80441f6
gpui: Use NSOperatingSystemVersion provided by cocoa (#28055)
Click to expand commit body
Use the `NSOperatingSystemVersion` struct provided by the cocoa crate
instead of our own. Additionally we can directly use
`isOperatingSystemAtLeastVersion` instead of manually implementing
version comparison logic.
The `isOperatingSystemAtLeastVersion` instance method has been available
since MacOS 10.10, which released a decade ago.
Documentation for `isOperatingSystemAtLeastVersion `:
https://developer.apple.com/documentation/foundation/nsprocessinfo/1414876-isoperatingsystematleastversion
Release Notes:
- N/A
tidely
created
393d656
Make CloseAll keybindings more closely match VS Code (#28060)
Click to expand commit body
Changes default keymaps to more closely match the behavior of VSCode.
New Zed behavior:
`cmd-k w` / `ctrl-k w` -- Closes all buffers in the current pane
`cmd-k cmd-w` / `ctrl-k ctrl-w` -- Closes all buffers in all panes
VScode:
`cmd-k cmd-w` is workbench.action.closeAllEditors (close all buffers in
all splits)
`cmd-k w` is workbench.action.closeEditorsInGroup (close all buffers in
current split)
Both leave pinned tabs untouched.
Release Notes:
- Improved keybindings for close all tabs to better match VSCode
behavior
Peter Tripp
created
3d48efa
agent: Add search to Thread History (#28085)
Click to expand commit body

Release Notes:
- agent: Add search box to thread history
---------
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Agus Zubiaga
,
Bennet Bo Fenner
, and
Danilo Leal
created
277a3f8
Implement edit rejection in `ActionLog` (#28080)
Click to expand commit body
Release Notes:
- Fixed a bug that would prevent rejecting certain agent edits.
Antonio Scandurra
created
5e28689
Escape carets (^) in Go test regex (#27746)
Click to expand commit body
This is a follow up to https://github.com/zed-industries/zed/pull/14821,
which escaped `$` but not `^`.
This is fine for `bash`, but causes issues with `zsh`. This change
escapes the `^`. I tested this against `bash`, `zsh` and `fish`
I suspect such escaping would probably need to be done at some
shell-specific layer of the code, but for now it seems like the tasks
provided by the `ContextProvider` are supposed to be shell agnostic.
To reproduce the original issue:
1. Create a Go test file in a module that just contains a single test
`TestABC`.
2. Run `zsh -i -c "go test -run ^TestABC\$"` which is what Zed tries to
run when the task for a specific Go test is executed.
3. An error that there are no tests to run will be produced even though
there is a test.
4. Run `zsh -i -c "go test -run \^TestABC\$"` (note the backslash before
^).
5. The test will run successfully.
Example:
``` go
package bar
import "testing"
func TestABC(t *testing.T) {}
```
Release Notes:
- fix: Escape the ^ in the Go test -run regex to improve shell
compatibility (notably with zsh).
Jake
created
9e38c45
agent: Show which lines were read when using `read_file` tool (#28077)
Click to expand commit body
This makes sure that we specify which lines the agent actually read,
avoids confusing scenarios such as:
<img width="642" alt="Screenshot 2025-04-04 at 10 22 10"
src="https://github.com/user-attachments/assets/2680c313-4f77-4971-8743-8e3f5327c18d"
/>
Here the agent starts out by actually only reading a certain amount of
lines when the first tool call happens, then it does a second tool call
to read the whole file. To the user this looks like to identical tool
calls.
Now:
<img width="621" alt="image"
src="https://github.com/user-attachments/assets/76222258-9cc8-4b7c-98c0-6d5cffb282f2"
/>
<img width="362" alt="image"
src="https://github.com/user-attachments/assets/293f2fc0-365d-4b84-8400-4c11474caeb8"
/>
<img width="420" alt="image"
src="https://github.com/user-attachments/assets/ca92493e-67ce-4d45-8f83-0168df575326"
/>
Release Notes:
- N/A
Bennet Bo Fenner
created
1db3d92
agent: Differentiate @mentions from markdown links (#28073)
Click to expand commit body
This ensures that we display @mentions and normal markdown links
differently:
<img width="670" alt="Screenshot 2025-04-04 at 11 07 51"
src="https://github.com/user-attachments/assets/0a4d0881-abb9-42a8-b3fa-912cd6873ae0"
/>
Release Notes:
- N/A
Bennet Bo Fenner
created
a7674d3
Scroll to first hunk when clicking on a file to review in Agent Panel (#28075)
Click to expand commit body
Release Notes:
- Added the ability to scroll to a file when clicking on it in the Agent
Panel review section.
Antonio Scandurra
created
ee4b6a8
Listen for changes to the configuration of the attached device too (#28045)
Click to expand commit body
Release Notes:
- Fixed an issue causing "robot voice" when enabling the microphone on
some bluetooth headphones (hopefully).
Co-authored-by: Zed AI <ai+claude-3.7@zed.dev>
Conrad Irwin
and
Zed AI
created
c04c581
nix: Fix the `cargo-bundle` override (#28061)
Click to expand commit body
With the recent deprecation of `rustPlatform.fetchCargoTarball` +
migration to using `fetchCargoVendor` by default in `buildRustPackage`
(NixOS/nixpkgs#394012), the `cargo-bundle` override strategy used here,
as prescribed by the
[nixos asia wiki](https://nixos.asia/en/buildRustPackage) no longer
works:
https://github.com/zed-industries/zed/blob/c6e2d20a02b523172aea8a22fa2ec6c8975b52e4/nix/build.nix#L100-L116
[`fetchCargoTarball` produced a single derivation][tarball-drv] but
`fetchCargoVendor` [produces two][vendor-drvs]:
- `${name}-vendor-staging` (inner; FoD)
- `${name}-vendor` (outer)
[tarball-drv]:
https://github.com/NixOS/nixpkgs/blob/36fd87baa9083f34f7f5027900b62ee6d09b1f2f/pkgs/build-support/rust/fetch-cargo-tarball/default.nix#L79
[vendor-drvs]:
https://github.com/NixOS/nixpkgs/blob/10214747f5e6e7cb5b9bdf9e018a3c7b3032f5af/pkgs/build-support/rust/fetch-cargo-vendor.nix#L52-L103
`overrideAttrs` here is setting `outputHash` on the latter (which isn't
a fixed-output-derivation and does not have `outputHashMode` set which
implies `outputHashMode = "flat"`) instead of the inner; this results in
errors like this:
```console
❯ nix develop
error: output path '/nix/store/cb57w05zvsqxshqjl789kmsy9pbqjn06-cargo-bundle-0.6.1-zed-vendor.tar.gz' should be a non-executable regular file since recursive hashing is not enabled (outputHashMode=flat)
error: 1 dependencies of derivation '/nix/store/k3azmxljgjn26hqyhg9m1y3lhx32y939-cargo-bundle-0.6.1-zed.drv' failed to build
error: 1 dependencies of derivation '/nix/store/8ag4v0m90m4kcaq1ypp7f85pp8s6fxgc-nix-shell-env.drv' failed to build
```
> [!NOTE]
> you will need to remove
`/nix/store/cb57w05zvsqxshqjl789kmsy9pbqjn06-cargo-bundle-0.6.1-zed-vendor.tar.gz`
> from your nix store in order to be able to reproduce this
We want to be setting `outputHash` on the [first derivation][first-drv]
instead. This change has us just do the call to `fetchCargoTarball`
manually instead of using overrides.
[first-drv]:
https://github.com/NixOS/nixpkgs/blob/10214747f5e6e7cb5b9bdf9e018a3c7b3032f5af/pkgs/build-support/rust/fetch-cargo-vendor.nix#L85
---
I suspect CI/other machines didn't catch this due to a store path
matching the name + `outputHash` already being present but I'm not
entirely sure how this happened...
`sha256-Q49FnXNHWhvbH1LtMUpXFcvGKu9VHwqOXXd+MjswO64=` is actually a
`fetchCargoTarball` hash, not a `fetchCargoVendor` hash (and upstream
`cargo-about`'s `cargoDeps` [has been using `cargoVendor`][ups] since
before the nixpkgs bump in 50ad71a6306b45926091b8e37036ea8fe237f299)
[ups]:
https://github.com/NixOS/nixpkgs/blob/1d09c579c12869453d98dd35f6ff9d28dc32e869/pkgs/by-name/ca/cargo-about/package.nix#L22
---
> [!NOTE]
> eventually we'll be able to just have `.overrideAttrs (_: { cargoHash
= "..."; })` work as expected [^2]
---
Release Notes:
- N/A
[^2]:
[now that
`buildRustPackage`](https://github.com/NixOS/nixpkgs/pull/382550) uses
[`lib.extendMkDerivation`](https://github.com/nixos/nixpkgs/blob/bbdf8601bcf2a7e733d5ef2552109a5d8d5a44ce/doc/build-helpers/fixed-point-arguments.chapter.md)
(NixOS/nixpkgs/#234651) the groundwork is in place; a follow PR [needs
to use `cargoHash` and friends from
`finalAttrs`](https://github.com/NixOS/nixpkgs/blob/10214747f5e6e7cb5b9bdf9e018a3c7b3032f5af/pkgs/build-support/rust/build-rust-package/default.nix#L104)
Skipped nix builds were ugly, showing raw template when being skipped. Make prettier.
Release Notes:
- N/A
Peter Tripp
created
8b5ea05
Fix panic calling blocks_intersecting_buffer_range with an empty range (#28049)
Click to expand commit body
Previously, when comparing a block with an empty range to an empty query
range in non-inclusive mode, our binary search logic could end up
computing an inverted range, causing a panic.
This commit adds special casing when comparing empty blocks with empty
ranges.
cc @as-cii: I'm realizing that the approach to searching for the
intersecting replacement blocks makes some invalid assumptions about the
ordering of replace decorations. They aren't ordered at all by their end
range. @maxbrunsfeld and I are wondering if long term, we should remove
replace decorations and find another solution for folding buffers in
multi buffers.
Release Notes:
- Fixed an occasional panic that would occur when navigating to the next
change hunk with a pending inline transformation present.
Co-authored-by: Peter Tripp <petertripp@gmail.com>
Nathan Sobo
and
Peter Tripp
created
ec40e2d
gpui: Avoid dereferencing null pointer in `MacWindow::active_window` (#28059)
Click to expand commit body
This PR adds a check to avoid dereferencing a null pointer in
`MacWindow::active_window`.
Rust 1.86 now has a [debug assertion for dereferencing null
pointers](https://blog.rust-lang.org/2025/04/03/Rust-1.86.0.html#debug-assertions-that-pointers-are-non-null-when-required-for-soundness),
which means that losing focus of the window would cause a null pointer
to be dereferenced and panic.
Release Notes:
- N/A
This PR disables `parallel_tool_calls` for the models that support it,
as the Agent currently expects at most one tool use per turn.
It was a bit of trial and error to figure this out. OpenAI's API
annoyingly will return an error if passing `parallel_tool_calls` to a
model that doesn't support it.
Release Notes:
- N/A
This adds a nix CI job to build the flake in debug mode for
aarch64-darwin and x86-linux. For now this job will only run when the
`run-nix` label is added to a PR.
The CI job doesn't push to cachix for now, so every build is a clean
build.
I also added a condition to the garbage collection step so it only runs
when the nix store is >50GB.
Release Notes:
- N/A
Julia Ryan
created
3f71ae9
Use more appropriate action for Vim word completions (#28043)
Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/26410
The action does not sort the items the way Vim does, but still better
than the previous state.
Release Notes:
- N/A
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
- Rename `TextField` -> `SingleLineInput`
- Add a component preview for `SingleLineInput`
- Apply `SingleLineInput` to the AddContextServerModal
Release Notes:
- N/A
---------
Co-authored-by: Agus Zubiaga <hi@aguz.me>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Nate Butler
,
Agus Zubiaga
,
Danilo Leal
, and
Danilo Leal
created
315f1bf
agent: Snapshot context in user message instead of recreating it (#27967)
Click to expand commit body
This makes context essentially work the same way as `read-file`,
increasing the likelihood of cache hits.
Just like with `read-file`, we'll notify the model when the user makes
an edit to one of the tracked files. In the future, we want to send a
diff instead of just a list of files, but that's an orthogonal change.
Release Notes:
- agent: Improved caching of files in context
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Agus Zubiaga
and
Antonio Scandurra
created
0c82541
Allow to temporarily stop LSP servers (#28034)
Click to expand commit body
Same as `editor::RestartLanguageServer`, now there's an
`editor::StopLanguageServer` action that stops all language servers,
related to the currently opened editor.
Opening another singleton editor with the same language or changing
selections in a multi buffer will bring the servers back up.
Release Notes:
- Added a way to temporarily stop LSP servers
---------
Co-authored-by: Michael Sloan <mgsloan@gmail.com>
Kirill Bulatov
and
Michael Sloan
created
b9724d9
agent: Add token count in the thread view (#28037)
Click to expand commit body
This PR adds the token count to the active thread view. It doesn't
behaves quite like Assistant 1 where it updates as you type, though; it
updates after you submit the message.
<img
src="https://github.com/user-attachments/assets/82d2a180-554a-43ee-b776-3743359b609b"
width="700" />
---
Release Notes:
- agent: Add token count in the thread view
---------
Co-authored-by: Agus Zubiaga <hi@aguz.me>
This PR removes the unused `extract_tool_args_from_events` functions
that were defined in some of the LLM provider crates.
Release Notes:
- N/A
Marshall Bowers
created
e123c4b
Fix soft-wrapping with fold creases (#28029)
Click to expand commit body
Release Notes:
- Fixed a rendering bug that caused context in the agent to not wrap
properly.
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Zed AI <ai+claude-3.7@zed.dev>
Antonio Scandurra
,
Conrad Irwin
, and
Zed AI
created
ed37220
agent: Handle tool use without text (#28030)
Click to expand commit body
### Context
The Anthropic API fails if a request message contains a tool use and no
`Text` segments or it only contains empty `Text` segments. These are
cases that the model itself produces, but the API doesn't support
sending them back.
#27917 fixed this by appending "Using tool..." in the thread's message,
but this causes the actual conversation to include it, so it would
appear in the UI (we would actually display a gap because we never
rendered its markdown, but "Using tool..." would show up when the thread
was restored).
### Solution
We'll now only append this placeholder when we build the request, so the
API still sees it, but the UI/Thread doesn't.
Another issue we found is that the model starts mimicking these
placeholders in later tool uses which is undesirable. So unfortunately,
we had to add logic to filter them out.
Release Notes:
- agent: Improved rendering of tool uses without text
---------
Co-authored-by: Bennet <bennet@zed.dev>
Agus Zubiaga
and
Bennet
created
ece4a1c
debugger: Start on tabless design (#27837)
Click to expand commit body

Release Notes:
- N/A
---------
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Anthony <anthony@zed.dev>
Piotr Osiewicz
,
Anthony Eid
, and
Anthony
created
9986a21
agent: Add button to continue iterating once all reviews are done (#28027)
Click to expand commit body
This PR adds a button on the review tab empty state that toggles the
focus back to the agent panel so that users can keep iterating on the
thread that's active in the panel.
<img
src="https://github.com/user-attachments/assets/ace5cf93-8869-49bb-8106-e03a9e3c90f2"
width="700"/>
Release Notes:
- N/A
Danilo Leal
created
c674e8d
Clear path-based excerpt data properly (#28026)
e5e3e9a
rust: Improve runnable detection for test modules (#28024)
Click to expand commit body
Closes #28002
This PR updates the `runnabless.scm` for Rust to improve detection of
test modules with non-standard names. Instead of matching on the module
name, we now check for the `#[cfg(test)]`-attribute above test modules.
This allows for generic matching whilst not regressing the previous
behaviour.
| `main` | <img width="922" alt="main"
src="https://github.com/user-attachments/assets/34fc4443-13a2-4e18-b806-7e14771c3df4"
/> |
| --- | --- |
| This PR | <img width="922" alt="PR"
src="https://github.com/user-attachments/assets/13e6a6d8-e177-4a83-89ab-24c0a69ade27"
/> |
Release Notes:
- Improved runnable detection for test modules in Rust.
Finn Evers
created
399d192
Temporarily disable flaky conflicted-cherry-pick test (#27950)
Click to expand commit body
Closes #ISSUE
Release Notes:
- N/A
Cole Miller
created
c98bcc7
agent: Fix thinking step showing up as pending when completion is cancelled (#28019)
Click to expand commit body
Previously the "Thinking..." step would show up as pending, even though
the user cancelled the generation:
<img width="672" alt="image"
src="https://github.com/user-attachments/assets/c9cdce0a-d827-4e23-96f5-b150465911a7"
/>
Release Notes:
- Fixed an issue where the thinking step would show up as pending even
when the generation was cancelled
Bennet Bo Fenner
created
fe27d11
agent: Include active file in recent history (#27914)
Click to expand commit body
This happened because of two reasons:
- `Workspace::recent_navigation_history` didn't include the current file
- The context picker added the current file to a exclude list
The latter was actually intentional because we already show the file in
the suggested context, but now that we actually have mentions, it's just
inconvenient not to have it there.
Release Notes:
- N/A
Agus Zubiaga
created
9693eab
editor: Fix active line number highlighting regression (#28015)
Click to expand commit body
This PR resolves a small regression introduced by the
debugger-introduction, which causes the active line number to no longer
be highlighted in the gutter as long as it is not part of a selection. A
user reported this issue [on
Discord](https://discord.com/channels/869392257814519848/995403703894954060/1357153291913662567).
Prior to the debugger-commit, an active line number was highlighted if
it was part of the editor active line numbers:
https://github.com/zed-industries/zed/blob/ed4e654fdf66fb886414198ac6db1a2f24d729a5/crates/editor/src/element.rs#L4295-L4303
With the debugger-introduction, the code was changed to only highlight
lines which are part of a selection:
https://github.com/zed-industries/zed/blob/e2aaf9b7046dd8d8430ff82554fe13d69431e443/crates/editor/src/element.rs#L2411-L2422
However, the check whether it is within a selection is not neccesary, as
the line is an active line as long as it is within the map of active
lines.
This PR restores the previous behavior.
| `main` | <img width="922" alt="main"
src="https://github.com/user-attachments/assets/486a548d-fe09-450e-922e-1feb4366fb4f"
/> |
| --- | --- |
| This PR | <img width="922" alt="PR"
src="https://github.com/user-attachments/assets/80517880-14b5-4861-bf83-8364f7831c46"
/> |
Release Notes:
- Fixed an issue where the active line number in the editor was not
always highlighted.
Release Notes:
- N/A
---------
Co-authored-by: Michael Sloan <michael@zed.dev>
Thomas Mickley-Doyle
and
Michael Sloan
created
d3e4de7
workspace-hack: remove openssl from remote_server (#27990)
Click to expand commit body
This was accidentally getting added due to increased feature
unification. We've manually excluded reqwest to go back to the desired
behavior: remote_server, doesn't depend on openssl.
Release Notes:
- N/A
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Julia Ryan
and
Mikayla Maki
created
ee950f5
Debugger: Add pretty printers for Cargo-located tasks (#27979)
Click to expand commit body
Closes #ISSUE
Release Notes:
- N/A
Piotr Osiewicz
created
501b539
gpui: Fix background for WrappedLine (#27980)
Click to expand commit body
https://github.com/zed-industries/zed/pull/26454 In this PR, we
separated painting for text line into two parts: `paint` and
`paint_background`. This allows selections to appear in front of the
text background but behind the text itself in the editor.
The `paint_background` method was implemented for `ShapedLine` but not
for `WrappedLine`. This PR adds that, fixing the background rendering
for inline code blocks in Markdown, as they use `WrappedLine`.
Before:
<img width="160" alt="image"
src="https://github.com/user-attachments/assets/81466c63-6835-4128-ba22-1b63f5fd7b1f"
/>
After:
<img width="160" alt="image"
src="https://github.com/user-attachments/assets/3b7044d7-265b-45db-904c-3b70fdf421fe"
/>
Release Notes:
- Fixed missing background for inline code blocks in the editor hover
tooltip.
Smit Barmase
created
444b7b8
renovate: Ignore `Cargo.toml` for `workspace-hack` (#27976)
Click to expand commit body
This PR adds the `Cargo.toml` for the `workspace-hack` crate to the
ignore list for Renovate, as it is opening a number of PRs against it
that will interfere with it.
Release Notes:
- N/A
Marshall Bowers
created
8a6ed4a
Use new multibuffer excerpts in project search (#27893)
Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/27876
Closes https://github.com/zed-industries/zed/issues/13513
Release Notes:
- Improved multi buffer excerpts to merge when expanded
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Kirill Bulatov
and
Conrad Irwin
created
b4af5b2
agent: Update thread label to use plural form (#27971)
Click to expand commit body
Update thread label to match the other contexts.
|Before|After|
|--|--|
|||
Release Notes:
- N/A