[BUG] auto-update causes loss of plugin user settings, and update failure leads to plugin load failure
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
When using claude-code, the current plugin is updated via auto-update to the path ~/.claude/plugin/cache/<marketplace>/<version>/<plugin>. If the plugin internally depends on stdio/http mcp and stores user privacy information or other user-specific settings inside the plugin folder, these settings are not preserved/copied into the new version folder during the auto-update. As a result, user settings are lost. Additionally, if auto-update fails, the plugin cannot be loaded at all.
What Should Happen?
After an auto-update, all previous user settings inside the plugin (especially privacy-related settings) should be automatically migrated or preserved into the new plugin folder. Even if an update fails, the plugin should remain loadable and usable.
Steps to Reproduce
- Install and configure a plugin that depends on stdio/http mcp and contains user-specific settings (such as privacy info).
- Allow the plugin to update via auto-update.
- After update, check whether old settings are preserved under ~/.claude/plugin/cache/<marketplace>/<version>/<plugin>.
- Test whether the plugin remains loadable if the auto-update fails.
Claude Model
_No response_
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.76
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
This issue causes users to suddenly lose privacy or critical configuration, severely impacting user experience. If auto-update fails, the plugin becomes completely unavailable, affecting all plugin functionality. Ideally, auto-update should automatically migrate user settings, and there should be a fallback or rollback mechanism to avoid total failure.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗