Skip to content

[FEATURE]: Reopen plugin enable/disable support; PR #12490 remains unmerged #44452

Closed

Description

@trigger2k20

Feature has not been delivered yet

This request follows up on #7687, #11743, and the still-open PR #12490.

Use case

Users need to keep a plugin declaration for a reversible configuration while temporarily preventing the plugin from loading.

A concrete example is migrating from LM Studio to oMLX. The LM Studio provider can be disabled with disabled_providers, but the opencode-lmstudio plugin must currently be removed from the plugin array to stop it from loading. This loses the declarative record from valid JSON. JSON comments are not available, and switching to JSONC solely for this workaround should not be necessary.

Desired configuration:

{
  "plugin": [
    "opencode-lmstudio",
    "@warp-dot-dev/opencode-warp"
  ],
  "disabled_plugins": [
    "opencode-lmstudio"
  ]
}

Requested action

Please reopen #7687 until the feature is actually delivered and review/merge PR #12490. If that PR is no longer suitable for the current codebase, please provide the required changes or invite a refreshed PR instead of leaving the tracking issue marked as completed.

Acceptance criteria

  • Add disabled_plugins: string[] to the supported configuration schema.
  • Skip loading external plugins whose configured package/module identifier is listed in disabled_plugins.
  • Add CLI commands to list, disable, and enable configured plugins without uninstalling them.
  • Preserve existing plugin entries when disabling a plugin.
  • Document the feature and add configuration/plugin-loading tests.

Related: #7687, #11743, #12490

Activity

  1. neriousy commented on Oct 22, 2026

    @neriousy
    Member

    Partly done: V2's plugins config list accepts a -name entry that disables a plugin while keeping it declared (packages/core/src/config/plugin/source.ts, packages/core/src/plugin/supervisor.ts). There are no CLI enable/disable commands yet, and the docs don't mention the -name form. Closing this one. If you need the CLI commands, a new issue just for those is easier to pick up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions