Skills require full CLI restart to register as slash commands; no diagnostic feedback when missing

Resolved 💬 3 comments Opened Apr 26, 2026 by awesumscott Closed Apr 30, 2026

When a skill is added or modified, it does not register as a typeable /command until Claude Code is fully restarted. There is no indication of this in the UI — the command simply returns "Unknown command" as if the skill doesn't exist.

Steps to reproduce

  1. Create .claude/skills/my-skill/skill.md with valid frontmatter
  2. Without restarting, type /my-skill
  3. Observe: "Unknown command"
  4. Fully exit and restart Claude Code
  5. Type /my-skill — now works

Expected behavior

Either hot-reload skills when files change, or show a message like "skill registered but requires restart to use as a slash command."

Additional context

Skills load into the system-reminder (available for auto-invocation) before restart, which makes the failure confusing — the skill appears to be "loaded" but isn't typeable. Took significant troubleshooting across two projects to identify the restart requirement.

Filename case issue (WSL2 / NTFS): Claude Code creates skills as SKILL.md (uppercase) by default. Slash command routing requires skill.md (lowercase). On NTFS via WSL2, mv SKILL.md skill.md is a no-op — the filesystem treats the names as identical. The fix requires a two-step rename: mv SKILL.md skill.tmp && mv skill.tmp skill.md. There is no warning or error that the case mismatch is the cause of the "Unknown command" failure.

View original on GitHub ↗

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