Les Claude Code Skills et Slash Commands sont des workflows nommes et reutilisables: au lieu de retaper les memes instructions multi-etapes, vous en invoquez un, et l'agent execute vos etapes eprouvees avec le bon contexte deja charge. En 2026, les custom slash commands ont fusionne dans les skills: un fichier sous .claude/commands/deploy.md et un skill sous .claude/skills/deploy/SKILL.md creent tous deux la commande /deploy et fonctionnent pareil. Ce guide vous montre comment creer un slash command et un SKILL.md, comment les arguments et le contexte dynamique fonctionnent, ou ils vivent, et quand Claude charge un skill automatiquement versus quand vous le declenchez vous-meme.
Une partie de: Tutoriel Claude Code pour debutants
Skills et commands ne font plus qu'un
Pendant des annees, Claude Code avait deux fonctionnalites separees: les slash commands (un fichier Markdown declenche avec /nom) et les skills (une capacite plus riche et autonome). En 2026, elles ont ete unifiees. Les custom commands ont fusionne dans les skills, de sorte que les deux creent un slash command et fonctionnent pareil. Vos fichiers .claude/commands/ existants fonctionnent toujours, et les skills ajoutent simplement des fonctionnalites optionnelles par-dessus: un repertoire pour les fichiers compagnons, du frontmatter pour controler qui les invoque, et la capacite pour Claude de les charger automatiquement quand ils sont pertinents. Les Claude Code Skills suivent le standard ouvert Agent Skills, de sorte que le meme skill peut fonctionner d'un outil a l'autre.
- Un fichier sous .claude/commands/deploy.md cree /deploy.
- Un skill sous .claude/skills/deploy/SKILL.md cree aussi /deploy.
- Les skills ajoutent: fichiers compagnons, controle d'invocation et chargement automatique via la description.
- Les fichiers .claude/commands/ existants fonctionnent toujours; les skills sont la voie recommandee pour la suite.
Creer un slash command
Le workflow reutilisable le plus simple est un fichier Markdown dont le nom devient la commande. Deposez un fichier dans .claude/commands/ (projet) ou ~/.claude/commands/ (personnel), et Claude Code le rend disponible comme slash command. Utilisez le placeholder $ARGUMENTS pour capturer tout ce que vous tapez apres la commande, ou $1, $2 positionnels pour des arguments individuels. Une description dans le frontmatter YAML apparait comme texte d'aide. C'est parfait pour une action unique et bien definie que vous declenchez souvent.
<!-- .claude/commands/fix-issue.md -->
---
description: Investigate and fix a GitHub issue by number.
argument-hint: [issue-number]
---
Fix GitHub issue #$ARGUMENTS. First read the issue with the gh CLI, then
find the relevant code, propose a fix in plan mode, and only implement
after I approve. Run the test suite before you say it is done.Ecrire un SKILL.md
Un skill est un repertoire avec un fichier SKILL.md a la racine: du frontmatter YAML plus des instructions Markdown et, optionnellement, des scripts, templates ou fichiers de reference groupes. Le nom du repertoire devient la commande que vous tapez, et la description est ce que Claude lit pour decider quand charger le skill automatiquement, donc une description affutee fait la moitie du travail. Seule la description est recommandee; tout le reste est optionnel. Les skills brillent quand un workflow est multi-etapes, a ses propres assets, ou que vous voulez que Claude l'invoque de lui-meme quand le moment s'y prete.
<!-- .claude/skills/summarize-changes/SKILL.md -->
---
description: Summarise uncommitted changes and flag risks. Use when the user asks what changed or wants a commit message.
allowed-tools: Read, Grep
---
## Current changes
!`git diff HEAD`
## Instructions
Summarise the changes above in two or three bullet points, then list any
risks such as missing error handling, hardcoded values, or tests that need
updating. If the diff is empty, say there are no uncommitted changes.La ligne avec !`git diff HEAD` est de l'injection de contexte dynamique: Claude Code execute la commande et remplace la ligne par sa sortie avant que le modele ne voie le skill, de sorte que les instructions arrivent avec votre vrai diff deja injecte. Gardez le corps court, car une fois qu'un skill est charge, son contenu reste dans le contexte au fil des tours.
Ou ils vivent et qui les invoque
Les skills de projet vivent dans .claude/skills/<nom>/SKILL.md et s'appliquent a ce repo; les skills personnels vivent dans ~/.claude/skills/<nom>/SKILL.md et vous suivent partout. Claude peut invoquer un skill automatiquement quand votre requete correspond a sa description, ou vous le declenchez directement avec /nom. Si un workflow ne doit tourner que quand vous le demandez (comme un deploy), mettez disable-model-invocation: true pour que Claude ne le declenche jamais de lui-meme. Pour masquer un skill purement documentaire du menu slash, mettez user-invocable: false.
- Projet: .claude/skills/<nom>/SKILL.md - partage avec le repo.
- Personnel: ~/.claude/skills/<nom>/SKILL.md - tous vos projets.
- Invoque automatiquement via la description ou declenche directement avec /nom.
- disable-model-invocation: true rend un skill manuel uniquement; user-invocable: false le masque du menu /.
Quand choisir quoi
Le signal pour emballer quoi que ce soit est la repetition: la deuxieme fois que vous briefez l'agent sur la meme sequence, figez-la. Ensuite choisissez la forme selon sa richesse. Une action unique et claire sans assets est un simple fichier command. Un processus multi-etapes avec ses propres templates, scripts ou docs de reference, ou un que Claude doit charger automatiquement, est un skill. Vous pouvez commencer par un command et le faire evoluer en skill plus tard. Gardez votre bibliotheque petite et ciblee: deux ou trois auxquels vous recourez vraiment battent vingt que vous oubliez.
Pas à pas
Choisir un workflow que vous repetez
Choisissez l'instruction multi-etapes que vous retapez sans cesse, comme un deploy, un enchainement commit-et-PR ou une routine scaffold-et-test.
Commencer par un fichier command
Creez .claude/commands/<nom>.md avec votre prompt et une description dans le frontmatter. Utilisez $ARGUMENTS pour accepter un input. Appelez-le via /<nom>.
Le promouvoir en SKILL.md quand il grandit
Quand le workflow a besoin de fichiers groupes ou que vous voulez que Claude le charge automatiquement, creez .claude/skills/<nom>/SKILL.md avec une description affutee. Le nom du repertoire devient la commande.
Ajouter du contexte dynamique si utile
Inlinez des donnees live avec une ligne !`command` (par exemple !`git diff HEAD`), pour que le skill arrive deja rempli de vrai contexte.
Regler le controle d'invocation
Pour les workflows qui ne doivent tourner que sur demande, ajoutez disable-model-invocation: true pour que Claude ne les declenche jamais de lui-meme. Gardez le corps court pour limiter le cout en contexte.
