Un skill Claude Code, c’est une consigne que vous n’aurez plus jamais à retaper.
Définition courte : un skill est un fichier SKILL.md que Claude Code charge quand votre demande correspond à sa description, ou que vous lancez en tapant /nom. Il remplace les consignes que vous recolliez à chaque session. Les anciennes « slash commands » ont convergé vers ce format. Un plugin en emballe plusieurs pour les installer d’un coup, et un mod (depuis le 1er octobre 2026) est du code qui tourne à l’intérieur de Claude Code.
Le seuil pratique : si vous avez retapé la même consigne trois fois, elle est mûre pour devenir un skill. En dessous, vous figez un workflow qui bouge encore.
Quatre étapes, un seul fichier.
Format relevé dans la documentation officielle le 3 octobre 2026. Les champs de l’en-tête sont tous facultatifs, mais un skill sans description ne se déclenche jamais au bon moment.
- 01
Créez le dossier du skill
Un skill vit dans un dossier à son nom, qui contient un fichier SKILL.md. Pour un skill propre à un projet : .claude/skills/<nom>/SKILL.md à la racine du dépôt. Pour un skill disponible dans tous vos projets : ~/.claude/skills/<nom>/SKILL.md.
mkdir -p .claude/skills/revue-diff
- 02
Écrivez l'en-tête, et surtout la description
Le fichier s'ouvre sur un bloc YAML entre deux lignes ---. Tout y est facultatif, mais la description est ce que Claude lit pour décider d'activer le skill : formulez-la comme une condition d'activation, avec les mots que vous employez réellement dans vos demandes.
--- name: revue-diff description: Relire mes modifications non commitées comme un reviewer sévère. À utiliser quand je demande une relecture, une revue ou ce qui a changé. allowed-tools: Bash(git diff *) Read Grep ---
- 03
Écrivez la consigne comme un brief à un collègue compétent
Le corps du fichier est du Markdown. Il peut injecter du contexte au moment de l'appel avec une commande entre backticks précédée d'un point d'exclamation : le résultat de git diff HEAD arrive dans le skill avant que Claude ne le lise. Le détail volumineux va dans des fichiers voisins que le skill cite.
## Modifications en cours !`git diff HEAD` ## Consigne Résume ces changements en trois points, puis liste les risques : gestion d'erreur absente, valeurs en dur, tests à mettre à jour.
- 04
Invoquez-le, puis corrigez la description jusqu'à ce qu'il se déclenche seul
Tapez /revue-diff dans une session, ou posez simplement la question que la description annonce. Si Claude ne charge pas le skill de lui-même, c'est la description qui est en cause, pas le contenu. Des arguments se passent après le nom : $ARGUMENTS capte tout le texte, $0 le premier argument, et un champ arguments du frontmatter permet de les nommer.
/revue-diff /revue-diff issue=123 branch=main
Le champ qui vaut le détour : allowed-tools
Il pré-approuve les outils dont le skill a besoin pour ce tour, et rien d’autre. Un skill de relecture n’a aucune raison de pouvoir écrire des fichiers : c’est le principe du moindre privilège, appliqué à vos propres workflows. Le champ inverse, disallowed-tools, retire des outils pendant que le skill est actif.
Cinq façons d’étendre Claude Code. Une question les sépare : où ça tourne.
Les quatre premières agissent de l’extérieur. Seul le mod s’exécute dans le processus de Claude Code, ce qui lui permet de dessiner une interface, et oblige à le lire comme du code installé avec vos droits.
| Brique | Ce que c’est | Ce qu’elle change | Où ça tourne |
|---|---|---|---|
| Skill | Un fichier SKILL.md d'instructions | Ce que Claude sait et fait | Dans le contexte de Claude |
| Hook de réglages | Un script, une requête HTTP ou un prompt déclenché sur un évènement | Si un appel d'outil ou un prompt passe, et avec quels arguments | Hors de Claude Code, comme un script |
| Serveur MCP | Un processus ou un service qui expose des outils | Quels outils Claude possède | Hors de Claude Code |
| Plugin | Un dossier qui regroupe skills, agents, hooks et serveurs MCP, avec un manifeste | Rien de plus : il installe et distribue le tout d'un coup | Partout où ses composants tournent |
| Mod | Des fonctions JavaScript que Claude Code appelle sur ses évènements (depuis le 1er octobre 2026) | Appels d'outils, prompts, commandes, et ce que l'interface dessine | À l'intérieur de Claude Code |
- Lire son allowed-tools : que s’autorise-t-il ?
- Lire les fichiers annexes qu’il charge et les commandes qu’il injecte.
- Chercher toute instruction qui demanderait d’ignorer des consignes précédentes.
- Pour un plugin : claude plugin validate et claude plugin details listent hooks, serveurs et appels sans rien lancer.
- Se rappeler qu’« officiel » qualifie la marketplace, jamais le plugin.
Il est présent dans toutes vos sessions, pas seulement celles où vous l’utilisez. Le nom et la description de chaque skill, agent et commande que Claude peut invoquer sont dans le contexte à chaque tour. Ses serveurs MCP tournent à côté de chaque session. L’onglet Installed de /plugin regroupe ceux que vous n’avez pas utilisés récemment : c’est là que se fait le ménage.
Le parcours Claude Code : huit leçons, la première en accès libre.
CLAUDE.md, skills et boucles de vérification, hooks, MCP, sous-agents, plugins et mods, puis l’Agent SDK pour sortir du terminal. Contenu vérifié sur Claude Code 2.1.301, en français, avec un exercice cochable par leçon.
Skills, plugins et mods : ce qu’on nous demande.
- Qu'est-ce qu'un skill Claude Code ?
- Un skill est un fichier SKILL.md, composé d'un en-tête YAML et d'instructions en Markdown, que Claude Code charge quand la demande correspond à sa description, ou que vous lancez vous-même en tapant /nom-du-skill. Il sert à figer une consigne que vous répétiez : une relecture de code selon vos critères, une procédure de livraison, la génération d'un type de fichier selon vos conventions. Son contenu complet n'entre dans le contexte qu'à l'usage ; seuls son nom et sa description y sont en permanence.
- Quelle différence entre un skill et une slash command ?
- Historiquement, une slash command était un fichier Markdown dans .claude/commands/, lancé par /nom. Les deux ont convergé : l'emplacement recommandé aujourd'hui est .claude/skills/<nom>/SKILL.md, et un skill s'invoque de la même façon, avec en plus la possibilité que Claude le charge de lui-même quand sa description correspond. Le dossier .claude/commands/ reste pris en charge pour la compatibilité.
- Où placer un skill pour qu'il soit disponible partout ?
- Dans ~/.claude/skills/<nom>/SKILL.md, le skill est chargé dans tous vos projets sur cette machine. Dans .claude/skills/ à la racine d'un dépôt, il n'est chargé que dans les sessions de ce dépôt, et il se commite avec le code pour que l'équipe l'ait aussi. Un skill peut aussi venir d'un plugin installé, ou être synchronisé depuis votre compte claude.ai, auquel cas il est en lecture seule et ses commandes injectées ne s'exécutent pas.
- Qu'est-ce qu'un plugin Claude Code ?
- Un plugin est un dossier qui empaquette plusieurs composants (skills, agents, hooks, serveurs MCP) avec un manifeste .claude-plugin/plugin.json, pour les installer d'un coup depuis une marketplace avec /plugin install nom@marketplace. Il n'ajoute aucun pouvoir par lui-même : il distribue. Un plugin activé est présent dans toutes vos sessions, et le nom de chacun de ses skills compte dans votre contexte à chaque tour, même quand rien ne s'exécute.
- Et un mod ?
- Un mod, apparu avec Claude Code 2.1.287 le 1er octobre 2026, est un plugin dont le code JavaScript ou TypeScript tourne à l'intérieur de Claude Code. Il peut dessiner un panneau ou une bande au-dessus de l'invite, retenir un appel d'outil pour poser une question, ajouter une commande qui s'exécute sans tour de Claude, ou remplacer une partie de l'interface. Il tourne avec vos permissions et n'est pas mis en bac à sable : on lit son code avant de l'installer.
- Peut-on installer un skill trouvé sur GitHub sans risque ?
- Pas sans le lire. Un skill est un texte qui devient une consigne pour un agent qui a accès à vos fichiers et à votre shell. Regardez son champ allowed-tools, les fichiers annexes qu'il charge, les commandes qu'il injecte, et toute instruction qui demanderait d'ignorer des consignes précédentes. Pour un plugin, les commandes claude plugin validate et claude plugin details listent ce qu'il contient et ce qu'il demande à Claude Code, sans rien lancer.
- Les skills fonctionnent-ils dans claude.ai, et pas seulement dans le terminal ?
- Le même format de skill existe sur claude.ai et dans les sessions de l'application de bureau, et les skills activés dans votre compte claude.ai se synchronisent vers le terminal. La réciproque n'est pas vraie : un skill écrit dans ~/.claude/skills/ reste local. Et dans un skill synchronisé, les commandes shell injectées ne s'exécutent pas, par sécurité.
À lire ensuite : le prompt engineering · Claude ou ChatGPT · choisir une formation à l’IA.