Skip to content

Fix marketplace.json source format for Claude Code install#18

Closed
rushikeshmore wants to merge 1 commit intoShopify:mainfrom
rushikeshmore:fix/claude-code-marketplace-source-format
Closed

Fix marketplace.json source format for Claude Code install#18
rushikeshmore wants to merge 1 commit intoShopify:mainfrom
rushikeshmore:fix/claude-code-marketplace-source-format

Conversation

@rushikeshmore
Copy link
Copy Markdown

Summary

Fixes #10. /plugin install shopify-plugin@shopify-ai-toolkit currently fails with Invalid input on plugins[0].source because marketplace.json sets source to the bare string "./", which is not a valid shape per the Claude Code plugin marketplace schema.

Per the official plugin-marketplaces docs, a plugin source must be either:

  • a relative path string that points to a plugin subdirectory (e.g. "./plugins/my-plugin"), or
  • an object with one of github, url, git-subdir, or npm.

Since plugin.json and .claude-plugin/ already live at the repo root here, the simplest fix that avoids any layout change is the github source form. That's also the variant used by most entries in the official anthropics/claude-plugins-official marketplace.

Change

.claude-plugin/marketplace.json:

-      "source": "./",
+      "source": {
+        "source": "github",
+        "repo": "Shopify/Shopify-AI-Toolkit"
+      },

No plugin contents moved. No other files touched.

Note: I deliberately did not adopt the {"source": "local", "path": "./"} shape suggested in the issue body — "local" is not one of the source types in the current schema, so that would still fail validation. The github form is documented and covers this case.

Verification

  • claude plugin validate .✔ Validation passed on this branch (fails on main).
  • After this lands, the install flow from the issue (/plugin marketplace add Shopify/Shopify-AI-Toolkit then /plugin install shopify-plugin@shopify-ai-toolkit) should complete without schema errors, since the marketplace catalog now points Claude Code at the same repo to fetch the plugin contents.

Test plan

  • claude plugin validate . passes
  • /plugin marketplace add Shopify/Shopify-AI-Toolkit succeeds
  • /plugin install shopify-plugin@shopify-ai-toolkit succeeds on Claude Code v2.x
  • Installed plugin exposes the 16 skills under skills/

The plugins[0].source field used the string "./" which fails Claude
Code's plugin schema validation, causing /plugin install to error out
with "Invalid input" on the source field.

Replace with the documented github source object pointing at this repo.
This lets Claude Code clone the plugin contents on install without
requiring any change to the plugin layout (plugin.json and
.claude-plugin/ remain at repo root).

Validated locally with `claude plugin validate .` (passes).

Reference: https://code.claude.com/docs/en/plugin-marketplaces#plugin-sources

Closes Shopify#10
@github-actions
Copy link
Copy Markdown
Contributor

Thanks for your interest but we don't accept pull requests. Any pull requests will be automatically closed.

If you have feedback or suggestions, please share them in the Shopify Developer Community.

If you are a Shopify employee, please reach out to Dev Tools: Dev Experience team at help-dev-platform.

@github-actions github-actions Bot closed this Apr 18, 2026
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.

Plugin installation fails on Claude Code - incompatible marketplace.json source format

1 participant