Removing a marketplace from settings.json is silently reverted by known_marketplaces.json
What happened
~/.claude/plugins/known_marketplaces.json appears to be the authoritative marketplace
registry, and it silently re-registers (and re-clones) any marketplace removed from~/.claude/settings.json's extraKnownMarketplaces.
Removing a marketplace from settings.json looks like it worked — the entry is gone, and afind over ~/.claude/plugins/marketplaces/ confirms the clone is deleted. About a minute
later the entry is back in known_marketplaces.json and the clone directory has been
recreated. No error, no log line, no indication the removal was undone.
Observed three times in one session
| Marketplace | Removed from settings.json | Re-registered in known_marketplaces.json |
|---|---|---|
| A | ~18:02 | 18:03 |
| B | ~18:02 | 18:03 |
| C | 18:12 | 18:17 (clone recreated 18:17:36) |
Each known_marketplaces.json entry carries its own lastUpdated timestamp, which is how
the re-registration was dated.
Steps to reproduce
- Register a marketplace (it appears in both
settings.jsonextraKnownMarketplacesand
~/.claude/plugins/known_marketplaces.json).
- Remove the entry from
settings.jsononly, and delete
~/.claude/plugins/marketplaces/<name>/.
- Verify both are gone.
- Wait ~1 minute and re-check.
Result: the entry is back in known_marketplaces.json and the clone has been recreated.
What does work
Deleting the entry from known_marketplaces.json and removing the clone directory holds.
Verified stable across three checks over a minute.
Expected
Either the two stores stay consistent, or removing from one surfaces an error explaining that
the other is authoritative. Right now a user can remove a marketplace, watch it disappear, and
have it silently return.
Why it matters beyond tidiness
This makes "remove and re-add the marketplace" — the standard first remedy for a broken
marketplace — quietly ineffective. A user follows that advice, the removal reverts, and the
re-add then reports "already added", which reads as a different problem entirely.
Environment
- Claude Code 2.1.247, running inside Claude Desktop
- macOS 26.4.1
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗