Problem
Agents already advertise their slash commands over ACP, but Buzz Desktop users have no way to discover them — typing / in the composer shows nothing, so you have to memorize and type full command names (/ce-commit-push-pr, /ffrc-slide-forge, …) by hand. For users whose agents load large skill libraries (hundreds of Claude Code skills/plugins), this makes the shipped slash pass-through hard to use in practice.
Background — plumbing already exists
#919 (merged 2026-06-09) shipped slash-command pass-through to ACP connectors and explicitly deferred this piece:
No UI discovery/autocomplete yet — available_commands_update is logged; persisting + surfacing it to the desktop composer is a follow-up.
So today acp.rs receives each agent's command list via the ACP available_commands_update session update and drops it after logging. This issue tracks the follow-up: persist that list and feed it to a composer autocomplete.
Proposed UX
- Typing
/ at the start of the message — or after a leading @AgentName mention — opens a fuzzy-filterable dropdown, styled like the existing @-mention autocomplete.
- The list shows the commands the mentioned agent last advertised (name + one-line description from
available_commands_update). With no mention yet, fall back to the union of commands from agents in the channel, grouped by agent.
- Enter/Tab inserts the command; typing continues to filter. Escape dismisses and leaves the literal
/ text.
- Commands persist per agent (last-received
available_commands_update), so the list is available even before the agent's session is warm; refresh on each new update.
Non-goals
Prior art
- Existing
@-mention autocomplete in the composer (interaction pattern to reuse).
- Zed's ACP client surfaces
available_commands_update as composer completions — same protocol, same shape.
Problem
Agents already advertise their slash commands over ACP, but Buzz Desktop users have no way to discover them — typing
/in the composer shows nothing, so you have to memorize and type full command names (/ce-commit-push-pr,/ffrc-slide-forge, …) by hand. For users whose agents load large skill libraries (hundreds of Claude Code skills/plugins), this makes the shipped slash pass-through hard to use in practice.Background — plumbing already exists
#919 (merged 2026-06-09) shipped slash-command pass-through to ACP connectors and explicitly deferred this piece:
So today
acp.rsreceives each agent's command list via the ACPavailable_commands_updatesession update and drops it after logging. This issue tracks the follow-up: persist that list and feed it to a composer autocomplete.Proposed UX
/at the start of the message — or after a leading@AgentNamemention — opens a fuzzy-filterable dropdown, styled like the existing@-mention autocomplete.available_commands_update). With no mention yet, fall back to the union of commands from agents in the channel, grouped by agent./text.available_commands_update), so the list is available even before the agent's session is warm; refresh on each new update.Non-goals
Prior art
@-mention autocomplete in the composer (interaction pattern to reuse).available_commands_updateas composer completions — same protocol, same shape.