claude-code icon indicating copy to clipboard operation
claude-code copied to clipboard

[BUG] Skills not discovered on Linux due to case-sensitive filename matching (SKILL.md vs skill.md)

Open kicksent opened this issue 1 day ago • 0 comments

Environment

  • OS: Ubuntu 24.04.2 LTS (tested on two separate Linux machines)
  • Claude Code version: 2.1.2
  • Filesystem: ext4 (case-sensitive)
  • Comparison: Same skills work correctly on macOS

Bug Description

Skills created with skill.md (lowercase) are not discovered on Linux but work on macOS. This is because Linux filesystems (ext4) are case-sensitive while macOS (APFS/HFS+) is case-insensitive by default.

Claude Code appears to look for SKILL.md (uppercase), which:

  • ✅ Works on macOS (case-insensitive, finds skill.md)
  • ❌ Fails on Linux (case-sensitive, does not find skill.md)

Steps to Reproduce

  1. Create a skill on macOS or Linux with the file named skill.md (lowercase)
  2. On macOS: skill appears in / autocomplete ✅
  3. On Linux: skill does not appear, "skill not found" error ❌

Workaround

Rename skill.md to SKILL.md:

find ~/.claude/skills -name "skill.md" -type f -exec sh -c 'mv "$1" "$(dirname "$1")/SKILL.md"' _ {} \;

Expected Behavior

Claude Code should match skill filenames case-insensitively, or clearly document that SKILL.md (uppercase) is required.

Suggested Fix

In the skill discovery code, use case-insensitive matching for SKILL.md / skill.md to ensure cross-platform compatibility.

kicksent avatar Jan 09 '26 00:01 kicksent