Skill tool: tab-completed short skill name fails with 'Unknown skill' when invoked mid-message
Summary
When a user tab-completes a skill name in the prompt bar (e.g. /skill-validation-workflow), Claude Code inserts the short name without the plugin namespace. If that skill reference appears mid-message (rather than as a standalone slash command at the start of a new prompt), Claude invokes Skill("skill-validation-workflow") - which fails with Unknown skill: skill-validation-workflow because the namespace prefix is required.
Steps to reproduce
- In a message, type
/skill-va - Tab-complete to
/skill-validation-workflow(or any namespaced plugin skill) - The prompt bar shows:
...up /skill-validation-workflow - Submit the message
- Claude attempts
Skill("skill-validation-workflow")- fails withUnknown skill
Expected behaviour
One of:
- Tab-complete inserts the fully-qualified name:
/toast-skills-toolkit:skill-validation-workflow - OR: the Skill tool resolves short names to their namespaced form using the available skills list
Actual behaviour
Unknown skill: skill-validation-workflow error. The skill works fine when invoked as a standalone slash command at the start of a new prompt (e.g. /toast-skills-toolkit:skill-validation-workflow), because that path does namespace resolution. Mid-message tab-complete does not.
Environment
- Claude Code CLI
- Plugin:
toast-skills-toolkit(private marketplace) - Skill:
skill-validation-workflow - The short name
skill-validation-workflowis unambiguous in the installed plugin set
Workaround
Type the full namespaced form manually: /toast-skills-toolkit:skill-validation-workflow. This works but defeats the purpose of tab-complete for plugin skills with long namespace prefixes.
Impact
Every tab-completed plugin skill invoked mid-message silently fails. The user has done the right thing (used tab-complete), but the resulting Skill() call is missing its namespace.