Description
Disabling the Claude Code Marketplace provider in OMP also disables OMP marketplace-backed capabilities. That includes installed skills and other capability types routed through the shared marketplace discovery provider.
From a user perspective, OMP marketplace installs look like a separate source from Claude Code marketplace plugins. Today they are coupled internally, so turning off Claude Code marketplace discovery also unloads OMP marketplace-backed capabilities.
Steps to reproduce
- Install a plugin or skill from the OMP marketplace.
- Confirm the installed capability is available.
- Open provider/capability settings and disable
Claude Code Marketplace.
- Start a new session or refresh capability discovery.
- Observe that OMP marketplace-backed capabilities are also gone or disabled.
Expected behavior
Disabling Claude Code marketplace should disable only Claude Code marketplace-backed capabilities.
OMP marketplace-backed capabilities should remain available unless the user explicitly disables OMP marketplace separately.
Actual behavior
OMP marketplace-backed capabilities disappear when Claude Code Marketplace is disabled.
Error output
No explicit error is required to reproduce this. The visible symptom is that OMP marketplace-backed capabilities disappear after disabling Claude Code Marketplace.
Area
Extensions / Plugins
Additional context
Root cause from current code:
packages/coding-agent/src/discovery/helpers.ts
listClaudePluginRoots() merges both Claude and OMP marketplace registries:
~/.claude/plugins/installed_plugins.json
~/.omp/plugins/installed_plugins.json
- OMP entries can override Claude entries for matching IDs
packages/coding-agent/src/discovery/claude-plugins.ts
- The shared discovery provider is still registered as:
id: "claude-plugins"
- display name:
Claude Code Marketplace
- This provider is used for skills, slash commands, hooks, custom tools discovered from marketplace plugin roots, and MCP server discovery
packages/coding-agent/src/capability/index.ts
- Provider disable is global by provider id across capabilities
packages/coding-agent/src/extensibility/plugins/marketplace/types.ts
- OMP marketplace install entries intentionally use a Claude-compatible registry shape
packages/coding-agent/src/extensibility/plugins/marketplace/registry.ts
- OMP marketplace writes its installed-plugin registry under the OMP plugins directory
packages/coding-agent/src/extensibility/custom-tools/loader.ts
- Direct OMP plugin-manifest custom-tool loading exists separately, which suggests the provider-coupling is specific to marketplace-root discovery routed through
claude-plugins
packages/coding-agent/src/extensibility/extensions/loader.ts
- Direct plugin extension loading also appears to bypass
claude-plugins
packages/coding-agent/src/extensibility/plugins/loader.ts
- Shared helper for direct enabled-plugin extension/tool path loading
Net effect: OMP marketplace-backed capabilities are coupled to the same claude-plugins provider toggle, so disabling Claude Code Marketplace disables all marketplace-root capability discovery from both sources.
Important boundary: this does not appear to disable every OMP plugin mechanism globally. Separate OMP plugin-manifest loaders for extensions and direct custom-tool loading appear unaffected because they bypass claude-plugins.
Suggested fix direction
Split OMP marketplace discovery into its own provider/toggle instead of routing OMP marketplace-backed capabilities through the shared claude-plugins provider.
Description
Disabling the
Claude Code Marketplaceprovider in OMP also disables OMP marketplace-backed capabilities. That includes installed skills and other capability types routed through the shared marketplace discovery provider.From a user perspective, OMP marketplace installs look like a separate source from Claude Code marketplace plugins. Today they are coupled internally, so turning off Claude Code marketplace discovery also unloads OMP marketplace-backed capabilities.
Steps to reproduce
Claude Code Marketplace.Expected behavior
Disabling Claude Code marketplace should disable only Claude Code marketplace-backed capabilities.
OMP marketplace-backed capabilities should remain available unless the user explicitly disables OMP marketplace separately.
Actual behavior
OMP marketplace-backed capabilities disappear when
Claude Code Marketplaceis disabled.Error output
No explicit error is required to reproduce this. The visible symptom is that OMP marketplace-backed capabilities disappear after disabling
Claude Code Marketplace.Area
Extensions / Plugins
Additional context
Root cause from current code:
packages/coding-agent/src/discovery/helpers.tslistClaudePluginRoots()merges both Claude and OMP marketplace registries:~/.claude/plugins/installed_plugins.json~/.omp/plugins/installed_plugins.jsonpackages/coding-agent/src/discovery/claude-plugins.tsid: "claude-plugins"Claude Code Marketplacepackages/coding-agent/src/capability/index.tspackages/coding-agent/src/extensibility/plugins/marketplace/types.tspackages/coding-agent/src/extensibility/plugins/marketplace/registry.tspackages/coding-agent/src/extensibility/custom-tools/loader.tsclaude-pluginspackages/coding-agent/src/extensibility/extensions/loader.tsclaude-pluginspackages/coding-agent/src/extensibility/plugins/loader.tsNet effect: OMP marketplace-backed capabilities are coupled to the same
claude-pluginsprovider toggle, so disablingClaude Code Marketplacedisables all marketplace-root capability discovery from both sources.Important boundary: this does not appear to disable every OMP plugin mechanism globally. Separate OMP plugin-manifest loaders for extensions and direct custom-tool loading appear unaffected because they bypass
claude-plugins.Suggested fix direction
Split OMP marketplace discovery into its own provider/toggle instead of routing OMP marketplace-backed capabilities through the shared
claude-pluginsprovider.