Skip to main content
An Enterprise Plugin Registry is a centralized, private repository where organizations maintain approved plugins for company-wide distribution. Instead of individual teams discovering and vetting plugins independently, the registry provides a curated catalog of capabilities that are pre-approved, maintained, and ready to use.

Why use an Enterprise Plugin Registry?

Setting up a registry

An Enterprise Plugin Registry is a Git repository containing your organization’s approved plugins with a marketplace manifest.

Repository structure

Marketplace manifest

Create .factory-plugin/marketplace.json to register your plugins:

Org-level configuration

Configure the registry at the organization level so it’s automatically available to all users. Add to your org-managed settings:

Restricting marketplaces

To prevent users from adding unapproved marketplaces, use strictKnownMarketplaces:
When strictKnownMarketplaces is set:
  • Users can only add marketplaces from the approved list
  • Plugin installations from non-approved marketplaces are blocked
  • Existing unapproved marketplaces continue to work but cannot be updated
With this configuration:
  • The registry appears automatically when users run /plugins
  • Pre-enabled plugins are available immediately without manual installation
  • Users can install additional plugins from the registry as needed

User experience

Users manage plugins via the /plugins UI:
  1. Run /plugins to open the plugin manager
  2. Browse tab shows plugins from all registered marketplaces including the org registry
  3. Org-enabled plugins are pre-installed automatically on startup
For CLI access:
Users see the registry alongside public marketplaces, with org plugins clearly labeled.

Organizing plugins by role

Structure your registry to match your organization’s teams and workflows:

By team function

By capability

By project type

Pre-installing plugins

For critical capabilities that everyone needs, use enabledPlugins in org-managed settings:
Pre-installed plugins:
  • Are available immediately on first Droid session
  • Are installed with org scope automatically
  • Can be updated via /plugins UI or droid plugin update

Version management

Plugins are versioned by Git commit hash. When a plugin is updated, Droid fetches the latest commit from the marketplace. To control versions, use Git branches:
  • main - Production-ready for all users
  • staging - For early adopters
  • dev - For internal testing
Version pinning via the version field is not currently supported. The field is for documentation only.

Private repository access

For private Git repositories, ensure Droid can authenticate:

GitHub Enterprise

GitLab Self-Hosted

SSH-based access

Ensure SSH keys are configured for the repository host.

Local marketplaces

For air-gapped environments or when Git access is restricted, you can use local directory marketplaces. This is useful for:
  • Environments without internet access
  • Testing plugins before publishing
  • Internal distribution via shared network drives

Setting up a local marketplace

Create a directory with the standard marketplace structure:

Adding a local marketplace

Via UI: /plugins → Marketplaces tab → “Add new marketplace” → enter absolute path Via CLI:

Configuration for auto-registration

Use the local source type in settings:
When removing a local marketplace from the registry, Droid does not delete the source directory. Only Git-cloned marketplaces have their directories removed on deletion.

Best practices

Before adding plugins to the registry:
  • Security review for any external dependencies
  • Code review by platform team
  • Testing in isolated environment
  • Documentation requirements
Every plugin should have a README covering:
  • What capabilities it provides
  • When to use it (and when not to)
  • Any prerequisites or dependencies
  • Example usage
Use semantic versioning so teams know what to expect:
  • Major: Breaking changes to commands or behavior
  • Minor: New capabilities, backward compatible
  • Patch: Bug fixes only
Track which plugins are being used:
  • Installation counts
  • Active usage metrics
  • Feedback from teams
  • Issues and feature requests
When retiring plugins:
  • Announce deprecation timeline
  • Provide migration path to alternatives
  • Keep deprecated plugins available (read-only) during transition

Example: Financial services org

A financial services company sets up their registry: Mandatory plugins (pre-installed for everyone):
  • compliance-checks - PCI-DSS and SOX compliance validation
  • security-scanner - OWASP vulnerability detection
  • audit-logging - Enhanced audit trail for all Droid actions
Team-specific plugins (available for install):
  • trading-systems - For quantitative and trading teams
  • risk-models - For risk management teams
  • regulatory-reporting - For compliance teams
Configuration (org-managed-settings.json):
This ensures every developer has compliance and security tooling from day one, while specialized teams can add domain-specific capabilities.