Plugin slash-command autocomplete drops namespace prefix on accept

Resolved 💬 3 comments Opened Apr 29, 2026 by MarbTrek Closed May 31, 2026

Description

The slash-command autocomplete UI shows the fully-qualified form for namespaced plugin skills (e.g. /shared:publish-package), but selecting that entry via tab/enter inserts the unprefixed form (/publish-package) into the chat input. The displayed form and inserted form should match.

Repro

  1. Install a plugin that exposes namespaced skills (in this repo's case, our internal shared plugin exposes /shared:publish-package, /shared:wire-tier1, etc.)
  2. In the chat input, type /sh
  3. Autocomplete surfaces — the highlighted entry shows /shared:publish-package
  4. Press tab or enter to accept the highlighted entry
  5. The chat input is filled with /publish-package — the shared: prefix is dropped.

Expected

The chat input should be filled with the exact form shown in autocomplete: /shared:publish-package.

Actual

The unprefixed form is inserted. This happens to work today only because no other installed plugin exposes a publish-package skill that would shadow the namespaced one. The moment two plugins expose a same-named skill, the unprefixed form becomes ambiguous and the namespaced form is the only correct way to invoke a specific one — but autocomplete still inserts without the prefix, so users can't easily disambiguate via the UI.

Why it matters

Namespacing exists specifically to disambiguate across plugins. Stripping the prefix on accept defeats the namespacing mechanism — a user who chose the namespaced entry from autocomplete is signaling "I want this exact one," and that signal is being discarded.

Environment

  • OS: Windows 11 Pro 10.0.26200
  • Claude Code: latest as of 2026-04-29

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗