Plugin skills/ directory does not register slash commands — only commands/ works
Resolved 💬 2 comments Opened Apr 1, 2026 by dtadpole Closed Apr 26, 2026
Bug Description
Plugin skills defined in skills/*/SKILL.md are loaded as Agent Skills (model invocation via the Skill tool works), but they are not registered as user-invocable slash commands. Typing /plugin-name:skill-name at the CLI prompt returns Unknown skill.
Only files in the commands/ directory register as slash commands. This contradicts the official documentation.
Steps to Reproduce
- Create a plugin with a skill in
skills/:
my-plugin/
├── .claude-plugin/
│ └── plugin.json # {"name": "my-plugin", "version": "1.0.0"}
└── skills/
└── hello/
└── SKILL.md # frontmatter: name, description
- Install or load the plugin (via marketplace or
--plugin-dir) - Run
/reload-plugins— the skill count does not include skills fromskills/ - Type
/my-plugin:hello→Unknown skill: my-plugin:hello
Expected Behavior
Per the Plugins documentation quickstart (Step 3–4):
Skills live in theskills/directory. Each skill is a folder containing aSKILL.mdfile. The folder name becomes the skill name, prefixed with the plugin's namespace (hello/in a plugin namedmy-first-plugincreates/my-first-plugin:hello).
The skill should be invocable as /my-plugin:hello.
Actual Behavior
/reload-pluginsoutput counts onlycommands/*.mdfiles in the "skills" total —skills/*/SKILL.mdfiles are not counted- The Skill tool (model-side invocation) works fine — the skills appear in the system prompt and Claude can invoke them
- But user-side
/slash command invocation returnsUnknown skill
Workaround
Adding a duplicate commands/hello.md file with the same content makes the slash command work. After adding commands/ files, the reload count increases and /plugin:skill resolves correctly.
This is not ideal because:
commands/is marked as legacy in the Plugins reference: "Skill Markdown files (legacy; useskills/for new skills)"- Content must be duplicated between
commands/andskills/if both slash command and supporting-file features are needed
Environment
- Claude Code version: 2.1.89
- OS: Linux (Ubuntu)
Documentation References
- Create plugins – Add a skill: shows
skills/creating/plugin:skill - Skills – Frontmatter reference:
user-invocablefield defaults totrue - Plugins reference – File locations: marks
commands/as legacy
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗