mirror of
https://github.com/anthropics/claude-plugins-official.git
synced 2026-07-10 19:35:53 -03:00
feat: add renames map for auto-migration of renamed plugins (#3176)
Adds a top-level "renames" map to marketplace.json with the four historical renames (adlc, airwallex, convex-backend, vals) so that users who installed under the old slug auto-migrate to the new one once the loader-side support in cci#43997 ships. Also documents in README.md that plugin `name` is an immutable slug: use `displayName` for label changes, and if a rename is unavoidable, add a `renames` entry. Part of CC-2871. Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
parent
456e4e6672
commit
b01a789953
@ -6,6 +6,12 @@
|
||||
"name": "Anthropic",
|
||||
"email": "support@anthropic.com"
|
||||
},
|
||||
"renames": {
|
||||
"adlc": "agentforce-adlc",
|
||||
"airwallex": "airwallex-agentos",
|
||||
"convex-backend": "convex",
|
||||
"vals": "valtown"
|
||||
},
|
||||
"plugins": [
|
||||
{
|
||||
"name": "42crunch-api-security-testing",
|
||||
|
||||
15
README.md
15
README.md
@ -42,6 +42,21 @@ plugin-name/
|
||||
└── README.md # Documentation
|
||||
```
|
||||
|
||||
## Plugin names are immutable
|
||||
|
||||
The `name` field in a marketplace entry is an **immutable slug**. Once a plugin has been published, its `name` must not change — users have it installed under that slug, and renaming it breaks their install with a `plugin-not-found` error.
|
||||
|
||||
- To change how a plugin is labeled in the UI, set or update `displayName` instead.
|
||||
- If a rename is genuinely unavoidable, add an entry to the top-level `renames` map in `.claude-plugin/marketplace.json` so existing installs auto-migrate:
|
||||
|
||||
```json
|
||||
"renames": {
|
||||
"old-name": "new-name"
|
||||
}
|
||||
```
|
||||
|
||||
The Claude Code plugin loader reads this map and transparently rewrites the old slug to the new one on the user's next sync.
|
||||
|
||||
## Skill-bundle plugins
|
||||
|
||||
When a plugin's source repository ships skills (`SKILL.md` files) without a `.claude-plugin/plugin.json` manifest, the marketplace entry can declare the skills directly using `strict: false` and an explicit `skills` array.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user