Skill auto-namespacing does not work as documented

Resolved 💬 3 comments Opened Jan 26, 2026 by sstraus Closed Jan 30, 2026

Description

The documentation states that plugin skills are automatically namespaced with the plugin name, but this does not actually happen. Skills use exactly what's in the YAML name: field with no automatic prefixing.

Documentation Says

From https://code.claude.com/docs/en/plugins:

"Plugin skills are always namespaced (like /greet:hello). The folder name becomes the skill name, prefixed with the plugin's namespace."

Actual Behavior

  • Skills use EXACTLY what's in the YAML name: field
  • If YAML has name: my-plugin:stories, skill appears as /my-plugin:stories
  • If YAML has name: stories, skill appears as /stories (no auto-prefix added)
  • No automatic namespacing occurs

Example

Plugin structure:

my-plugin/
├── .claude-plugin/
│   └── plugin.json  # name: "my-plugin"
└── skills/
    └── stories/
        └── SKILL.md  # name: stories

Expected (per documentation): Skill appears as /my-plugin:stories
Actual: Skill appears as /stories

Impact

  • Plugin developers following the documentation get unexpected behavior
  • Potential naming conflicts between plugins if developers don't manually add prefixes
  • Confusion about whether to include the prefix in YAML or not

Suggested Fix

Either:

  1. Implement auto-namespacing as documented
  2. Update documentation to reflect actual behavior (manual prefixing required)

Environment

  • OS: macOS Darwin 25.2.0
  • Date: 2026-01-26

View original on GitHub ↗

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