Slash commands fail to load with 'Unknown skill' error (199 commands, v2.1.89)

Resolved 💬 2 comments Opened Apr 1, 2026 by gmartuccils Closed Apr 1, 2026

Bug Report

Description

All custom slash commands (from .claude/commands/) stopped being discovered by Claude Code, returning "Unknown skill" when invoked. This happened across all projects, not just one workspace.

Environment

  • Claude Code version: 2.1.89 (latest at time of report)
  • OS: macOS (Darwin 24.6.0)
  • Number of .claude/commands/ files: 199
  • All files validated: valid UTF-8, proper YAML frontmatter, no BOM, no subdirectories, no broken symlinks

Steps to Reproduce

  1. Have ~199 .md files in .claude/commands/
  2. Start a new Claude Code session
  3. Type /challenger-review (or any custom skill)
  4. Get "Unknown skill: challenger-review"

Troubleshooting Attempted

All of the following were tried with no effect:

  • Restarting Claude Code (multiple times)
  • Disabling all plugins
  • Disabling experimental CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS env var
  • Removing auto mode from settings.json
  • Testing in a completely different project directory (same failure)
  • Verifying file validity (frontmatter, encoding, symlinks all clean)

Resolution

The issue resolved itself after some time — possibly after a restart cycle or cache expiration. The root cause was never identified.

Expected Behavior

All valid .md files in .claude/commands/ should be discoverable as slash commands in every session.

Actual Behavior

Commands silently fail to index. No error at startup, no warning — just "Unknown skill" when trying to invoke any custom command.

Notes

  • This appears to be an intermittent/transient bug — skills were working before and started working again later
  • With 199 skills this could be related to scale/indexing, but the error happened across all projects (including ones with fewer commands via symlinks)
  • No version change fixed it — downgrade to 2.1.88 was planned but the issue resolved before testing

View original on GitHub ↗

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