[BUG] Plugin source "path" field ignored for GitHub sources — entire repo used as plugin root

Resolved 💬 3 comments Opened Feb 17, 2026 by nikitakreskinsemrushcom Closed Feb 21, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When a plugin source in marketplace.json uses a GitHub source with a path field, Claude Code clones the entire repository but ignores the path — it treats the repo root as the plugin root instead of navigating to the specified subdirectory.

Minimal reproduction marketplace.json:

{
"name": "path-bug-test-marketplace",
"owner": {
"name": "test-user",
"email": "test-user@example.com"
},
"plugins": [
{
"name": "sm-context7",
"source": {
"source": "github",
"repo": "anthropics/claude-plugins-official",
"path": "external_plugins/context7"
}
}
]
}

After installing, installed_plugins.json records:

"sm-context7@path-bug-test-marketplace": [
{
"installPath": "~/.claude/plugins/cache/path-bug-test-marketplace/sm-context7/27d2b86d72da",
"version": "27d2b86d72da"
}
]

The installPath points to the cloned repo root. The actual plugin content exists at the path subdirectory but is never resolved:

The context7 MCP server never appears in the session. The plugin shows as installed and enabled but contributes nothing.

What Should Happen?

The path field should make Claude Code resolve the plugin root to <cache_root>/external_plugins/context7/, find plugin.json there, and load the MCP server defined in .mcp.json.

The path field is documented in the https://code.claude.com/docs/en/plugin-marketplaces#marketplace-schema under strictKnownMarketplaces: "For GitHub sources: repo is required, and ref or path must also match if specified in the allowlist". While this references allowlist matching, the field is clearly accepted by the schema for plugin sources too — it just has no effect or ignored.

Error Messages/Logs

Steps to Reproduce

  1. Create .claude-plugin/marketplace.json with the minimal example above
  2. Add marketplace: /plugin marketplace add ./
  3. Install plugin: /plugin install sm-context7@path-bug-test-marketplace
  4. Observe: plugin appears installed and enabled in settings.json
  5. Check ~/.claude/plugins/installed_plugins.json — installPath points to repo root, not external_plugins/context7/
  6. Check cache directory — entire anthropics/claude-plugins-official repo is cloned, context7 content exists at subdirectory but is unused
  7. The context7 MCP server does not appear in the session

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.44

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

PyCharm terminal

Additional Information

_No response_

View original on GitHub ↗

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