Bug: Global skills not being loaded from ~/.claude/skills/ (v2.1.29)

Resolved 💬 3 comments Opened Feb 2, 2026 by pedromontanes Closed Feb 6, 2026

Bug Report

Version: Claude Code 2.1.29

Description

Claude Code is not loading user-defined skills from ~/.claude/skills/ directory. The system only recognizes 1 skill (keybindings-help) despite having 32 correctly formatted skill files.

Environment

  • OS: macOS (Darwin 24.6.0)
  • Claude Code Version: 2.1.29
  • Skills Directory: ~/.claude/skills/
  • Number of Skills: 32 YAML files

Steps to Reproduce

  1. Create skills in ~/.claude/skills/ with correct YAML format (name, description, version, instruction)
  2. Start Claude Code
  3. Try to use a skill with /skill-name or via the Skill tool
  4. Skills are not recognized

Expected Behavior

  • All 32 skills should be loaded and available
  • Skills should be invokable via /skill-name slash commands
  • The assistant should receive the list of available skills in the system message

Actual Behavior

  • Only 1 skill appears in the system message: keybindings-help
  • Skills cannot be invoked with /skill-name commands
  • Error: "Unknown skill: skill-name"

Evidence

Skills directory exists and contains files:
\\\bash
$ ls -la ~/.claude/skills/
total 704
drwxr-xr-x 33 pedromontanes staff 1056 Feb 2 10:02 .
drwxr-xr-x 20 pedromontanes staff 640 Feb 2 12:20 ..
-rw-r--r-- 1 pedromontanes staff 9968 Jan 22 16:45 auto-fix-architecture.yaml
-rw-r--r-- 1 pedromontanes staff 11228 Jan 22 16:46 auto-fix-styles.yaml
-rw-r--r-- 1 pedromontanes staff 7624 Jan 30 12:53 auto-refactor-stores.yaml
-rw-r--r-- 1 pedromontanes staff 9050 Jan 23 09:38 create-api-route.yaml
-rw-r--r-- 1 pedromontanes staff 10874 Jan 23 07:12 create-component.yaml
-rw-r--r-- 1 pedromontanes staff 17488 Jan 23 07:12 create-composable.yaml
-rw-r--r-- 1 pedromontanes staff 12347 Jan 30 12:51 create-crud-page.yaml
-rw-r--r-- 1 pedromontanes staff 10968 Jan 30 12:50 create-crud-store.yaml
-rw-r--r-- 1 pedromontanes staff 3361 Jan 22 16:29 create-dao.yaml
-rw-r--r-- 1 pedromontanes staff 1599 Jan 22 16:28 create-entity.yaml
-rw-r--r-- 1 pedromontanes staff 15647 Jan 30 12:55 create-generic-card.yaml
-rw-r--r-- 1 pedromontanes staff 4416 Jan 22 16:31 create-interface.yaml
-rw-r--r-- 1 pedromontanes staff 12696 Jan 30 17:00 create-md-page.yaml
-rw-r--r-- 1 pedromontanes staff 10230 Jan 22 16:55 create-middleware.yaml
-rw-r--r-- 1 pedromontanes staff 10225 Jan 30 12:54 create-notification-wrapper.yaml
-rw-r--r-- 1 pedromontanes staff 16013 Jan 23 07:11 create-page.yaml
-rw-r--r-- 1 pedromontanes staff 19955 Jan 23 09:40 create-store.yaml
-rw-r--r-- 1 pedromontanes staff 11439 Jan 30 16:59 create-ticket-system.yaml
-rw-r--r-- 1 pedromontanes staff 5672 Jan 23 09:38 create-usecase.yaml
-rw-r--r-- 1 pedromontanes staff 16024 Jan 30 13:09 generate-skills-page.yaml
-rw-r--r-- 1 pedromontanes staff 4094 Jan 22 16:30 init-clean-arch.yaml
-rw-r--r-- 1 pedromontanes staff 10830 Jan 22 16:52 init-pinia.yaml
-rw-r--r-- 1 pedromontanes staff 13154 Jan 22 16:49 init-tailwind.yaml
-rw-r--r-- 1 pedromontanes staff 3228 Jan 26 13:29 md-to-pdf.yaml
-rw-r--r-- 1 pedromontanes staff 5209 Jan 22 16:30 review-architecture.yaml
-rw-r--r-- 1 pedromontanes staff 7508 Jan 22 16:37 review-styles.yaml
-rw-r--r-- 1 pedromontanes staff 11729 Jan 22 16:35 setup-design-tokens.yaml
-rw-r--r-- 1 pedromontanes staff 12802 Feb 2 10:02 task.yaml
-rw-r--r-- 1 pedromontanes staff 12168 Jan 30 17:01 update-project-tracker.yaml
-rw-r--r-- 1 pedromontanes staff 6897 Jan 26 09:45 view-markdown.yaml
\
\\

Example skill file (md-to-pdf.yaml) has correct format:
\\\`yaml
name: md-to-pdf
description: Genera un PDF profesional desde un archivo Markdown con variables procesadas
version: 1.0.0
author: Pedro Montañés

instruction: |
[... valid instruction content ...]
\\\`

Settings file is minimal:
\\\json
{
"model": "sonnet"
}
\
\\

Claude CLI shows skills support:
\\\bash
$ claude --help | grep -i skill
--disable-slash-commands Disable all skills
\
\\

Additional Notes

  • Skills were working in previous versions or expected to work based on documentation
  • No error messages or logs found in ~/.claude/
  • Attempting to invoke skills results in "Unknown skill: skill-name" error
  • Only keybindings-help skill is recognized by the system

Impact

Users cannot use their custom skills, significantly reducing productivity and workflow automation capabilities.

View original on GitHub ↗

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