Skip to main content
Vous exécutez les commandes de plugin soit en tant que claude plugin depuis votre shell ou un script, soit en tant que /plugin et /reload-plugins dans une session Claude Code. Cette référence donne les drapeaux, les valeurs par défaut, la sortie et les codes de sortie de chaque commande, ainsi que les deux drapeaux qui chargent un plugin pour une seule session. Exécutez claude plugin --help sur votre build pour confirmer quels sous-commandes votre version possède.
Ces cas sont couverts sur d’autres pages :

Commandes claude plugin

Exécutez claude plugin <subcommand> depuis votre shell ou un script, en dehors d’une session Claude Code. Ces sous-commandes installent et gèrent les plugins sans ouvrir le panneau /plugin. claude plugins est un alias pour claude plugin. Chaque sous-commande partage ces codes de sortie, arguments de plugin et valeurs de portée :
  • Codes de sortie : 0 en cas de succès et 1 en cas d’échec. validate ajoute la sortie 2 pour une erreur inattendue, et eval ajoute les codes listés dans sa section.
  • Arguments de plugin : un argument <plugin> est un name de plugin ou name@marketplace. Quand deux marketplaces offrent le même nom, utilisez la forme qualifiée.
  • Portées : --scope prend user, project, ou local, et nomme le fichier de paramètres que la commande écrit. update prend aussi managed.

plugin init

Créez un nouveau plugin à ~/.claude/skills/<name>/. Il se charge dans votre prochaine session en tant que <name>@skills-dir sans étape d’installation. new est un alias pour init. Pour le flux de travail créer, tester et éditer qui commence par cette commande, voir Créer un plugin.
<name> devient le nom du répertoire sous ~/.claude/skills/ et le name du plugin dans son manifeste. La commande n’a pas de drapeau pour un autre emplacement. Pour créer un scaffold dans un projet à la place, voir Créer un plugin. Créez un plugin avec des fichiers de skill et hook de démarrage :
Claude Code valide ce qu’il a écrit et affiche Created plugin "my-helper" at ~/.claude/skills/my-helper, suivi de l’id qu’il charge et de la commande claude plugin disable qui l’éteint. Claude Code quitte avec 1 sans écrire quand il ne peut pas créer le scaffold en toute sécurité, et le message nomme la raison. Voici les raisons courantes :
  • Une valeur --with inconnue
  • Un scaffold existant à la cible sans --force
  • Un paramètre géré qui bloque les plugins du répertoire de skills

plugin install

Installez un plugin depuis une marketplace que vous avez ajoutée. i est un alias pour install.
La plupart des plugins s’installent sans invite. Pour un plugin dont l’entrée marketplace exécute une commande pour l’installer ou définit un headersHelper pour son téléchargement, Claude Code affiche d’abord la commande et demande Run this command now? [y/N]. Passez -y depuis votre propre terminal pour accepter la commande affichée sans l’invite. Voici ce qui se passe sans TTY et quand Claude exécute la commande :
  • stdin ou stdout n’est pas un TTY, et vous ne passez ni -y ni --accept-command : l’installation est refusée. La sortie dit que la commande a été seulement affichée, et le code de sortie est 1
  • Claude exécute la commande via son outil Bash : -y est ignoré. Exécutez la commande depuis votre propre terminal à la place
Installez un plugin pour tous ceux qui clonent le projet :
Claude Code affiche Successfully installed plugin: formatter@my-marketplace (scope: project). Quand rien de nouveau n’est installé, la sortie dit pourquoi :
  • Déjà installé à cette portée : la sortie est Plugin "formatter@my-marketplace" is already installed (scope: project) et le code de sortie est 0
  • Vous refusez une invite de source de commande : la sortie est Aborted. et le code de sortie est 1
  • Vous refusez une invite headersHelper, ou elle ne peut pas être confirmée sans TTY : la sortie est Aborted — the command was not run. et le code de sortie est 1

Format de résultat JSON

Quand vous passez --json à plugin install, la dernière ligne de stdout est un objet JSON. Analysez seulement cette ligne, car Claude Code affiche toute commande que la marketplace déclare avant elle. Trois champs sont toujours présents :
  • command : la sous-commande qui a été exécutée, comme install
  • outcome : ok ou failed
  • message : une description lisible par l’homme du résultat
D’autres champs, comme pluginId, scope, et failureCode, apparaissent seulement quand ils s’appliquent. L’option --json sur plugin uninstall, plugin update, plugin enable, et plugin disable affiche le même objet avec les champs propres à cette sous-commande. Une erreur d’utilisation, comme un --scope invalide, n’affiche aucune ligne de résultat et quitte 1 avec la raison sur stderr.

Accepter une commande d’installation affichée

Quand une exécution --json affiche une commande déclarée par la marketplace et ne l’exécute pas, le résultat failed porte aussi un objet shownCommand. Ses champs incluent la commande telle qu’affichée, le plugin auquel elle appartient, et le sha256 de la commande. Pour accepter exactement cette commande, réexécutez avec ce sha256 en tant que --accept-command depuis votre propre terminal, car le drapeau n’a aucun effet dans une session Claude Code. Nécessite Claude Code v2.1.271 ou ultérieur. Le sha256 compte comme acceptation pour exactement cette commande, ce plugin, et ce catalogue de marketplace. Si l’un d’eux a changé depuis que la commande a été affichée, Claude Code n’accepte pas le sha256 et affiche la commande à nouveau. Un changement que l’actualisation de la marketplace de la propre exécution récupère compte aussi comme tel changement. Si shownCommand.acceptCommandMatched est false, le sha256 que vous avez passé ne correspond pas à la commande maintenant affichée. Examinez cette commande avant de réexécuter avec son sha256.

plugin uninstall

Supprimez un plugin installé d’une portée. remove et rm sont des alias pour uninstall.
Désinstallez un plugin de la portée du projet :
Claude Code affiche Successfully uninstalled plugin: formatter (scope: project). Quand le plugin n’est pas installé à cette portée, la commande affiche une ligne qui commence par Failed to uninstall plugin "formatter@my-marketplace": et quitte 1.

plugin enable

Activez un plugin désactivé. Pour un plugin synchronisé depuis claude.ai, passez <name>@synced en tant que plugin.
Sans --scope, la commande vérifie vos fichiers de paramètres dans l’ordre local, projet, utilisateur, et utilise la première portée qui mentionne le plugin. Si vous passez un --scope où le plugin n’est pas déclaré, la commande écrit soit une substitution soit échoue :
  • Une portée qui prend la priorité sur celle qui le déclare : Claude Code écrit une substitution à la portée que vous avez passée. Par exemple, claude plugin disable formatter --scope local éteint un plugin activé au niveau du projet pour vous seul
  • Toute autre portée : la commande échoue avec Plugin "formatter" is installed at project scope, not user. Use --scope project or omit --scope to auto-detect.
Si le plugin est déjà activé à la portée résolue, la commande affiche Plugin "formatter" is already enabled et quitte 1. Avec --json, le résultat a "failureCode": "already_in_goal_state" et "alreadyInGoalState": true, donc un script peut traiter ce cas comme un succès. Quand le plugin déclare des dépendances, Claude Code les active aussi. La commande échoue dans ces cas :
  • Une dépendance n’est pas installée : l’activation échoue et affiche la commande claude plugin install pour chaque dépendance manquante
  • Une dépendance est bloquée par la politique de plugin de votre organisation : l’activation échoue et nomme la dépendance bloquée
  • Une dépendance est définie à false à une portée avec une priorité plus élevée que la portée cible : l’activation échoue. Activez la dépendance à cette portée, ou passez --scope pour écrire là
Réactivez un plugin où qu’il soit déclaré :
Claude Code affiche Successfully enabled plugin: formatter (scope: project), nommant la portée qu’il a détectée.

plugin disable

Désactivez un plugin sans le désinstaller. Pour un plugin synchronisé depuis claude.ai, passez <name>@synced en tant que plugin.
Sans --scope, la portée est auto-détectée dans le même ordre local, projet, utilisateur que plugin enable. Si vous ne passez ni un nom de plugin ni --all, Claude Code affiche Please specify a plugin name or use --all to disable all plugins et quitte 1. Désactiver un plugin qui est déjà désactivé affiche Plugin "formatter" is already disabled et quitte 1, comme plugin enable le fait pour un plugin déjà activé. La commande échoue pour un plugin qui est toujours requis :
  • Un autre plugin activé en dépend : la commande échoue et nomme les dépendants à désactiver d’abord
  • Votre organisation l’exige en tant que plugin synchronisé : la commande échoue et ne sauvegarde rien
Désactivez un plugin :
Claude Code affiche Successfully disabled plugin: formatter (scope: project).

plugin update

Mettez à jour un plugin à la dernière version que sa marketplace offre. La nouvelle version se charge dans votre prochaine session, ou après que vous exécutiez /reload-plugins dans une session en cours.
managed est la seule portée que vous pouvez mettre à jour mais pas installer. Pour les plugins installés par l’administrateur, voir Gérer les plugins pour votre organisation. Mettez à jour un plugin :
Claude Code affiche Checking for updates for plugin "formatter@my-marketplace"…, puis le résultat. Quand rien n’est plus récent, il affiche formatter is already at the latest version (1.0.0). et quitte 0. Vous pouvez passer un nom de plugin nu, que la commande correspond à vos plugins installés. Quand les plugins installés de différentes marketplaces partagent le nom, la commande refuse la mise à jour et liste les commandes plugin-name@marketplace-name qualifiées à exécuter à la place. La mise à jour par nom nu nécessite Claude Code v2.1.246 ou ultérieur.

plugin list

Listez les plugins installés avec leur version, portée et statut.
Claude Code groupe la sortie lisible par l’homme par comment chaque plugin se charge :
  • Installed plugins: : plugins que vous avez installés depuis une marketplace
  • Session-only plugins (--plugin-dir / --plugin-url): : plugins chargés par ces drapeaux dans la même commande, comme dans claude --plugin-dir ./my-plugin plugin list
  • Skills-directory plugins (.claude/skills/*): : plugins que Claude Code a trouvés dans un répertoire de skills
  • Synced from claude.ai : plugins synchronisés depuis votre compte claude.ai
Sans rien dans aucun groupe, Claude Code affiche No plugins installed. Use `claude plugin install` to install a plugin.

Sortie JSON

Avec --json, Claude Code affiche un tableau avec un objet par installation. Chaque objet porte les champs ci-dessous. id, version, scope, enabled, et installPath sont toujours présents, et les autres apparaissent seulement quand ils s’appliquent. Avec --json --available, Claude Code affiche un objet au lieu d’un tableau. Son champ installed contient le tableau d’objets de plugin installé, et son champ available contient un objet par plugin de marketplace non installé avec les champs ci-dessous.

plugin details

Montrez l’inventaire des composants d’un plugin et son coût de token projeté. Le plugin doit être chargé : installé, trouvé dans un répertoire de skills, ou passé avec --plugin-dir ou --plugin-url dans la même commande. Le <name> est un name de plugin ou name@marketplace.
La commande ne prend aucun drapeau au-delà de --help. Montrez ce qu’un plugin installé contribue :
Claude Code affiche le nom, la version, la description et la source du plugin, puis ces sections :
  • Component inventory : les skills, agents, hooks, serveurs MCP et serveurs LSP du plugin
  • Projected token cost : les tokens toujours actifs que le plugin ajoute à chaque session
  • Per-component (rounded) : estimations toujours actives et à l’invocation pour chaque skill, agent et commande. Omis quand le plugin n’en a aucun
Pour ce que les deux chiffres de coût signifient, voir Mesurer le coût et l’utilisation des plugins. Pour un plugin qui n’est pas chargé, Claude Code affiche Plugin "formatter" not found. Run `claude plugin list` to see installed plugins, or pass --plugin-dir <path> to load one from disk. et quitte 1.

plugin prune

Supprimez les dépendances auto-installées que nul plugin installé n’a plus besoin. La commande ne supprime jamais un plugin que vous avez installé vous-même. autoremove est un alias pour prune.
Prévisualisez ce qu’un élagage supprimerait :
Claude Code liste les dépendances orphelines et se termine par (dry run — nothing removed). Sans rien à élaguer, il affiche une ligne qui commence par Nothing to prune. Sans --dry-run, la commande supprime les dépendances orphelines seulement après que vous confirmiez à l’invite ou passiez -y. Le code de sortie est 0 quelle que soit votre réponse à l’invite. Ce que prune fait dépend de si un terminal est attaché et si vous passez -y:

plugin eval

Exécutez les cas d’évaluation d’un plugin et rapportez les résultats notés. Nécessite Claude Code v2.1.269 ou ultérieur. Chaque cas est une invite plus des évaluateurs. Claude Code l’exécute plusieurs fois dans une session isolée avec seulement le plugin cible chargé, et par défaut aussi sans le plugin pour que le rapport montre la différence. Voir Tester les plugins avec des évaluations pour le format des cas, les évaluateurs, les résultats et l’utilisation CI.
La target optionnelle par défaut au répertoire courant et prend n’importe laquelle de ces formes :
  • Un répertoire de plugin
  • Un seul fichier prompt.md ou case.yaml
  • Un plugin installé en tant que name ou name@marketplace
  • name@skills-dir
Mettez la cible avant --tag, --allow-tools, et --json. Chacune de ces options prend les mots qui la suivent comme sa valeur, donc une cible écrite après l’une d’elles est lue comme une balise, un nom d’outil, ou le chemin de sortie JSON au lieu de la cible. Ce tableau liste les options que la plupart des exécutions utilisent. Exécutez claude plugin eval --help pour l’ensemble complet, incluant --case, --tag, --output-dir, --report, --allow-real-servers, --keep-temp, et --verbose. Le code de sortie rapporte comment l’exécution s’est terminée. Pour agir dessus dans un pipeline, voir Exécuter les évaluations en CI.

plugin eval init

Créez une suite d’évaluation pour le plugin dans le répertoire courant. Nécessite Claude Code v2.1.269 ou ultérieur. Voir Créer votre première suite d’évaluation.
Dans un terminal, la commande ouvre une session Claude Code interactive pour une interview de création. Dans l’interview, Claude fait ce qui suit :
  1. Lit le plugin
  2. Vous demande ce qu’il devrait bien faire
  3. Propose des cas et des évaluateurs
  4. Écrit les fichiers de cas
  5. Exécute les cas et examine les notes avec vous pour vérifier que les évaluateurs notent comme vous le feriez
Avec --bare, ou sans terminal, la commande écrit un modèle de cas unique vierge à la place. Quand Claude exécute la commande depuis l’intérieur d’une session Claude Code, la commande affiche les instructions d’interview pour que cette session suive plutôt que d’écrire un modèle. Le name optionnel est un nom de cas. Il est requis avec --bare ou sans terminal, car la commande écrit le modèle vierge pour ce cas. L’interview n’en a pas besoin. La commande accepte ces options :

plugin tag

Créez une balise git annotée nommée <name>--v<version> pour une version de plugin. Avant de baliser, la commande vérifie que le plugin.json du plugin et toute entrée de marketplace qui le liste s’accordent sur la version. Pour quand baliser une version, voir Publier un plugin.
Le [path] est le répertoire du plugin, par défaut le répertoire courant. La commande trouve l’entrée de marketplace en remontant de ce répertoire à un .claude-plugin/marketplace.json qui liste le plugin. Prévisualisez la balise pour un plugin dans un checkout de marketplace :
Claude Code affiche le plan :
  • Le nom du plugin
  • La version et quel fichier elle provient
  • L’entrée de marketplace correspondante, quand il y en a une
  • Le nom de la balise
  • Les commandes git tag et git push qu’il exécuterait
Sans --dry-run, Claude Code affiche Created tag formatter--v1.0.0 et soit Pushed to origin soit la commande push à exécuter vous-même. Si la poussée échoue, la balise est toujours créée localement et la commande quitte avec une erreur. La commande quitte 1 et affiche la raison quand elle ne peut pas baliser en toute sécurité. Les raisons courantes sont :
  • Pas de version dans plugin.json ou l’entrée de marketplace
  • La balise existe déjà
  • L’arbre de travail est sale

plugin validate

Validez un manifeste de plugin, un manifeste de marketplace, ou les skills, agents et commandes dans un répertoire, et quittez avec un code qu’un travail CI peut utiliser. Pour le flux de travail créer, tester et éditer, voir Créer un plugin. Pour ce que le validateur vérifie dans chaque manifeste, voir la référence du manifeste de plugin et la référence de marketplace.
Validez un plugin avant de le valider :

Validez un répertoire

Le <path> est un fichier manifeste ou un répertoire. Donné un répertoire, Claude Code choisit ce qu’il faut valider par ce qu’il y trouve :
  • .claude-plugin/marketplace.json, quand il existe
  • Sinon .claude-plugin/plugin.json
  • Sinon les fichiers de composant, choisis par le nom du répertoire. Valider les fichiers de composant sans manifeste nécessite Claude Code v2.1.233 ou ultérieur :
    • Un répertoire nommé skills, agents, ou commands : les fichiers à l’intérieur
    • Un répertoire nommé .claude : les répertoires skills, agents, et commands à l’intérieur
    • N’importe quel autre répertoire : ces trois répertoires sous son .claude
Claude Code ne suit pas les liens symboliques à l’intérieur du répertoire que vous nommez. Ce qu’il fait dépend de l’endroit où le lien est :
  • Un répertoire skills, agents, ou commands lié sous la racine du plugin ou .claude : Claude Code avertit que rien dedans n’a été lu.
  • Une entrée liée à l’intérieur d’un répertoire skills, agents, ou commands : Claude Code la saute et avertit, par répertoire, combien d’entrées il a sautées qu’une session chargerait.
  • Le répertoire skills, agents, ou commands que vous nommez est lui-même un lien symbolique, ou son répertoire parent .claude est : Claude Code rapporte une erreur et ne vérifie rien dedans. Nommez le répertoire réel à la place.
Quelques fichiers ne sont pas lus par une exécution de validation :
  • Un SKILL.md à la racine du plugin : quand vous exécutez claude plugin validate contre un répertoire de plugin, Claude Code ne vérifie pas un SKILL.md à la racine du plugin
  • Un CLAUDE.md à la racine du plugin : dans une exécution de plugin, Claude Code avertit aussi d’un CLAUDE.md à la racine du plugin
  • Fichiers de plugin dans une exécution de marketplace : depuis un répertoire de marketplace, Claude Code n’ouvre pas les fichiers de skill, agent, commande ou hook des plugins. Pour trouver des erreurs dans ces fichiers, validez chaque répertoire de plugin

Sortie et codes de sortie

Claude Code affiche le fichier qu’il a validé, toute erreur et avertissement avec leurs chemins, et une ligne de verdict. Le code de sortie suit le verdict : Avec --json, Claude Code écrit le rapport sur stdout en tant qu’un objet JSON avec ces champs de niveau supérieur :
  • success : le même verdict que le code de sortie donne
  • strict : si l’exécution a traité les avertissements comme des erreurs
  • target : le chemin résolu que Claude Code a validé
  • manifest : le résultat du manifeste lui-même, ou null pour une exécution sans manifeste
  • contents : résultats par fichier, chacun nommant son file et portant des tableaux errors, warnings, et notes
À la sortie 2, la commande n’écrit rien sur stdout. Le message d’erreur va sur stderr.

Commandes claude plugin marketplace

Exécutez claude plugin marketplace <subcommand> depuis votre shell pour ajouter, lister, actualiser et supprimer les marketplaces d’où vous installez les plugins.
  • Codes de sortie : ces sous-commandes suivent la convention de code de sortie des commandes de plugin
  • Portées : leur drapeau --scope n’a pas de forme courte -s
Pour ce qu’est une marketplace et comment Claude Code la met en cache, voir Référence du chargement des plugins.

plugin marketplace add

Ajoutez une marketplace depuis un référentiel GitHub, une URL git, une marketplace.json hébergée, ou un chemin local, et déclarez-la dans un fichier de paramètres. Après l’avoir ajoutée, Claude Code installe toute dépendance que vos plugins installés manquaient.
<source> prend n’importe laquelle des formes du tableau ci-dessous, et sa forme décide du type de source et comment Claude Code récupère la marketplace. Pour l’objet source résultant, voir la référence de marketplace. Pour un hôte dont les URLs de clone ne portent pas le suffixe .git, comme AWS CodeCommit, ajoutez la marketplace en tant qu’entrée git dans extraKnownMarketplaces à la place. Claude Code clone une entrée git qu’elle se termine ou non par .git. Claude Code clone aussi une URL gitlab.com avec des sous-groupes imbriqués, comme https://gitlab.com/group/subgroup/project. Ajoutez une marketplace et partagez-la avec le projet :
Claude Code affiche Successfully added marketplace: your-marketplace (declared in project settings), utilisant le name du manifeste de la marketplace lui-même. Un ajout répété ou une source invalide affiche l’un de ces résultats à la place :
  • Marketplace déjà sur le disque : la sortie est Marketplace 'your-marketplace' already on disk — declared in project settings et le code de sortie est 0
  • Source non reconnue : la sortie est Invalid marketplace source format. Try: owner/repo, https://..., or ./path et le code de sortie est 1
  • Hôte nu comme gitlab.example.com/team/plugins : l’ajout échoue en tant que raccourci owner/repo invalide, et le message vous dit d’ajouter https:// ou d’utiliser un chemin local
Ajoutez une marketplace hébergée sur claude.ai par le nom affiché dans la section From claude.ai: de claude plugin marketplace list:
Avec --claudeai, la commande refuse --scope et --sparse. La marketplace est hébergée pour votre compte, pas déclarée dans un fichier de paramètres, donc vous ne pouvez pas la partager via le .claude/settings.json d’un projet.

plugin marketplace list

Listez chaque marketplace que vous avez ajoutée, avec sa source.
Claude Code affiche Configured marketplaces: et une ligne Source: par marketplace, ou No marketplaces configured. Avec --json, Claude Code affiche un tableau avec un objet par marketplace, portant les champs ci-dessous. Chaque champ est une string. Une marketplace claude.ai ajoutée n’a pas de clone local, donc son entrée porte ses identifiants claude.ai, marketplaceId et organizationUuid, à la place de installLocation. Elle porte aussi scope quand un est enregistré, et status. Si vos sessions de terminal synchronisent les plugins depuis votre compte claude.ai, la liste de texte se termine par une section From claude.ai:. Cette section nomme les marketplaces que claude.ai liste pour votre compte que vous n’avez pas ajoutées, à la fois basées sur git et hébergées. Elle nécessite Claude Code v2.1.273 ou ultérieur. Pour ajouter une marketplace de cette section, voir Ajouter une marketplace depuis claude.ai. La sortie --json couvre seulement les marketplaces configurées et laisse la section dehors.

plugin marketplace remove

Supprimez la déclaration d’une marketplace de vos paramètres. rm est un alias pour remove.
Quand vous supprimez une marketplace de la dernière portée qui la déclare, Claude Code supprime aussi son cache et désinstalle chaque plugin que vous avez installé depuis elle. Sans --scope, la commande supprime la déclaration de chaque portée. Pour actualiser une marketplace sans perdre ses plugins, exécutez plugin marketplace update à la place.
Le <name> est le nom de la marketplace que plugin marketplace list affiche, pas la source que vous avez passée à add. Supprimez une marketplace de chaque portée :
Claude Code affiche Successfully removed marketplace: your-marketplace, ajoutant (from project settings) quand vous l’avez scoped. Si vous scoped à un fichier de paramètres qui ne déclare pas la marketplace, la commande échoue avec Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.

plugin marketplace update

Actualisez une marketplace, ou chaque marketplace, depuis sa source pour récupérer les nouveaux plugins et versions. Une marketplace ajoutée avec une branche ou une balise ref s’actualise au dernier commit de cette ref, pas la branche par défaut du référentiel.
La commande ne prend aucun drapeau au-delà de --help. Actualisez une marketplace :
Claude Code affiche Successfully updated marketplace: your-marketplace. Quand vous omettez le nom, il affiche un compte comme Successfully updated 2 marketplaces. Sans marketplaces ajoutées, il affiche No marketplaces configured et quitte 0.

/plugin dans une session

À l’intérieur d’une session interactive, /plugin ouvre le panneau de plugin. Chaque sous-commande ouvre le panneau sur un onglet, exécute une action là, ou affiche un résultat en ligne. /plugins et /marketplace sont des alias pour /plugin. Vous pouvez exécuter ces commandes seulement dans une session de terminal interactive. Dans une exécution non-interactive comme claude -p, Claude Code répond que /plugin n’est pas disponible dans cet environnement. Pour quelles surfaces ont /plugin, comment installer sans elle, et ce que chaque onglet du panneau affiche, voir Installer et gérer les plugins. Un <plugin> est un name de plugin ou name@marketplace. Le tableau ci-dessous liste chaque forme de session. Les sous-commandes shell init, update, details, prune, eval, et eval init n’ont pas de forme de session. Si vous nommez un plugin qui n’est pas installé dans le projet courant dans /plugin enable, disable, uninstall, ou configure, Claude Code affiche Plugin "<plugin>" is not installed in this project au lieu d’agir.

/reload-plugins

Appliquez les modifications de plugins en attente à la session en cours sans la redémarrer. Les modifications en attente sont les plugins que vous avez installés, mis à jour, activés, désactivés ou modifiés sur le disque depuis le démarrage de la session. Lorsque vous fermez le panneau /plugin avec des modifications en attente que vous y avez apportées, Claude Code exécute /reload-plugins pour vous. Exécutez-le vous-même après les modifications de plugins qui se produisent en dehors du panneau, comme une commande claude plugin que vous avez exécutée dans un autre terminal.

Résumé du rechargement

Claude Code recharge chaque plugin actif et affiche une ligne de résumé, Reloaded: N plugins · N skills · N agents · N hooks · N plugin MCP servers · N plugin LSP servers, en omettant le nombre de serveurs MCP de plugins dans une session sans terminal interactif. Lorsqu’un plugin a échoué, le résumé ajoute N errors during load. Run /plugin for details. Le nombre de skills couvre chaque skill qu’un plugin fournit, à la fois ses entrées commands/ et ses skills SKILL.md. Le nombre d’agents est le nombre d’agents chargés dans la session, y compris ceux qui ne proviennent pas de plugins. Lorsque les dépendances d’un plugin rechargé sont manquantes, Claude Code les installe, recharge à nouveau, et ajoute (+ N dependencies: <names>) resolved au résumé.

Rechargements qui modifient les outils MCP

Lorsque le rechargement ajouterait ou supprimerait un serveur MCP de plugin ou l’outil LSP, et que ce changement invaliderait le cache de prompt, Claude Code n’applique pas le rechargement. Il affiche une ligne telle que This reload changes MCP tools (<server>) — your next message will re-read the whole conversation instead of using the cache. Run /reload-plugins --force to apply. Passez --force pour l’appliquer quand même.

Sessions sans terminal interactif

/reload-plugins s’exécute également dans les sessions sans terminal interactif, comme l’application de bureau, le SDK Agent, et le mode non-interactif avec -p. Nécessite Claude Code v2.1.260 ou ultérieur. Dans ces sessions, la commande s’exécute uniquement lorsque vous la tapez vous-même dans la session, comme dans le prompt -p ou la boîte de prompt de l’application de bureau. Lorsqu’elle arrive d’une autre manière, comme via Remote Control ou un message relayé depuis Slack, la commande répond /reload-plugins isn't available over a remote connection in this session. et ne recharge rien. Le rechargement dans ces sessions ne connecte ni ne déconnecte les serveurs MCP de plugins. Ces modifications prennent effet dans votre prochaine session.

Drapeaux qui chargent un plugin pour une seule session

Deux drapeaux claude chargent un plugin pour une seule session seulement, sans l’installer. Les deux sont répétables. Les auteurs de plugin les utilisent pour tester un plugin avant de le publier. Pour le flux de travail charger-éditer-recharger, voir Développer sans marketplace. Un plugin que l’un ou l’autre drapeau charge est un plugin de session seulement. claude plugin list l’affiche en tant que <name>@inline avec portée session, mais seulement quand le même drapeau précède la sous-commande. Par exemple, exécutez claude --plugin-dir ./my-plugin plugin list. Quand un plugin de session seulement partage un nom avec un plugin installé, Claude Code charge la copie de session seulement pour cette session et saute celle installée. La copie installée se charge à la place si vous avez désactivé la copie de session seulement avec claude plugin disable <name>@inline, ou si les paramètres gérés verrouillent ce nom de plugin. Pour la priorité, voir Référence du chargement des plugins. Un administrateur peut rejeter les deux drapeaux, et les dossiers nommés dans la variable CLAUDE_CODE_PLUGIN_DIRS, avec le paramètre géré disableSideloadFlags. Claude Code affiche alors que le drapeau est désactivé par les paramètres gérés de votre organisation et quitte 1 sans démarrer. Depuis le SDK Agent, l’option plugins est l’équivalent de --plugin-dir.

Prochaines étapes