Skip to content

CLI: Auto-install plugins from org managed settings (extraKnownMarketplaces + enabledPlugins) #45323

Description

@ssalzman-kobold

Problem

Plugins configured in org managed settings (extraKnownMarketplaces + enabledPlugins) do not auto-install in the CLI. They work in the desktop app and web app, but CLI users must manually run /plugin marketplace add and /plugin install.

This creates friction for organizations distributing internal plugins — there's no way to ensure CLI users have the correct plugins without manual steps or building workarounds like CLAUDE_CODE_PLUGIN_SEED_DIR into Docker images.

Current behavior

  1. Admin configures extraKnownMarketplaces and enabledPlugins in managed settings (Admin Console > Claude Code > Managed settings)
  2. CLI fetches managed settings at startup → cached in ~/.claude/remote-settings.json
  3. The marketplace is not registered in ~/.claude/plugins/known_marketplaces.json
  4. The plugin is not installed
  5. User must manually add the marketplace and install the plugin

Expected behavior

  1. Admin configures extraKnownMarketplaces and enabledPlugins in managed settings
  2. CLI fetches managed settings at startup
  3. Marketplace is automatically registered and fetched
  4. Plugins listed in enabledPlugins are automatically installed
  5. User starts a session with the plugin already active

Workarounds considered

  • CLAUDE_CODE_PLUGIN_SEED_DIR: Works for Docker/container environments but requires baking plugins into the image at build time, managing GitHub tokens as build secrets, and rebuilding to update
  • Entrypoint scripts: Adds startup latency and requires network + auth at runtime
  • Manual install docs: Defeats the purpose of org-managed settings

Prior issues

None of these resulted in the feature actually shipping for CLI.

Environment

  • Claude Code CLI (via curl -fsSL https://claude.ai/install.sh | bash)
  • macOS + Linux (Docker containers)
  • Organization using Claude for Enterprise with managed settings

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions