.claude-plugin/marketplace.json qui répertorie vos plugins et indique où récupérer chacun d’eux. Vous poussez le répertoire vers un hôte git, et toute personne ayant accès l’enregistre dans Claude Code avec une seule commande et installe vos plugins à partir de celui-ci.
Créez votre propre marketplace lorsque vous souhaitez qu’un groupe que vous choisissez, comme votre équipe ou votre organisation, installe vos plugins et continue à recevoir vos mises à jour à partir d’un catalogue que vous contrôlez. Le dépôt peut être privé, il peut répertorier autant de plugins que vous le souhaitez, et un administrateur peut l’exiger sur chaque machine.
Ces cas sont couverts sur d’autres pages :
- Partager un plugin avec quelques personnes : envoyez-leur le répertoire du plugin ou un
.zipde celui-ci. Voir Partager un plugin sans marketplace. - Proposer un plugin à tout le monde : soumettez-le à la marketplace communautaire d’Anthropic. Voir Soumettre à la marketplace communautaire.
- Utiliser un plugin vous-même : chargez-le avec
--plugin-dirou enregistrez-le dans votre répertoire de compétences. Voir Développer sans marketplace.
Créer une marketplace
Les étapes suivantes créent une marketplace sur votre machine, ajoutent un plugin à celle-ci, l’enregistrent dans Claude Code et installent le plugin à partir de celle-ci. C’est la boucle complète, et c’est la même boucle que vos utilisateurs parcourent une fois que vous hébergez la marketplace quelque part où ils peuvent y accéder. Exécutez chaque commande dans votre shell, à partir du répertoire où vous souhaitez quemy-marketplace/ soit créé.
Vous avez besoin d’un plugin à répertorier. L’exemple utilise my-first-plugin de Créer votre premier plugin, un plugin avec une compétence que vous exécutez en tant que /my-first-plugin:hello ; construisez-le d’abord si vous n’avez pas encore de plugin. Pour utiliser un plugin qui vous appartient à la place, remplacez son répertoire et son name partout où les étapes disent my-first-plugin. Pour savoir ce qu’un répertoire de plugins peut contenir, voir l’explorateur de répertoire de plugins.
1
Configurer le répertoire de la marketplace
Une marketplace est un répertoire avec un fichier Vérifiez que le plugin est valide là où il se trouve maintenant, afin que toute erreur ultérieure concerne la marketplace et non le plugin :La dernière ligne de la sortie lit
.claude-plugin/marketplace.json, plus les plugins qu’il répertorie. Créez le répertoire de la marketplace et son dossier .claude-plugin/, puis copiez votre plugin sous plugins/ :✔ Validation passed.2
Créer le fichier de marketplace
Enregistrez
marketplace.json à my-marketplace/.claude-plugin/marketplace.json. Le fichier nécessite un name, un owner et un tableau plugins.Chaque objet dans plugins est une entrée de plugin et a besoin d’un name et d’une source. Écrivez la source de l’entrée comme un chemin à partir de la racine de la marketplace. La racine est my-marketplace/, le répertoire qui contient .claude-plugin/.my-marketplace/.claude-plugin/marketplace.json
3
Valider la marketplace
Exécutez Pour le fichier tel qu’écrit à l’étape 2, la dernière ligne de la sortie lit
claude plugin validate sur le répertoire de la marketplace pour vérifier la syntaxe JSON, les champs obligatoires et chaque entrée de plugin dans son .claude-plugin/marketplace.json.✔ Validation passed.4
Ajouter la marketplace et installer le plugin
Enregistrez le répertoire en tant que marketplace.La commande affiche La commande affiche
✔ Successfully added marketplace: my-marketplace (declared in user settings), ce qui signifie que la marketplace est enregistrée dans votre fichier de paramètres utilisateur.Installez le plugin. L’ID d’installation est le name de l’entrée, un @ et le name de la marketplace.✔ Successfully installed plugin: my-first-plugin@my-marketplace (scope: user).À l’intérieur d’une session, /plugin marketplace add ./my-marketplace enregistre la marketplace de la même manière. /plugin install my-first-plugin@my-marketplace ouvre les détails du plugin dans le panneau /plugin, où vous l’installez. Pour ce flux, voir Installer et gérer les plugins.5
Confirmer que le plugin a été chargé
Listez les plugins installés.La sortie répertorie La section
my-first-plugin@my-marketplace avec Status: ✔ enabled.Pour voir ce que le plugin a chargé, affichez ses détails.Component inventory lit Skills (1) hello.Pour exécuter la compétence, démarrez une session et entrez /my-first-plugin:hello. Claude vous salue. La commande a le nom du plugin comme préfixe, comme le fait le nom de chaque compétence de plugin.Ajouter des entrées de plugins
Chaque plugin que vous distribuez est un objet dans le tableauplugins de marketplace.json. Pour ajouter un deuxième plugin, ajoutez un deuxième objet. Ces champs couvrent la plupart des entrées :
name: l’identifiant que les gens tapent avant@lorsqu’ils installent. Il ne peut pas contenir d’espaces.source: où Claude Code récupère le plugin. Écrivez une chaîne de chemin relatif pour un plugin à l’intérieur du répertoire de la marketplace, comme dans la procédure pas à pas, ou un objet source pour un plugin en dehors de celui-ci. Voir Choisir une source de plugin.description: la ligne que les gens voient à côté du plugin lorsqu’ils parcourent votre marketplace dans/plugin.
plugin.json. Pour savoir quand les champs plugin.json d’une entrée s’appliquent à un plugin qui a son propre plugin.json, voir Entrée et plugin.json.
Règles pour les entrées de plugins
La plupart des installations échouées à partir d’une nouvelle marketplace proviennent d’un chemin relatif écrit à partir du mauvais répertoire, ou d’un nom d’entrée qui diffère duname dans le plugin.json du plugin.
Écrire les chemins relatifs à partir de la racine de la marketplace
La racine de la marketplace est le répertoire qui contient.claude-plugin/. Dans la procédure pas à pas, c’est my-marketplace/, donc la source de l’entrée est "./plugins/my-first-plugin". Le chemin ne commence pas à l’intérieur de .claude-plugin/, donc n’utilisez pas .. pour le quitter.
Un chemin avec .. et un chemin vers un répertoire manquant échouent à des commandes différentes :
- Un chemin avec
..:claude plugin validatesignale l’entrée comme invalide. Le message commence parPath contains "..": ./../plugins/my-first-plugin. - Un chemin vers un répertoire qui n’existe pas :
claude plugin validateréussit.claude plugin installéchoue avecSource path does not exist: <path>, et<path>est l’emplacement absolu que Claude Code a vérifié.
Garder le nom de l’entrée et le nom du manifeste identiques
Un plugin de marketplace a unname d’entrée dans marketplace.json et un name dans son propre plugin.json, appelé le nom du manifeste. Chaque nom apparaît à des endroits différents :
- Nom de l’entrée : l’ID d’installation,
<entry-name>@<marketplace>. C’est ce que les gens tapent pour installer, ce queclaude plugin listaffiche, et la clé que Claude Code écrit sousenabledPluginsdans leur fichier de paramètres. - Nom du manifeste : le préfixe sur les compétences du plugin, et le nom que
claude plugin detailsprend.
Plugin "<manifest-name>" not found in marketplace "<marketplace>". Gardez les deux noms identiques. Pour plus d’informations sur la façon dont Claude Code utilise les deux noms, voir Référence de chargement des plugins.
Choisir une source de plugin
Chaque entrée de plugin dansmarketplace.json a une source qui indique à Claude Code où récupérer ce plugin. Choisissez la source en fonction de l’endroit où les fichiers du plugin sont stockés. Le tableau répertorie les sources que la plupart des propriétaires de marketplace utilisent.
Dans une source
git-subdir, url prend une URL git ou un raccourci GitHub owner/repo.
Un plugin peut également provenir de l’un de ces types de source :
url: un dépôt git par URL, sur n’importe quel hôtearchive: un fichier zip téléchargé via HTTPSnpm: un package npmcommand: un répertoire produit en exécutant une commande sur la machine où le plugin est installé
ref ou sha, voir Sources de plugins.
Valider et tester
À mesure que vous ajoutez des plugins, exécutezclaude plugin validate ./my-marketplace dans votre shell après chaque modification, et installez à partir de la marketplace sur votre propre machine avant de la partager. La validation et l’installation détectent des problèmes différents.
Problèmes que la validation signale
claude plugin validate lit uniquement les fichiers à l’intérieur du répertoire de la marketplace. Il signale :
- Les erreurs de syntaxe JSON, comme
json: Invalid JSON syntax: <reason> - Les champs obligatoires manquants, tels que
owner: Invalid input - Un nom de marketplace avec des espaces, des caractères non-ASCII, ou une forme qui imite une marketplace officielle d’Anthropic, comme
claude-official - Une
sourcerelative qui contient.. - Les champs inconnus au niveau supérieur ou dans une entrée de plugin, comme des avertissements
- Les problèmes dans le
plugin.jsonde chaque plugin à chemin relatif, commeplugins[N] plugin.json → <field>: <message>
validate peut imprimer, voir Messages de validation. Pour ses drapeaux et codes de sortie, voir plugin validate.
Problèmes qui apparaissent lorsque vous ajoutez ou installez
Les problèmes queclaude plugin validate ne signale pas apparaissent lorsque vous ajoutez la marketplace ou installez à partir de celle-ci :
- Lorsque vous ajoutez la marketplace : les noms de marketplace officiels exacts, tels que
claude-plugins-official, passent la validation. Lorsque vous ajoutez une marketplace avec l’un de ces noms, Claude Code la refuse avec un message qui commence parThe name '<name>' is reserved for official Anthropic marketplaces. - Lorsque vous installez un plugin :
- Claude Code récupère d’abord une source
github,git-subdirou autre source distante lorsque vous installez le plugin, donc unrepooupathincorrect apparaît alors. - Une
sourcerelative dont le répertoire n’existe pas échoue également à l’installation, avecSource path does not exist: <path>.
- Claude Code récupère d’abord une source
Tester une modification d’un plugin
Dans la procédure pas à pas, vous avez ajoutémy-marketplace à partir d’un répertoire local avec une source à chemin relatif. Avec cette configuration, Claude Code lit les fichiers du plugin directement à partir de my-marketplace/plugins/. Vos modifications prennent effet au prochain démarrage de session ou lorsque vous exécutez /reload-plugins dans une session, sans modification de la version du plugin.
Les personnes qui installent à partir de votre marketplace hébergée obtiennent une copie dans le cache des plugins à la place. Pour savoir comment elles reçoivent une nouvelle version, voir Garder les utilisateurs à jour.
Supprimer la marketplace pour recommencer
Pour tout supprimer et recommencer, exécutezclaude plugin marketplace remove my-marketplace dans votre shell. La commande supprime la marketplace et désinstalle ses plugins.
Héberger votre marketplace
Une fois que vous pouvez installer un plugin à partir de la marketplace sur votre propre machine, comme dans Créer une marketplace, poussez le répertoire de la marketplace vers un hôte git. Vos coéquipiers exécutent ensuiteclaude plugin marketplace add <owner>/<repo> dans leur shell pour un dépôt GitHub, ou la même commande avec l’URL du dépôt. Ils installent ensuite un plugin par nom comme dans la procédure pas à pas.
Pour l’accès aux dépôts privés, les mises à jour, le versioning, et le renommage ou la suppression d’entrées, voir Héberger et maintenir une marketplace.
Étapes suivantes
- Héberger et maintenir une marketplace : choisissez un hôte, gardez les utilisateurs à jour, et renommez ou supprimez les plugins en toute sécurité
- Référence de marketplace : champs
marketplace.jsonet types de sources - Gérer les plugins pour votre organisation : exigez votre marketplace et ses plugins sur chaque machine
- Suggérer les plugins par pertinence : faites en sorte que Claude Code suggère un plugin de votre marketplace lorsqu’une session correspond