Skills not loading: ENOENT error on managed skills directory aborts user skills loading

Resolved 💬 2 comments Opened Jan 24, 2026 by hitanjan Closed Feb 28, 2026

Skills not loading: ENOENT error on managed skills directory aborts user skills loading

Summary

Claude Code CLI v2.1.19 (npm installation) fails to load any skills from ~/.claude/skills/ due to a fatal error when attempting to scan the non-existent managed skills directory.

Root Cause

From debug logs:

2026-01-24T11:49:45.465Z [DEBUG] Loading skills from: managed=/Library/Application Support/ClaudeCode/.claude/skills, user=/Users/hitanjan/.claude/skills, project=[]
2026-01-24T11:49:45.474Z [ERROR] Error: Error: ENOENT: no such file or directory, scandir '/Library/Application Support/ClaudeCode/.claude/skills'
2026-01-24T11:49:45.505Z [DEBUG] Loaded 0 unique skills (managed: 0, user: 0, project: 0, legacy commands: 0)

The CLI attempts to scan the "managed" directory first. When it doesn't exist (common in npm installations), the error aborts the entire skills loading process.

Environment

  • Version: 2.1.19 (npm installation)
  • Platform: macOS Darwin 23.3.0
  • Installation: npm via nvm
  • Node: v24.13.0

Steps to Reproduce

  1. Install via npm: npm install -g @anthropic-ai/claude-code
  2. Create skills in ~/.claude/skills/ with valid frontmatter
  3. Launch claude
  4. Result: "No skills found" despite 20+ valid skill files

Expected vs Actual

Expected: Load user skills even if managed directory missing
Actual: Abort entire skills loading on first directory error

Impact

  • Affects all npm installations
  • Custom skills completely non-functional
  • No workaround available
  • User is considering switching to opencode due to this blocking issue

Suggested Fix

Use try-catch per directory instead of aborting on first failure. Missing managed directory should be a warning, not fatal error.

View original on GitHub ↗

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