What
Plugins add commands and other features to Claude Code. Installing one now checks whether another installed plugin would use the same folder or the same saved-data folder. Plugin names are compared without regard to capital letters, and '@' and '.' are treated as '-'.
- On a clash, the install fails with the reason
plugin-folder-held(PluginFolderHeldError) and the message "plugin not installed: another installed plugin has one of its folders". The message says which plugin to uninstall first, or to ask an administrator when the install is managed. - The failure reports
sharedWith: "installed", the list of plugins holding the folder, and whether the main folder was kept. - A dependency that was forced into the install and hits this clash is skipped, and the plugin that pinned it stays demoted.
- Recommended-plugin installs show an install-refused warning instead of a generic failure.
Why
Two plugins whose names differ only by capitals or punctuation could overwrite each other's files or saved data. They are now refused with a clear reason, so you may see this new install failure.