[DOCS] Plugin enable/disable docs omit scope auto-detection when `--scope` is omitted
Documentation Type
Incorrect/outdated documentation
Documentation Location
https://code.claude.com/docs/en/plugins-reference
Section/Topic
plugin enable and plugin disable command reference, especially the --scope behavior when it is omitted
Current Documentation
The plugin reference currently says:
|-s, --scope <scope>| Scope to enable:user,project, orlocal|user| |-s, --scope <scope>| Scope to disable:user,project, orlocal|user|
Related plugin marketplace docs currently say:
Seed entries take precedence: marketplaces declared in the seed overwrite any matching entries in the user's configuration on each startup. To opt out of a seed plugin, use/plugin disablerather than removing the marketplace. Path resolution: Claude Code locates marketplace content by probing$CLAUDE_CODE_PLUGIN_SEED_DIR/marketplaces/<name>/at runtime, not by trusting paths stored inside the seed's JSON. This means the seed works correctly even when mounted at a different path than where it was built. * Composes with settings: ifextraKnownMarketplacesorenabledPluginsdeclare a marketplace that already exists in the seed, Claude Code uses the seed copy instead of cloning.
The discover page also currently only shows:
/plugin disable plugin-name@marketplace-name /plugin enable plugin-name@marketplace-name
What's Wrong or Missing?
Changelog v2.1.85 says:
Fixed/plugin enableand/plugin disablefailing when a plugin's install location differs from where it's declared in settings
That confirms current plugin enable/disable behavior is not simply "default to user scope" in this class of installs. The primary command reference is now stale because it still presents user as the default scope for plugin enable and plugin disable, while current behavior auto-detects the correct installed scope/location when --scope is omitted.
This matters because the docs already describe cases where the plugin copy Claude Code uses can differ from the marketplace/settings declaration, especially with seeded plugins. Users are told to use /plugin disable to opt out of a seed plugin, but the docs never explain that the command resolves the installed scope automatically instead of requiring the user to guess the right scope or assume user scope.
Suggested Improvement
Update the plugin enable and plugin disable reference entries to document the current behavior explicitly. For example:
If--scopeis omitted, Claude Code auto-detects the plugin's current installed scope instead of always defaulting to user scope. Pass--scope user|project|localwhen you want to target a specific scope explicitly.
Also add a short note or example in the plugin discovery/marketplace docs clarifying that seeded, project-scoped, and local plugins can be enabled or disabled without manually matching the backing install path, because Claude Code resolves the active installed scope automatically.
Impact
Medium - Makes feature difficult to understand
Additional Context
Affected Pages:
| Page | Context |
|------|---------|
| https://code.claude.com/docs/en/plugins-reference | Primary command reference still shows user as the default scope for plugin enable and plugin disable |
| https://code.claude.com/docs/en/discover-plugins | Direct /plugin enable and /plugin disable examples omit the omitted---scope behavior |
| https://code.claude.com/docs/en/plugin-marketplaces | Seed plugin guidance tells users to use /plugin disable and separately documents runtime path resolution / seed-copy precedence |
Total scope: 3 pages affected
Source: Changelog v2.1.85
Exact changelog entry:
Fixed/plugin enableand/plugin disablefailing when a plugin's install location differs from where it's declared in settings
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗