Skip to content

feat(plugins): namespace plugin skills with plugin name prefix like commands #50486

@kriscoleman

Description

@kriscoleman

Plugin commands registered via commands/ get automatically namespaced with the plugin name (e.g., /ce:triage, /hookify:list), but skills registered via skills/*/SKILL.md do not get this prefix. They appear in slash command autocomplete without any namespace — just /assess-repo instead of /launch:assess-repo.

This creates collisions when multiple plugins define skills with similar names, and makes it harder for users to identify which plugin a skill belongs to. The (plugin-name) label appears in the description but the actual invocation name is unprefixed.

Currently the only workaround is to also create commands/ wrappers that delegate to the skill, but this duplicates definitions and the commands/ format is deprecated.

Acceptance Criteria

  • Skills defined in skills/*/SKILL.md are prefixed with the plugin name in slash command autocomplete, matching the commands/ behavior (e.g., /launch:assess-repo instead of /assess-repo)
  • The Skill tool also accepts the prefixed form (e.g., skill: "launch:assess-repo")
  • Existing unprefixed invocations continue to work for backwards compatibility (or a migration path is documented)

Notes

  • Commands namespace pattern: plugin-name/commands/foo.md/plugin-name:foo
  • Expected skills pattern: plugin-name/skills/foo/SKILL.md/plugin-name:foo
  • Current skills behavior: plugin-name/skills/foo/SKILL.md/foo with (plugin-name) label
  • The plugin name comes from the name field in plugin.json
  • This was discovered while building a multi-plugin repo (replicated-claude-marketplace) where ce, launch, gtm, and support plugins coexist — skill name collisions become likely without namespacing
  • Reference: plugins/plugin-dev/skills/command-development/SKILL.md documents the command namespacing behavior

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions