[BUG] Custom slash command naming conflict with built-in Skill tool silently prevents ALL commands from loading
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
A custom slash command named /skill (in .claude/commands/skill.md) conflicts with the built-in
Skill tool. This causes ALL custom commands to silently fail to load—not just the conflicting
one.
Steps to Reproduce:
- Create .claude/commands/skill.md with valid frontmatter
- Create other commands (e.g., /video, /brand, /template)
- Start Claude Code
- Try to use any custom slash command - none are available
- Debug logs show Slash commands included in SlashCommand tool: is empty
Expected Behavior:
- Clear error message about the naming collision, OR
- Only the conflicting command fails, other commands still load
Actual Behavior:
- All custom commands silently fail to load
- No error or warning shown
- Skills in .claude/skills/ load fine (only commands affected)
Workaround:
Rename /skill to /skills - all commands then load correctly.
Impact:
This is a silent, cascading failure. Users may spend significant time debugging permissions,
frontmatter, encoding, etc. when the root cause is a non-obvious naming collision.
What Should Happen?
One of:
- Naming validation at startup that warns about conflicts with built-in tools
- Graceful degradation - only the conflicting command fails, others still load
- Clear error message: "Command '/skill' conflicts with built-in 'Skill' tool"
Any of these would prevent silent failure and save debugging time.
Error Messages/Logs
No error message is displayed. Debug logs show:
Slash commands included in SlashCommand tool:
(empty - no commands loaded)
Steps to Reproduce
---
Steps to Reproduce:
- Create .claude/commands/skill.md with valid frontmatter:
---
description: List installed skills
---
# Skill
...
- Have other custom commands in .claude/commands/ (e.g., video.md, brand.md)
- Start Claude Code
- Try /video or any custom command - none are available
- Check with /help - custom commands not listed
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
v2.0.64
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗