[Bug] Plugin marketplace installs skills to wrong directory path

Resolved 💬 3 comments Opened Oct 26, 2025 by echkenluo Closed Oct 30, 2025

Bug Description
## Bug Description
Skills installed through /plugin marketplace add are saved to ~/.claude/plugins
but Claude Code searches for skills in ~/.claude/skills, causing installed skills
to not be recognized.

## Steps to Reproduce

  1. Run /plugin marketplace add <skill-name>
  2. Installation completes successfully, skill saved to ~/.claude/plugins
  3. Restart Claude Code
  4. Check available skills - the installed skill is not listed
  5. Check debug logs - skill search path shows ~/.claude/skills but not ~/.claude/plugins

## Expected Behavior
Skills installed via plugin marketplace should be automatically recognized after restart

## Actual Behavior
Skills are not recognized because installation path != search path

## Workaround
Manually move skills from ~/.claude/plugins to ~/.claude/skills

## Environment

  • Platform: macOS (Darwin 24.5.0)

Environment Info

  • Platform: darwin
  • Terminal: cursor
  • Version: 2.0.27
  • Feedback ID:

Errors

[{"error":"Error: 1: 1 \n    at Dm8 (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1310:3994)\n    at async Fm8 (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1310:1604)","timestamp":"2025-10-26T10:08:05.725Z"},{"error":"AxiosError: Request failed with status code 403\n    at UR (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:24:1136)\n    at Unzip.<anonymous> (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:29:9845)\n    at Unzip.emit (node:events:530:35)\n    at Unzip.emit (node:domain:489:12)\n    at endReadableNT (node:internal/streams/readable:1698:12)\n    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)\n    at g3A.request (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:31:2129)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async dh2 (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:3574:15030)","timestamp":"2025-10-26T10:08:06.868Z"},{"error":"Error: Language not supported while highlighting code, falling back to markdown: \n    at JD (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1175:4413)\n    at file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1175:4141\n    at Array.map (<anonymous>)\n    at MF (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1175:4132)\n    at ATQ (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1798:6306)\n    at Cw (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:73:19414)\n    at Ao (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:75:42806)\n    at T9 (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:75:38347)\n    at Uc (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:75:38275)\n    at qw (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:75:38129)","timestamp":"2025-10-26T10:12:43.001Z"},{"error":"AxiosError: Request failed with status code 403\n    at UR (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:24:1136)\n    at Unzip.<anonymous> (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:29:9845)\n    at Unzip.emit (node:events:530:35)\n    at Unzip.emit (node:domain:489:12)\n    at endReadableNT (node:internal/streams/readable:1698:12)\n    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)\n    at g3A.request (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:31:2129)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async v2I (file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1558:467)\n    at async Promise.all (index 0)\n    at async file:///Users/echken/.nvm/versions/node/v22.16.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1544:11827","timestamp":"2025-10-26T10:13:35.519Z"}]

View original on GitHub ↗

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