[DOCS] Plugin enable/disable docs missing dependency enforcement behavior
Documentation Type
Missing documentation (feature not documented)
Documentation Location
https://code.claude.com/docs/en/plugins-reference
Section/Topic
plugin enable and plugin disable command behavior when plugins depend on each other
Current Documentation
The command reference currently says:
### plugin enable Enable a disabled plugin. ``bash claude plugin enable <plugin> [options] ``
### plugin disable Disable a plugin without uninstalling it. ``bash claude plugin disable <plugin> [options] ``
discover-plugins also documents these as simple one-plugin actions:
Disable a plugin without uninstalling: ``shell /plugin disable plugin-name@marketplace-name ``
Re-enable a disabled plugin: ``shell /plugin enable plugin-name@marketplace-name ``
What's Wrong or Missing?
A. plugin disable refusal behavior is undocumented
Claude Code v2.1.143 added dependency enforcement when disabling plugins:
claude plugin disable now refuses when another enabled plugin depends on the target, with a copy-pasteable disable-chain hint.
The current docs do not mention that plugin disable can fail because of enabled dependents, or that the command now provides a disable order to resolve the dependency chain.
B. plugin enable transitive side effects are undocumented
The same release changed claude plugin enable so that it force-enables transitive dependencies.
The current docs describe plugin enable as enabling one disabled plugin, but do not say that enabling one plugin may also enable additional dependency plugins automatically.
Without these details, users can be surprised in both directions:
plugin disableappears to reject a valid command with no documented explanationplugin enablechanges the state of more plugins than the one named on the command line
Suggested Improvement
Update the plugin enable and plugin disable sections in plugins-reference to document the dependency-aware behavior explicitly.
Suggested additions:
For plugin disable:
If another enabled plugin depends on the target plugin, Claude Code refuses the disable request and prints a copy-pasteable chain showing which dependent plugins must be disabled first.
For plugin enable:
If the target plugin depends on other disabled plugins, Claude Code enables those transitive dependencies automatically so the dependency graph is satisfiable.
Add a shorter note in discover-plugins so the interactive /plugin enable and /plugin disable workflow also reflects these dependency rules.
Impact
Medium - Makes feature difficult to understand
Additional Context
Affected Pages:
| Page | Line(s) | Context |
|------|---------|---------|
| https://code.claude.com/docs/en/plugins-reference | 817-853 | plugin enable and plugin disable command reference currently shows syntax only |
| https://code.claude.com/docs/en/discover-plugins | 280-303 | Installed plugin management examples show enable/disable commands without dependency behavior |
| https://code.claude.com/docs/en/plugin-dependencies | 137-146 | Dependency errors section references install and enable recovery paths but not enable/disable enforcement semantics |
Total scope: 3 pages affected
Source: Changelog v2.1.143
Exact changelog entry:
Added plugin dependency enforcement:claude plugin disablenow refuses when another enabled plugin depends on the target (with a copy-pasteable disable-chain hint), andclaude plugin enableforce-enables transitive dependencies
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗