Custom slash commands not loading despite proper configuration
Resolved 💬 3 comments Opened Nov 3, 2025 by dinana Closed Nov 7, 2025
Environment
- OS: Linux (WSL2 -
6.6.87.2-microsoft-standard-WSL2) - Claude Code Version: Latest (as of 2025-11-03)
- Working Directory: Project root directory in WSL2
Issue Description
Custom slash commands in .claude/commands/ are not being discovered or loaded by Claude Code, despite meeting all documented requirements.
Setup Details
- Commands location:
.claude/commands/*.md(9 command files present) - File format: Proper YAML frontmatter with
descriptionfield - Example commands: Files like
speckit.analyze.md,test.md, etc. - File permissions: 644 (readable)
- Ripgrep: Installed and working (v14.1.0)
- Permissions config:
.claude/settings.local.jsonincludesSlashCommand(*)in allow list
Commands Structure Example
---
description: Simple test command
---
This is a test command. Please respond with "Test command executed successfully!"
Steps Taken
- Created command files in
.claude/commands/with proper frontmatter - Verified ripgrep is installed (
rg --versionshows 14.1.0) - Updated
.claude/settings.local.jsonto includeSlashCommand(*)in permissions allow list - Restarted Claude Code multiple times
- Created simple test command to rule out complex command issues
- Verified file permissions and encoding (UTF-8)
Expected Behavior
Commands should appear in available slash commands list and be invokable via /command-name
Actual Behavior
- Commands do not appear in Claude's available commands list
- Attempting to invoke commands results in "Unknown slash command" error
- Claude reports sluggish performance on restart (possibly related to command discovery process failing)
Additional Notes
The documentation mentions that custom slash commands require ripgrep for discovery, which is installed and working. All filesystem checks show correct setup, suggesting this may be a bug in the command discovery/loading mechanism.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗