[BUG] Plugin skills don't register as user-invocable slash commands via marketplace; CLI silently fails for GHE

Resolved 💬 3 comments Opened Mar 25, 2026 by DevOpsDave Closed Mar 28, 2026

Summary

Three related issues make plugin skill distribution via marketplaces broken or misleading, particularly for GitHub Enterprise (GHE) users.

Environment

  • Claude Code: 2.1.81 (native)
  • Platform: macOS (Darwin 25.3.0)
  • Git host: GitHub Enterprise (GHE)

Bug 1: Plugin auto-namespacing doesn't create user-invocable slash commands

Expected: Per the plugin docs, a skill at skills/commit/SKILL.md in a plugin named crwp should register as /crwp:commit in the / autocomplete menu.

Actual: The skill only registers for model invocation (via the Skill tool). It does NOT appear as a user-invocable slash command. Typing /crwp:commit returns "Unknown skill."

Workaround: Naming the directory skills/crwp:commit/ makes the slash command /crwp:commit work, but the Skill tool then shows it as crwp:crwp:commit (double-namespaced).

Reproduction:

  1. Create a plugin with "name": "crwp" in plugin.json
  2. Add skills/hello/SKILL.md with user-invocable: true
  3. Load via --plugin-dir or marketplace cache
  4. Type /crwp:hello — returns "Unknown skill"
  5. Rename directory to skills/crwp:hello//crwp:hello now works

Bug 2: claude plugin marketplace add and claude plugin install silently fail for GHE

Expected: claude plugin marketplace add https://ghe.example.com/Org/repo.git should clone the repo into ~/.claude/plugins/marketplaces/.

Actual: Command produces no output (no error, no success message) and writes no files. git clone with the same URL works fine. gh CLI is authenticated to the same GHE instance.

Impact: Forces manual cache setup — users must git clone the marketplace repo and manually copy plugin files into ~/.claude/plugins/cache/ to get plugins working.

Bug 3: /reload-plugins doesn't pick up plugin cache changes

Expected: After updating files in ~/.claude/plugins/cache/, /reload-plugins should load the updated skills.

Actual: /reload-plugins reports the plugin count but doesn't reflect cache changes. A full new session is required. This makes debugging plugin issues extremely time-consuming.

Impact

These three issues together made what should have been a 5-minute plugin setup into a multi-hour debugging session. The docs describe a clean workflow that doesn't work end-to-end. The silent failures provide no diagnostic information.

View original on GitHub ↗

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