Federated registry protocol for multi-source plugin resolution with policy enforcement, lockfile management, and conflict detection across local, team, org, and public registries.
From marketplace-pronpx claudepluginhub markus41/claude --plugin marketplace-proThis skill uses the workspace's default tool permissions.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Implements structured self-debugging workflow for AI agent failures: capture errors, diagnose patterns like loops or context overflow, apply contained recoveries, and generate introspection reports.
The Federated Registry Protocol enables plugin resolution across multiple registries with configurable priority, security policies, conflict detection, and deterministic lockfiles. It transforms plugin management from a single-source package manager into an enterprise-grade multi-source orchestration system.
+-----------------+
| RegistryClient | Fetches and caches registry indexes
+--------+--------+
|
+--------v--------+
| RegistryResolver| Resolves plugins across registries
+--------+--------+
|
+--------v--------+
| PolicyEngine | Evaluates allow/deny/require rules
+--------+--------+
|
+--------v--------+
| LockfileManager | Deterministic version pinning
+-----------------+
Loads configuration from .claude/registries.json and fetches plugin indexes from multiple sources. Supports local filesystem directories and remote HTTP(S) URLs.
Key behaviors:
Resolves plugin names across all configured registries in priority order (highest first).
Conflict detection:
highest-priority (default), error, promptEvaluates security rules from .claude/policies/plugins.yaml using short-circuit matching (first match wins).
Rule types:
allow — Permits the plugindeny — Blocks the plugin with a reasonrequire — Warns when mandatory plugins are missingUnless clause: Exempts matching plugins when ALL conditions are met (trust score threshold, signature verification).
Produces plugin-lock.json for reproducible plugin environments.
Capabilities:
Configure registries with priorities:
/mp:registry add local ./plugins --priority 100
/mp:registry add team https://plugins.team.dev/index.json --priority 75
/mp:registry add public https://marketplace.claude.dev/registry.json --priority 0
Define security policy in .claude/policies/plugins.yaml
Sync registry caches:
/mp:registry sync
/mp:lock generate
plugin-lock.json to version controlmp:lock check to verify no driftmp:lock install for reproducible environmentmp:lock diff to review plugin changes.claude/policies/plugins.yaml/mp:policy enforce/mp:policy check <name>| File | Purpose |
|---|---|
.claude/registries.json | Registry sources and federation settings |
.claude/policies/plugins.yaml | Security policy rules |
plugin-lock.json | Deterministic version lock |
config/registries.default.json | Default registry configuration |
config/policies.default.yaml | Default security policy |
| Command | Description |
|---|---|
/mp:registry add | Add a registry source |
/mp:registry remove | Remove a registry |
/mp:registry list | Show configured registries |
/mp:registry sync | Refresh all caches |
/mp:policy check | Check a plugin against policy |
/mp:policy list | Show policy rules |
/mp:policy enforce | Audit installed plugins |
/mp:lock generate | Create lockfile from current state |
/mp:lock check | Verify plugins match lockfile |
/mp:lock diff | Show changes since last lock |
/mp:lock install | Install from lockfile |
src/federation/types.tssrc/federation/registry.tsconfig/registries.default.jsonconfig/policies.default.yaml