Skip to main content
Si vous maintenez une CLI ou un SDK et disposez d’un plugin dans la marketplace officielle d’Anthropic, votre outil peut inviter les utilisateurs de Claude Code à installer ce plugin. Votre CLI écrit un marqueur d’une ligne sur stderr lorsqu’elle détecte qu’elle s’exécute dans Claude Code. Claude Code lit le marqueur, le supprime de la sortie et affiche à l’utilisateur une invite d’installation unique. Claude Code supprime la ligne d’indice de la sortie de la commande avant de l’envoyer au modèle, de sorte que le marqueur n’apparaît jamais dans la conversation et n’est pas comptabilisé dans l’utilisation des tokens. Le protocole ne nécessite aucune commande supplémentaire et ne change pas ce que votre CLI affiche pour les utilisateurs en dehors de Claude Code. Cette page est destinée aux mainteneurs de CLI et de SDK. Si vous cherchez à installer des plugins, consultez Découvrir et installer des plugins.

Fonctionnement

Claude Code définit la variable d’environnement CLAUDECODE à 1 pour chaque commande qu’elle exécute via les outils Bash et PowerShell. Lorsque votre CLI voit cette variable, elle écrit une balise auto-fermante <claude-code-hint /> sur stderr. Lorsque Claude Code reçoit la sortie de la commande, elle :
  1. Analyse les lignes d’indice et les supprime avant que la sortie n’atteigne le modèle
  2. Vérifie que l’indice cible un plugin dans une marketplace officielle d’Anthropic
  3. Vérifie que le plugin n’est pas déjà installé et n’a pas été proposé auparavant
  4. Affiche à l’utilisateur une invite d’installation qui nomme la commande qui a émis l’indice
Claude Code n’installe jamais un plugin automatiquement. L’utilisateur confirme toujours.

Émettre l’indice

Conditionnez l’émission sur la variable d’environnement CLAUDECODE afin que le marqueur n’apparaisse jamais dans le terminal d’un utilisateur humain. Ensuite, écrivez la balise sur stderr sur sa propre ligne. Les exemples suivants émettent un indice pour un plugin nommé example-cli dans la marketplace officielle :
if (process.env.CLAUDECODE) {
  process.stderr.write(
    '<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />\n',
  )
}
Remplacez example-cli par le nom de votre plugin dans la marketplace officielle.

Choisir où émettre

Vous contrôlez les chemins de code qui émettent l’indice. Claude Code déduplique par plugin, donc émettre à chaque invocation n’a aucun inconvénient. Les points de contact qui fonctionnent bien incluent :
PlacementPourquoi cela fonctionne
Sortie --helpClaude exécute souvent l’aide lors de l’exploration d’une CLI inconnue
Erreurs de sous-commande inconnueAtteint le moment où Claude est confus par votre interface
Succès de connexion ou d’authentificationL’utilisateur est déjà dans un état d’esprit de configuration
Message de bienvenue de première exécutionUn moment d’intégration naturel

Ce que voit l’utilisateur

Lorsque l’indice passe tous les contrôles, Claude Code affiche une invite comme la suivante :
─────────────────────────────────────────────────────────────
  Recommandation de plugin

    La commande example-cli suggère d'installer un plugin.

    Plugin : example-cli
    Marketplace : claude-plugins-official
    Intégration officielle pour les déploiements example-cli

    Voulez-vous l'installer ?
    ❯ 1. Oui, installer example-cli
      2. Non
      3. Non, et ne plus afficher les suggestions d'installation de plugins

─────────────────────────────────────────────────────────────
L’invite nomme la commande qui a produit l’indice afin que les utilisateurs puissent détecter une discordance entre l’outil et le plugin qu’il recommande. Si l’utilisateur ne répond pas dans les 30 secondes, l’invite se ferme en tant que Non. La fréquence des invites est limitée :
  • Une fois par plugin : après l’affichage de l’invite, Claude Code enregistre le plugin et ne le propose jamais plus, quel que soit la réponse de l’utilisateur.
  • Une fois par session : sur tous les CLIs de la machine, au maximum une invite d’indice apparaît par session Claude Code.
Sélectionner Oui installe le plugin à la portée utilisateur. Sélectionner Non, et ne plus afficher les suggestions d’installation de plugins désactive toutes les futures invites d’indice pour l’utilisateur.

Format de l’indice

L’indice est une balise auto-fermante avec trois attributs requis.
<claude-code-hint v="1" type="plugin" value="example-cli@claude-plugins-official" />
AttributRequisDescription
vOuiVersion du protocole. 1 est la seule valeur prise en charge
typeOuiType d’indice. plugin est la seule valeur prise en charge
valueOuiIdentifiant du plugin sous la forme name@marketplace
Les valeurs d’attribut peuvent être entre guillemets doubles ou sans guillemets. Les valeurs sans guillemets ne peuvent pas contenir d’espaces. Les séquences d’échappement ne sont pas prises en charge.

Exigences

Claude Code applique deux conditions avant d’agir sur un indice. Les indices qui échouent à l’un des contrôles sont supprimés :
  • Ligne propre : la balise doit occuper sa propre ligne. Une balise intégrée au milieu d’une ligne, par exemple à l’intérieur d’une instruction de journal, est ignorée. Les espaces blancs de début et de fin sur la ligne sont autorisés.
  • Marketplace officielle : la value doit référencer un plugin dans une marketplace contrôlée par Anthropic, telle que claude-plugins-official. Les indices pointant vers d’autres marketplaces sont silencieusement supprimés.
La ligne d’indice est toujours supprimée de la sortie avant qu’elle n’atteigne le modèle, même lorsque la version ou le type n’est pas reconnu, de sorte que le marqueur n’est jamais comptabilisé dans l’utilisation des tokens. Les conseils restants sont recommandés mais non appliqués. Claude Code ne peut pas observer si votre CLI les suit :
  • Écrire sur stderr : stderr garde la balise hors des pipelines shell tels que example-cli deploy | jq. Claude Code analyse les deux flux, donc stdout fonctionne aussi.
  • Conditionner sur CLAUDECODE : n’émettez que lorsque la variable d’environnement CLAUDECODE est définie. Cela empêche le marqueur d’apparaître aux utilisateurs exécutant votre CLI directement.

Obtenir votre plugin dans la marketplace officielle

Le protocole d’indice ne prend effet que pour les plugins répertoriés dans la marketplace officielle d’Anthropic. Pour soumettre un plugin, utilisez l’un des formulaires de soumission intégrés à l’application : Si vous travaillez avec un contact partenaire d’Anthropic, contactez-le pour coordonner l’inscription.

Voir aussi