Skip to content

Conversation

@banjoey
Copy link

@banjoey banjoey commented Jan 14, 2026

Summary

Claude Code natively scans ~/.claude/skills/ for skills, but users with custom PAI_DIR settings (e.g., ~/PAI) couldn't have their skills auto-discovered. This fix:

  • Updates the installer to use config.installDir instead of a hardcoded path
  • Detects when PAI_DIR differs from ~/.claude and explains the skill discovery issue
  • Offers to create a symlink from ~/.claude/skills$PAI_DIR/skills
  • Handles edge cases (existing symlinks, directories, conflicts)
  • Updates INSTALL.md with a symlink question and creation step
  • Updates VERIFY.md with symlink verification checklist and script
  • Changes the default from ~/.config/pai to ~/.claude to match Claude Code's native path

Problem

When PAI_DIR is set to something other than ~/.claude, skills are installed to $PAI_DIR/skills/ but Claude Code only looks in ~/.claude/skills/ natively. This meant skills wouldn't be auto-discovered, leading to confusion about why skill routing wasn't working.

Solution

The installer now:

  1. Detects if PAI_DIR differs from ~/.claude
  2. Explains the Claude Code skill discovery behavior
  3. Offers to create a symlink to bridge the gap
  4. Provides manual instructions if the user declines

Test Plan

  • Fresh install with default PAI_DIR (no symlink needed)
  • Fresh install with custom PAI_DIR - accept symlink creation
  • Fresh install with custom PAI_DIR - decline symlink, verify manual instructions shown
  • Update mode preserves existing settings
  • Symlink creation handles existing directory at target path
  • Symlink creation handles existing symlink pointing elsewhere
  • VERIFY.md script correctly reports symlink status

🤖 Generated with Claude Code

Claude Code natively scans ~/.claude/skills/ for skills, but users with
custom PAI_DIR settings (e.g., ~/PAI) couldn't have their skills auto-
discovered because the skills were installed elsewhere.

This fix:
- Updates installer to use config.installDir instead of hardcoded path
- Detects when PAI_DIR differs from ~/.claude and explains the issue
- Offers to create a symlink from ~/.claude/skills to $PAI_DIR/skills
- Handles edge cases (existing symlinks, directories, conflicts)
- Updates INSTALL.md with symlink question and creation step (Phase 4.1.1)
- Updates VERIFY.md with symlink verification checklist and script
- Changes default from ~/.config/pai to ~/.claude to match Claude Code

Discovered when skills were installed to ~/PAI but Claude Code couldn't
find them because it only scans ~/.claude/skills/ natively.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@peterlynch
Copy link

Naturally I wanted to isolate PAI from claude and the docs lead AI and me to believe PAI_DIR was the way.

I hit the problem described myself and thought I must be holding it wrong :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants