{"version":"2.1.282","anchor":"plugin-install-new-replaceswitch-refusal-codes-mostly-dea","canonical_anchor":"plugin-install-new-replaceswitch-refusal-codes-mostly-dea","heading":"Replacing a plugin on install can now fail with a specific reason","tier":"notice","area":"Plugins","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282\/e\/plugin-install-new-replaceswitch-refusal-codes-mostly-dea","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282","markdown":"### Replacing a plugin on install can now fail with a specific reason\n\n`claude plugin install` in replace mode can now fail with \"replace_unavailable\"; other refusal codes are mostly switched off\n\n**Unclear.** It is not clear what condition makes an install fail with \"replace_unavailable\".\n\n**What**\n\n`claude plugin install` in replace mode can now stop with the failure code \"replace_unavailable\".\n\nMore refusal codes exist for switching a plugin from one marketplace (a source you install plugins from) to another, such as \"replace_needs_fresh_listing\" and \"invalid_plugin_id\". Most of that switching path is switched off in this build, so you are unlikely to see them.\n\n**Why**\n\nThis looks like groundwork for moving an installed plugin between marketplaces.\n\n- Area: Plugins\n- Names: `claude plugin install`\n- Tier: You'll notice\n- Useful: 1\/5\n- Signal: 1\/5"}