Aller au contenu
Mastering Claude

Accueil / Étendre : compétences, MCP, sous-agents, hooks, plugins

Étendre : compétences, MCP, sous-agents, hooks, plugins8 minApplication

Plugins : regrouper skills, hooks, MCP et agents

Un plugin regroupe des skills, des hooks, des serveurs MCP et des commandes dans un seul répertoire versionné, installable et partageable en une seule fois, avec un manifeste unique qui vit à part de tout le reste.

Un plugin regroupe des skills, des hooks, des serveurs MCP et des commandes dans un seul répertoire versionné, installable et partageable en une seule fois. La documentation officielle décrit ce répertoire comme un bundle, la même unité testée en local puis publiée sur une bibliothèque partagée (source code.claude.com/docs/en/plugins, consultée le 2026-09-02).

Ce qu'un plugin peut contenir

À la racine du plugin, chaque répertoire porte un rôle précis. skills/ regroupe les skills du plugin, au même format SKILL.md qu'une skill personnelle ou de projet. commands/ garde le mécanisme historique de commandes à plat, toujours pris en charge en parallèle. hooks/ porte un fichier hooks.json qui déclare les événements du cycle de vie gérés par le plugin. .mcp.json déclare les serveurs MCP embarqués, disponibles dès l'installation. agents/ définit des sous-agents dédiés au plugin. .lsp.json ajoute des serveurs de langage, monitors/ avec son fichier monitors.json surveille des journaux en arrière plan, et bin/ ajoute des exécutables directement au chemin utilisé par l'outil Bash. Un fichier settings.json au même niveau fixe des réglages par défaut du plugin, mais seules les clés agent et subagentStatusLine y sont actuellement prises en charge.

Le manifeste, et un piège courant

Un seul fichier vit dans .claude-plugin/ : plugin.json, le manifeste. Il porte name, description, version et author. Le champ name devient aussi le namespace des commandes du plugin : une skill nommée bonjour dans un plugin nommé mon-plugin s'invoque par la commande /mon-plugin:bonjour. La documentation signale explicitement l'erreur la plus fréquente sur ce point : placer skills/, commands/, agents/ ou hooks/ à l'intérieur de .claude-plugin/ au lieu de les poser à la racine du plugin, à côté de ce dossier.

mon-plugin/
  .claude-plugin/
    plugin.json
  skills/
    bonjour/
      SKILL.md
  hooks/
    hooks.json
  .mcp.json

Tester avant de publier

La commande claude --plugin-dir ./mon-plugin charge le plugin pour une session locale, une archive .zip du même contenu fonctionne aussi. La commande /reload-plugins recharge les plugins actifs sans redémarrer la session, utile pendant la modification de hooks.json ou d'une skill. Avant de soumettre un plugin à une bibliothèque partagée, claude plugin validate ./mon-plugin contrôle sa structure. Deux marketplaces publiques, maintenues par Anthropic, distribuent ensuite les plugins : claude-plugins-official, curatée, déjà enregistrée au premier lancement interactif de Claude Code, et claude-community, ouverte aux soumissions tierces après relecture, ajoutée par la commande /plugin marketplace add anthropics/claude-plugins-community.

Le même mécanisme qui fait fonctionner une skill isolée, décrit dans créer sa propre skill ou sa propre commande, s'applique tel quel à une skill logée dans skills/ à l'intérieur d'un plugin : le format SKILL.md ne change pas, seul le conteneur change.

Figure 1

Ce qu'un plugin regroupe dans un seul répertoire

.claude-plugin/plugin.json
Le manifeste, seul fichier autorisé dans ce dossier : name, description, version, author.
skills/
Les skills du plugin, au même format SKILL.md qu'une skill personnelle ou de projet.
hooks/hooks.json
Les événements du cycle de vie gérés par le plugin, et la commande exécutée pour chacun.
.mcp.json
Les serveurs MCP embarqués par le plugin, disponibles dès l'installation.
commands/
Le mécanisme historique de commandes à plat, toujours pris en charge en parallèle de skills/.
L'empilement place le manifeste à la racine du plugin et les principales familles de contenu qu'un plugin peut embarquer, chacune dans son propre répertoire.
Figure 2

Deux clés seulement dans le settings.json d'un plugin

2clés
clés actuellement prises en charge dans le settings.json d'un plugin, agent et subagentStatusLine
code.claude.com/docs/en/plugins, 2026-09-02
Le settings.json d'un plugin ne fixe pas encore de réglages généraux, seulement ces deux clés au moment de la consultation.
Calibrez vous-même

Un développeur crée un répertoire nommé mon-plugin, écrit le fichier .claude-plugin/plugin.json avec les champs name, description et version, place un dossier skills/ à la racine du plugin avec une skill à l'intérieur, puis lance la commande claude --plugin-dir ./mon-plugin, qui charge le plugin pour la session et affiche cette skill dans la liste des skills disponibles.

Écrivez en une phrase ce que cette situation établit, et en une phrase ce qu'elle n'établit pas.

Ce qu’il faut retenir
  • Un plugin est un répertoire unique qui regroupe skills, hooks, serveurs MCP, agents et commandes, installable et partageable en une seule fois.
  • Le manifeste plugin.json vit seul dans .claude-plugin/, jamais les répertoires skills, hooks, agents ou commands qui restent à la racine du plugin.
  • Le nom déclaré dans plugin.json sert de namespace aux commandes du plugin, par exemple /mon-plugin:bonjour pour une skill nommée bonjour.
  • La commande claude --plugin-dir teste un plugin en local avant publication, et /reload-plugins recharge les modifications sans redémarrer la session.
  • Deux marketplaces publiques maintenues par Anthropic distribuent les plugins, l'une curatée dès le premier lancement, l'autre ouverte aux soumissions tierces revues.
À faire maintenant

Choisissez deux ou trois skills ou hooks liés au même besoin que vous avez déjà sur votre poste, créez un répertoire avec un sous-dossier .claude-plugin/plugin.json minimal, déplacez-les dans les sous-dossiers skills/ et hooks/ à la racine, puis chargez l'ensemble par claude --plugin-dir suivi du chemin de ce répertoire.

Ce qui reste à vérifier

Ces points dépendent d’une interface ou d’une règle qui peut avoir changé depuis la rédaction. Vérifiez-les sur votre propre écran avant de vous y fier.

  • La liste complète des champs optionnels du manifeste plugin.json et des répertoires pris en charge à la racine d'un plugin évolue avec chaque version de Claude Code, à revérifier sur https://code.claude.com/docs/en/plugins avant de publier un plugin réel.
Vérifier à la source

Chaque affirmation datable de cette leçon renvoie ici au texte public qui la porte. Une source qui ne s’ouvre pas ne prouve rien.