[DOCS] Plugin enable/disable docs missing dependency enforcement behavior

Resolved 💬 1 comment Opened May 16, 2026 by coygeek Closed Jun 1, 2026

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 disable appears to reject a valid command with no documented explanation
  • plugin enable changes 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 disable now refuses when another enabled plugin depends on the target (with a copy-pasteable disable-chain hint), and claude plugin enable force-enables transitive dependencies

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗