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.
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubt
It is not clear exactly what counts as holding the folder.