Skip to content

marketplace.json displayName key fails schema validation on Claude Code 2.1.71 — marketplace cannot be added #3

Description

@jdy98p

Summary

claude plugin marketplace add fusebase-dev/agent-plugins fails on Claude Code 2.1.71. The clone succeeds, but manifest validation rejects the displayName key on the plugin entry, so the marketplace is never registered and fusebase-apps cannot be installed by the documented path.

Reproduction

$ claude plugin marketplace add fusebase-dev/agent-plugins
Adding marketplace...
SSH not configured, cloning via HTTPS: https://github.com/fusebase-dev/agent-plugins.git
Refreshing marketplace cache (timeout: 120s)…
Cloning repository (timeout: 120s): https://github.com/fusebase-dev/agent-plugins.git
Clone complete, validating marketplace…
✘ Failed to add marketplace: Failed to parse marketplace file at
  .../marketplaces/fusebase-dev-agent-plugins/.claude-plugin/marketplace.json:
  Invalid schema: ... plugins.0: Unrecognized key: "displayName"

Claude Code discards the clone on validation failure, so there is no partial state to recover from — the command is simply unusable.

Cause

.claude-plugin/marketplace.json sets displayName on the fusebase-apps entry:

{
  "name": "fusebase-apps",
  "displayName": "FuseBase Apps",
  "source": "./plugins/fusebase-apps",
  ...
}

That key was introduced in 3e4f9aa ("fix: set the plugin display name so the UI stops prettifying the slug", 2026-08-21). Claude Code's marketplace schema validates plugin entries strictly and rejects unknown keys, so this has broken Claude Code installs since that commit. The two prior commits (e262a03, d707874) predate the key and would validate.

I don't know whether displayName is valid for another agent's marketplace format (the repo describes itself as "plugins for coding agents", and the repo also carries a Codex catalog) — if it is, this may need to be per-catalog rather than removed outright.

Verified fix

Deleting the single displayName line makes the manifest validate, and both steps then succeed:

✔ Successfully added marketplace: fusebase
✔ Successfully installed plugin: fusebase-apps@fusebase (scope: user)

All three skills (create-app, existing-fusebase-app, install-cli) load correctly afterward. The UI falls back to prettifying the slug — "Fusebase Apps" rather than "FuseBase Apps" — which is the cosmetic issue 3e4f9aa set out to fix, but it costs installability.

Environment

  • Claude Code 2.1.71
  • macOS (darwin 25.5.0)
  • Repo at commit 3e4f9aa

Workaround for other users

Clone the repo, remove the displayName line, and add the local directory as the marketplace:

git clone https://github.com/fusebase-dev/agent-plugins.git
cd agent-plugins && sed -i '' '/"displayName":/d' .claude-plugin/marketplace.json
claude plugin marketplace add "$PWD"
claude plugin install fusebase-apps@fusebase

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions