{"version":"2.1.277","anchor":"plugin-uninstallremoval-flow-now-cleans-up-stray-reference","canonical_anchor":"plugin-uninstallremoval-flow-now-cleans-up-stray-reference","heading":"\/plugin uninstall\/removal flow now cleans up stray references across all settings scopes","tier":"notice","area":"Plugin Install","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.277\/e\/plugin-uninstallremoval-flow-now-cleans-up-stray-reference","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.277","markdown":"### \/plugin uninstall\/removal flow now cleans up stray references across all settings scopes\n\n\/plugin uninstall now cleans up leftover plugin references across every settings scope, not just one\n\n**What**\n\nWhen removing a failed or disabled plugin through `\/plugin`, Claude Code now loops over every settings scope and removes the plugin's id from each scope's `enabledPlugins` list, counting how many scopes it actually removed it from. Even if nothing was removed anywhere, it now checks whether to still show the message \"Removed X from the list. It is not installed.\" The success message after uninstalling also now looks up and reports which plugin ids were affected by the cleanup.\n\n**Why**\n\nPreviously, a plugin's id could stay listed as enabled in some settings scope even after being uninstalled elsewhere. This ensures removal is thorough across all scopes and gives clearer feedback about what was actually cleaned up.\n\n- Area: Plugin Install\n- Names: `\/plugin`\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 2\/5"}