Chapitre 9.4 — Skills, plugins & marketplace
⏱️ TL;DR — Une skill est une capacité ; un plugin est un paquet de distribution qui peut regrouper plusieurs skills (+ commandes, hooks, config MCP, agents) ; une marketplace est un dépôt qui liste des plugins installables. Tu installes un plugin depuis la marketplace officielle
claude-plugins-officialavec/plugin, ou tu ajoutes une autre marketplace (/plugin marketplace add owner/repo). C’est le mécanisme pour partager un ensemble d’extensions à ton équipe — au lieu de copier des dossiers de skills à la main. (Le détail des plugins/MCP est en Partie 10 ; ici, on relie ça aux skills.)
🎯 Objectifs
- Distinguer nettement skill / plugin / marketplace.
- Installer un plugin et une marketplace avec
/plugin. - Comprendre le namespacing des extensions d’un plugin.
- Choisir entre skill locale et plugin distribué.
Trois concepts, trois rôles
Rappel du glossaire (CONTEXT.md), car la confusion est la règle :
- Skill = une capacité (un dossier +
SKILL.md). - Plugin = un paquet de distribution : il peut contenir des skills, des commandes, des hooks, de la config MCP, des agents — le tout installable d’un coup.
- Marketplace = un catalogue de plugins (un repo avec un
marketplace.json).
Autrement dit : tu écris des skills, tu les empaquettes en plugin, tu les distribues via une marketplace. Trois étapes, trois mots.
La marketplace officielle et /plugin
Claude Code fournit d’origine la marketplace claude-plugins-official (repo github.com/anthropics/claude-plugins-official, navigable sur claude.com/plugins). La commande /plugin ouvre l’interface (Découvrir / Installés / Marketplaces). Pour installer :
/plugin install <nom>@claude-plugins-officialElle propose des plugins prêts à l’emploi qu’on détaillera en Partie 10 : intégrations (GitHub, Linear, Notion…), serveurs de langage (LSP), outils de workflow (commits, revue de PR), guidage sécurité, output styles. Ta config a d’ailleurs déjà un plugin installé de cette marketplace : claude-code-setup (qui fournit la skill de recommandation d’automatisations).
Ajouter une autre marketplace
Tu n’es pas limité à l’officielle. Pour ajouter une marketplace communautaire ou interne :
/plugin marketplace add owner/repo # un repo GitHub
/plugin marketplace add ./chemin/local # ou un chemin local / une URL gitUne marketplace, c’est simplement un repo contenant un .claude-plugin/marketplace.json. Il existe une marketplace communautaire officielle (anthropics/claude-plugins-community, plugins tiers validés) et des marketplaces d’équipe que tu peux héberger toi-même — pratique pour diffuser tes plugins en interne.
💡 Réflexe d’architecte — Pour une équipe, une marketplace interne est le bon véhicule : tu y publies un plugin « conventions maison » (skills de scaffolding, hooks de qualité, agents de revue), et chacun l’installe d’une commande. Tout le monde partage exactement le même outillage — la cohérence d’équipe (P3) étendue aux capacités, pas seulement aux conventions.
Le namespacing
Quand un plugin fournit des commandes/skills, elles sont préfixées par le plugin pour éviter les collisions :
/commit-commands:commit ← la commande "commit" du plugin "commit-commands"Ça garde les choses claires quand tu cumules plusieurs plugins. Après installation, un /reload-plugins (ou un redémarrage) rend les extensions disponibles.
Skill locale ou plugin distribué ?
| Situation | Choix |
|---|---|
| Une skill juste pour toi, ce projet | skill locale (.claude/skills/ ou ~/.claude/skills/) |
| Un ensemble à partager (équipe, plusieurs repos) | plugin publié sur une marketplace |
| Réutiliser l’outillage d’autrui | installer son plugin depuis sa marketplace |
Commence local : écris tes skills dans le projet (9.5). Le jour où plusieurs personnes/repos en profiteraient, tu les empaquettes en plugin. Ne distribue pas prématurément — une skill locale versionnée suffit longtemps.
⚠️ Piège — Traiter la marketplace comme un « store » où l’on installe tout ce qui brille (rappel 9.3). Chaque plugin ajoute des skills/hooks/MCP qui s’exécutent avec tes droits et pèsent sur ton setup. Installe peu, comprends ce que chaque plugin apporte, et désinstalle ce qui ne sert pas. Un setup net > un setup encombré.
🧭 Sur TaskFlow — Notre skill
new-feature(9.5) sera d’abord une skill de projet locale (versionnée dans.claude/skills/). Si un jour on avait plusieurs projets Next.js avec les mêmes conventions, on empaquetteraitnew-feature+ les hooks de qualité (P7) + l’agentreviewer(P8) dans un plugin « stack-maison » publié sur une petite marketplace interne. Local d’abord, distribué quand ça se justifie.
✏️ Exercices
Exercice 1 — Explore ta marketplace. Lance /plugin, parcours la marketplace officielle. Repère 2 plugins qui te seraient utiles (ex. une intégration, un LSP de ton langage). Lis ce qu’ils apportent avant d’installer.
✅ Solution
Des candidats fréquents pour un dev web : un LSP TypeScript (navigation/refactor précis, P6/P10), une intégration GitHub (P10). L’exercice t’entraîne à lire avant d’installer et à voir concrètement ce qu’un plugin regroupe (souvent une config MCP + des commandes).
Exercice 2 — Local ou distribué ? Pour 3 de tes skills (réelles ou envisagées), décide : locale (perso/projet) ou plugin (à partager) ? Justifie par « qui d’autre en profiterait ».
✅ Solution
Règle simple : tant que tu es le seul bénéficiaire, reste local. Dès que plusieurs personnes/repos partageraient la même capacité, le plugin + marketplace devient rentable. Ne distribue pas prématurément : une skill locale versionnée suffit dans la grande majorité des cas.
🧠 Quiz de révision
1. Skill, plugin, marketplace : le rôle de chacun ?
Skill = une capacité. Plugin = un paquet de distribution qui regroupe skills/commandes/hooks/MCP/agents. Marketplace = un catalogue (repo) qui liste des plugins installables.
2. Comment installer un plugin officiel ?
Avec /plugin (interface) puis /plugin install <nom>@claude-plugins-official. La marketplace officielle claude-plugins-official est disponible d’origine.
3. Comment ajouter une autre marketplace ?
/plugin marketplace add owner/repo (ou un chemin local / URL git). Une marketplace = un repo avec un .claude-plugin/marketplace.json. Utile pour une marketplace d’équipe interne.
4. Pourquoi les extensions d’un plugin sont-elles préfixées (namespacing) ?
Pour éviter les collisions entre plugins (ex. /commit-commands:commit). Ça garde les commandes/skills claires quand on en cumule plusieurs.
5. Skill locale ou plugin : comment choisir ?
Local tant que tu es le seul bénéficiaire ; plugin distribué dès que plusieurs personnes/repos partageraient la capacité. On commence local et on empaquette quand ça se justifie.
Chapitre suivant : Atelier — une skill pour TaskFlow — on écrit new-feature de bout en bout.