claude-code - 💡(How to fix) Fix [BUG] Plugin install rejects skills[] object-form with misleading 'Update Claude Code' error on latest version

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Claude Code 2.1.145 (latest published per npm view @anthropic-ai/claude-code dist-tags) rejects a marketplace plugin entry whose skills[] array uses the object form with explicit slash-command invocation bindings:

"skills": [
  { "name": "generate", "path": "higgsfield-generate", "invoke": "/higgsfield:generate" }
]

with the error:

Failed to install: This plugin uses a source type your Claude Code version does not support. Update Claude Code and try again.

The error is misleading on two axes:

  1. The CLI is already the latest published version (2.1.145, both latest and next per npm). There is nothing to update to.
  2. The rejected field is not source. The plugin's source: "./" is valid and works on multiple other marketplaces I have installed (anthropic-agent-skills, ui-ux-pro-max-skill). The actual rejection appears to be the skills[] shape, but the error attributes it to "source type."

This is a different root cause from #56043 (marketplace-name collision producing the same string) and overlaps the docs gap in #53076 (unrecognized source format behavior). The common thread is that this exact error message is emitted as a catch-all for any unrecognized schema field, making it actively misleading for end users and difficult to diagnose without reading other marketplaces' manifests side-by-side.

Error Message

with the error: The error is misleading on two axes: 2. The rejected field is not source. The plugin's source: "./" is valid and works on multiple other marketplaces I have installed (anthropic-agent-skills, ui-ux-pro-max-skill). The actual rejection appears to be the skills[] shape, but the error attributes it to "source type." This is a different root cause from #56043 (marketplace-name collision producing the same string) and overlaps the docs gap in #53076 (unrecognized source format behavior). The common thread is that this exact error message is emitted as a catch-all for any unrecognized schema field, making it actively misleading for end users and difficult to diagnose without reading other marketplaces' manifests side-by-side.

  1. Improve the error message. Whatever the parser rejects, the message should name the specific field path that failed (e.g. marketplace 'higgsfield' plugin 'higgsfield': skills[0] must be a string, got object) instead of attributing it to "source type" and advising an update that doesn't exist. The "Update Claude Code and try again" suffix should be removed unless the parser has actually determined a version-incompatibility (which is impossible when the user is already on the latest published version).
  • #56043 — same misleading "source type not supported" error, different trigger (marketplace name collision)

Root Cause

This is a different root cause from #56043 (marketplace-name collision producing the same string) and overlaps the docs gap in #53076 (unrecognized source format behavior). The common thread is that this exact error message is emitted as a catch-all for any unrecognized schema field, making it actively misleading for end users and difficult to diagnose without reading other marketplaces' manifests side-by-side.

Fix Action

Workaround

Patch the local ~/.claude/plugins/marketplaces/<name>/.claude-plugin/marketplace.json to convert skills[] object entries to string entries pointing at the skill directories. Note this is fragile — /plugin marketplace update <name> will git pull and overwrite it.

Code Example

"skills": [
  { "name": "generate", "path": "higgsfield-generate", "invoke": "/higgsfield:generate" }
]

---

# 1. Add the higgsfield marketplace
/plugin marketplace add higgsfield-ai/skills

# 2. Attempt install
/plugin install higgsfield@higgsfield

---

{
  "name": "higgsfield",
  "owner": { "name": "Higgsfield AI", "url": "https://higgsfield.ai" },
  "plugins": [
    {
      "name": "higgsfield",
      "source": "./",
      "description": "Image/video generation, Marketing Studio, ...",
      "version": "0.3.0",
      "skills": [
        { "name": "generate", "path": "higgsfield-generate", "invoke": "/higgsfield:generate" },
        { "name": "soul-id", "path": "higgsfield-soul-id", "invoke": "/higgsfield:soul-id" },
        { "name": "product-photoshoot", "path": "higgsfield-product-photoshoot", "invoke": "/higgsfield:product-photoshoot" },
        { "name": "marketplace-cards", "path": "higgsfield-marketplace-cards", "invoke": "/higgsfield:marketplace-cards" }
      ]
    }
  ]
}
RAW_BUFFERClick to expand / collapse

Summary

Claude Code 2.1.145 (latest published per npm view @anthropic-ai/claude-code dist-tags) rejects a marketplace plugin entry whose skills[] array uses the object form with explicit slash-command invocation bindings:

"skills": [
  { "name": "generate", "path": "higgsfield-generate", "invoke": "/higgsfield:generate" }
]

with the error:

Failed to install: This plugin uses a source type your Claude Code version does not support. Update Claude Code and try again.

The error is misleading on two axes:

  1. The CLI is already the latest published version (2.1.145, both latest and next per npm). There is nothing to update to.
  2. The rejected field is not source. The plugin's source: "./" is valid and works on multiple other marketplaces I have installed (anthropic-agent-skills, ui-ux-pro-max-skill). The actual rejection appears to be the skills[] shape, but the error attributes it to "source type."

This is a different root cause from #56043 (marketplace-name collision producing the same string) and overlaps the docs gap in #53076 (unrecognized source format behavior). The common thread is that this exact error message is emitted as a catch-all for any unrecognized schema field, making it actively misleading for end users and difficult to diagnose without reading other marketplaces' manifests side-by-side.

Environment

  • claude --version2.1.145 (Claude Code) (npm global install, Linux x86_64 WSL2)
  • Node v24.7.0
  • npm view @anthropic-ai/claude-code dist-tags{ stable: '2.1.139', next: '2.1.145', latest: '2.1.145' }
  • Marketplace source: github (higgsfield-ai/skills), commit installed via /plugin marketplace add higgsfield-ai/skills

Reproduction

# 1. Add the higgsfield marketplace
/plugin marketplace add higgsfield-ai/skills

# 2. Attempt install
/plugin install higgsfield@higgsfield

Result: install dialog shows "Component summary not available for remote plugin" and then "Failed to install: This plugin uses a source type your Claude Code version does not support. Update Claude Code and try again."

The marketplace.json that produces this is at ~/.claude/plugins/marketplaces/higgsfield/.claude-plugin/marketplace.json:

{
  "name": "higgsfield",
  "owner": { "name": "Higgsfield AI", "url": "https://higgsfield.ai" },
  "plugins": [
    {
      "name": "higgsfield",
      "source": "./",
      "description": "Image/video generation, Marketing Studio, ...",
      "version": "0.3.0",
      "skills": [
        { "name": "generate", "path": "higgsfield-generate", "invoke": "/higgsfield:generate" },
        { "name": "soul-id", "path": "higgsfield-soul-id", "invoke": "/higgsfield:soul-id" },
        { "name": "product-photoshoot", "path": "higgsfield-product-photoshoot", "invoke": "/higgsfield:product-photoshoot" },
        { "name": "marketplace-cards", "path": "higgsfield-marketplace-cards", "invoke": "/higgsfield:marketplace-cards" }
      ]
    }
  ]
}

Diagnosis

I confirmed empirically that the skills[] shape is the rejected field, not source:

  • source: "./" — same string source is used by anthropic-agent-skills and ui-ux-pro-max-skill in my installed marketplaces, and both install successfully.
  • skills[] string form — every working marketplace uses string entries like "./skills/xlsx" or "./marketing-skill". None use the object form.
  • Local patch test: rewriting the higgsfield manifest to use string-form skills ("./higgsfield-generate", etc.) and clearing the plugin cache allows /plugin install higgsfield@higgsfield to proceed. Loss: the explicit invoke: "/higgsfield:generate" slash-command bindings have to be derived from the skill name instead of being declared.

The object form with { name, path, invoke } appears to follow a more recent / planned schema variant that the 2.1.145 parser does not yet accept. The Agent Skills specification at agentskills.io covers SKILL.md frontmatter but does not formally specify the Claude Code marketplace.json skills[] array shape, so it is unclear whether the object form is intended-but-not-yet-shipped or simply non-standard.

Asks

Two independent fixes, in priority order:

  1. Improve the error message. Whatever the parser rejects, the message should name the specific field path that failed (e.g. marketplace 'higgsfield' plugin 'higgsfield': skills[0] must be a string, got object) instead of attributing it to "source type" and advising an update that doesn't exist. The "Update Claude Code and try again" suffix should be removed unless the parser has actually determined a version-incompatibility (which is impossible when the user is already on the latest published version).
  2. Either accept the object-form skills[] (with name/path/invoke fields, useful for explicit slash-command bindings that don't collide with the directory name) or publish a clear schema reference documenting that only the string form is supported and what the canonical alternative is for explicit invoke mapping.

Related issues

  • #56043 — same misleading "source type not supported" error, different trigger (marketplace name collision)
  • #53076 — docs gap: unrecognized source format behavior is undocumented
  • #15439 — related: plugin source schema currently lacks ref / path parameters

Workaround

Patch the local ~/.claude/plugins/marketplaces/<name>/.claude-plugin/marketplace.json to convert skills[] object entries to string entries pointing at the skill directories. Note this is fragile — /plugin marketplace update <name> will git pull and overwrite it.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING