Skills not loading from .claude/skills/ directory
Description
Skills defined in .claude/skills/ directory are not appearing in the Skill tool's available skills list.
Environment
- Platform: Linux (NixOS)
- OS Version: Linux 6.12.63
- Model: claude-sonnet-4-5-20250929
Current Behavior
The Skill tool description shows an empty available skills list:
Available skills:
However, skills exist in .claude/skills/ with proper formatting:
.claude/skills/anki-eng-card/skill.md.claude/skills/anki-polish-card/skill.md
Both skills have correct frontmatter:
---
name: anki-eng-card
description: Creates English-Russian Anki flashcards in Obsidian...
---
Expected Behavior
Skills from .claude/skills/ should be loaded and appear in the "Available skills:" list, allowing them to be invoked via the Skill tool.
Steps to Reproduce
- Create skills in
.claude/skills/<skill-name>/skill.mdwith proper frontmatter - Start Claude Code session
- Check Skill tool description - skills list is empty
- Skills cannot be invoked
Root Cause Analysis
Investigation revealed a permissions issue with the Claude Code temp directory:
$ ls -la /tmp/claude/
drwxr-xr-x 3 root root 4096 Dec 21 11:36 .
drwxrwxrwt 106 root root 12288 Jan 10 21:45 ..
drwxr-xr-x 3 root root 4096 Dec 21 11:36 -etc-nixos
The /tmp/claude/ directory is owned by root:root with 755 permissions, preventing non-root users from creating workspace-specific directories like /tmp/claude/-home-gor-obsidian/.
Error observed:
EACCES: permission denied, mkdir '/tmp/claude/-home-gor-obsidian/tasks'
Claude Code appears to need write access to /tmp/claude/ to process and cache skills, but fails silently when it cannot create the necessary directories.
Potential Fixes
- User workaround: Change ownership of
/tmp/claude/to the current user
``bash``
sudo chown -R $USER:$USER /tmp/claude/
- Claude Code fix: Create temp directories with correct user permissions or handle permission errors gracefully with appropriate error messages
Impact
Users cannot use custom skills even when properly configured, limiting extensibility of Claude Code. This particularly affects NixOS users where system directories may be created with root ownership.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗