Les slash commands sont les outils de session built-in. Les skills, c’est la couche au-dessus : tes propres commandes, qui encapsulent des workflows que tu répètes.
Un skill est un fichier Markdown qui définit une instruction réutilisable. Il devient automatiquement disponible comme slash command dans Claude Code.
Comment ça fonctionne
Section intitulée « Comment ça fonctionne »Où les mettre
Section intitulée « Où les mettre »| Emplacement | Portée |
|---|---|
~/.claude/commands/foo.md | Global — disponible dans tous les projets |
.claude/commands/foo.md | Local — spécifique au projet (peut être versionné) |
Le nom du fichier devient le nom de la commande :
commit.md→/commitreview-pr.md→/review-prdeploy.md→/deploy
Structure d’un skill
Section intitulée « Structure d’un skill »---description: Crée un commit conventionnel à partir des changements stagés---
Analyse les fichiers stagés avec `git diff --staged`.
Rédige un message de commit en suivant Conventional Commits :- type(scope): description courte- Types valides : feat, fix, docs, refactor, test, chore
Crée le commit. N'utilise jamais --no-verify.Le frontmatter description est optionnel mais recommandé — il apparaît dans /help.
Passer des arguments
Section intitulée « Passer des arguments »Utilise $ARGUMENTS pour passer du texte libre au skill :
---description: Review d'une PR GitHub---
Fais une revue de code de la PR numéro $ARGUMENTS.
Récupère le diff avec `gh pr diff $ARGUMENTS`.Identifie les problèmes bloquants, les suggestions, et les points positifs.Structure ta réponse en trois sections.Utilisation : /review-pr 142
Variables disponibles dans un skill
Section intitulée « Variables disponibles dans un skill »| Variable | Effet |
|---|---|
$ARGUMENTS | Texte passé après la commande (/deploy staging → staging) |
$CLAUDE_MODEL | Nom du modèle actif |
$CLAUDE_PROJECT_DIR | Chemin absolu du projet courant |
Un skill peut aussi déclencher des hooks — ces deux mécanismes fonctionnent en tandem pour automatiser complètement un workflow.
Exemple complet — skill de déploiement
Section intitulée « Exemple complet — skill de déploiement »---description: Déploie la branche courante sur l'environnement $ARGUMENTS---
Environnement cible : $ARGUMENTS (staging ou production).
1. Vérifie que les tests passent : `npm run test`2. Build : `npm run build`3. Si production, demande confirmation explicite avant de continuer.4. Lance le déploiement : `npm run deploy:$ARGUMENTS`5. Vérifie que le service répond avec un healthcheck.
En cas d'erreur à n'importe quelle étape, arrête et explique ce qui a échoué.