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
Summary
claude plugin marketplace add fusebase-dev/agent-pluginsfails on Claude Code 2.1.71. The clone succeeds, but manifest validation rejects thedisplayNamekey on the plugin entry, so the marketplace is never registered andfusebase-appscannot be installed by the documented path.Reproduction
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.jsonsetsdisplayNameon thefusebase-appsentry:{ "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
displayNameis 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
displayNameline makes the manifest validate, and both steps then succeed: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
Workaround for other users
Clone the repo, remove the
displayNameline, and add the local directory as the marketplace: