Skip to content

feat(desktop): slash-command autocomplete in composer from ACP available_commands_update (follow-up to #919) #2528

Description

@zacklavin11

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 yetavailable_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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions