Commandes slash intégrées

CommandeObjectif
/add-dirAjouter des répertoires de travail supplémentaires
/agentsGérer les sous-agents IA personnalisés pour des tâches spécialisées
/bugSignaler des bugs (envoie la conversation à Anthropic)
/clearEffacer l’historique de conversation
/compact [instructions]Compacter la conversation avec des instructions de focus optionnelles
/configVoir/modifier la configuration
/costAfficher les statistiques d’utilisation des tokens (voir le guide de suivi des coûts pour les détails spécifiques aux abonnements)
/doctorVérifie la santé de votre installation Claude Code
/helpObtenir de l’aide sur l’utilisation
/initInitialiser le projet avec le guide CLAUDE.md
/loginChanger de compte Anthropic
/logoutSe déconnecter de votre compte Anthropic
/mcpGérer les connexions de serveur MCP et l’authentification OAuth
/memoryModifier les fichiers de mémoire CLAUDE.md
/modelSélectionner ou changer le modèle IA
/permissionsVoir ou mettre à jour les permissions
/pr_commentsVoir les commentaires de pull request
/reviewDemander une revue de code
/statusVoir les statuts du compte et du système
/terminal-setupInstaller la liaison de touches Shift+Enter pour les nouvelles lignes (iTerm2 et VSCode uniquement)
/vimEntrer en mode vim pour alterner entre les modes insertion et commande

Commandes slash personnalisées

Les commandes slash personnalisées vous permettent de définir des prompts fréquemment utilisés sous forme de fichiers Markdown que Claude Code peut exécuter. Les commandes sont organisées par portée (spécifiques au projet ou personnelles) et supportent l’espacement de noms à travers les structures de répertoires.

Syntaxe

/<nom-commande> [arguments]

Paramètres

ParamètreDescription
<nom-commande>Nom dérivé du nom de fichier Markdown (sans l’extension .md)
[arguments]Arguments optionnels passés à la commande

Types de commandes

Commandes de projet

Commandes stockées dans votre dépôt et partagées avec votre équipe. Lorsqu’elles sont listées dans /help, ces commandes affichent “(project)” après leur description.

Emplacement : .claude/commands/

Dans l’exemple suivant, nous créons la commande /optimize :

# Créer une commande de projet
mkdir -p .claude/commands
echo "Analyser ce code pour les problèmes de performance et suggérer des optimisations :" > .claude/commands/optimize.md

Commandes personnelles

Commandes disponibles dans tous vos projets. Lorsqu’elles sont listées dans /help, ces commandes affichent “(user)” après leur description.

Emplacement : ~/.claude/commands/

Dans l’exemple suivant, nous créons la commande /security-review :

# Créer une commande personnelle
mkdir -p ~/.claude/commands
echo "Examiner ce code pour les vulnérabilités de sécurité :" > ~/.claude/commands/security-review.md

Fonctionnalités

Espacement de noms

Organisez les commandes dans des sous-répertoires. Les sous-répertoires sont utilisés pour l’organisation et apparaissent dans la description de la commande, mais ils n’affectent pas le nom de la commande lui-même. La description indiquera si la commande provient du répertoire du projet (.claude/commands) ou du répertoire au niveau utilisateur (~/.claude/commands), ainsi que le nom du sous-répertoire.

Les conflits entre les commandes au niveau utilisateur et au niveau projet ne sont pas supportés. Sinon, plusieurs commandes avec le même nom de fichier de base peuvent coexister.

Par exemple, un fichier à .claude/commands/frontend/component.md crée la commande /component avec une description affichant “(project:frontend)”. Pendant ce temps, un fichier à ~/.claude/commands/component.md crée la commande /component avec une description affichant “(user)”.

Arguments

Passez des valeurs dynamiques aux commandes en utilisant des espaces réservés d’arguments :

Tous les arguments avec $ARGUMENTS

L’espace réservé $ARGUMENTS capture tous les arguments passés à la commande :

# Définition de commande
echo 'Corriger le problème #$ARGUMENTS en suivant nos standards de codage' > .claude/commands/fix-issue.md

# Utilisation
> /fix-issue 123 haute-priorité
# $ARGUMENTS devient : "123 haute-priorité"
Arguments individuels avec $1, $2, etc.

Accédez aux arguments spécifiques individuellement en utilisant des paramètres positionnels (similaire aux scripts shell) :

# Définition de commande  
echo 'Examiner la PR #$1 avec priorité $2 et assigner à $3' > .claude/commands/review-pr.md

# Utilisation
> /review-pr 456 haute alice
# $1 devient "456", $2 devient "haute", $3 devient "alice"

Utilisez les arguments positionnels quand vous devez :

  • Accéder aux arguments individuellement dans différentes parties de votre commande
  • Fournir des valeurs par défaut pour les arguments manquants
  • Construire des commandes plus structurées avec des rôles de paramètres spécifiques

Exécution de commandes bash

Exécutez des commandes bash avant que la commande slash ne s’exécute en utilisant le préfixe !. La sortie est incluse dans le contexte de la commande. Vous devez inclure allowed-tools avec l’outil Bash, mais vous pouvez choisir les commandes bash spécifiques à autoriser.

Par exemple :

---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
description: Créer un commit git
---

## Contexte

- Statut git actuel : !`git status`
- Diff git actuel (changements indexés et non indexés) : !`git diff HEAD`
- Branche actuelle : !`git branch --show-current`
- Commits récents : !`git log --oneline -10`

## Votre tâche

Basé sur les changements ci-dessus, créer un seul commit git.

Références de fichiers

Incluez le contenu des fichiers dans les commandes en utilisant le préfixe @ pour référencer des fichiers.

Par exemple :

# Référencer un fichier spécifique

Examiner l'implémentation dans @src/utils/helpers.js

# Référencer plusieurs fichiers

Comparer @src/old-version.js avec @src/new-version.js

Mode de réflexion

Les commandes slash peuvent déclencher une réflexion étendue en incluant des mots-clés de réflexion étendue.

Frontmatter

Les fichiers de commandes supportent le frontmatter, utile pour spécifier les métadonnées sur la commande :

FrontmatterObjectifDéfaut
allowed-toolsListe des outils que la commande peut utiliserHérite de la conversation
argument-hintLes arguments attendus pour la commande slash. Exemple : argument-hint: add [tagId] | remove [tagId] | list. Cette indication est montrée à l’utilisateur lors de l’auto-complétion de la commande slash.Aucun
descriptionBrève description de la commandeUtilise la première ligne du prompt
modelChaîne de modèle spécifique (voir Aperçu des modèles)Hérite de la conversation

Par exemple :

---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
argument-hint: [message]
description: Créer un commit git
model: claude-3-5-haiku-20241022
---

Créer un commit git avec le message : $ARGUMENTS

Exemple utilisant des arguments positionnels :

---
argument-hint: [pr-number] [priority] [assignee]
description: Examiner une pull request
---

Examiner la PR #$1 avec priorité $2 et assigner à $3.
Se concentrer sur la sécurité, la performance et le style de code.

Commandes slash MCP

Les serveurs MCP peuvent exposer des prompts comme commandes slash qui deviennent disponibles dans Claude Code. Ces commandes sont découvertes dynamiquement à partir des serveurs MCP connectés.

Format de commande

Les commandes MCP suivent le modèle :

/mcp__<nom-serveur>__<nom-prompt> [arguments]

Fonctionnalités

Découverte dynamique

Les commandes MCP sont automatiquement disponibles quand :

  • Un serveur MCP est connecté et actif
  • Le serveur expose des prompts à travers le protocole MCP
  • Les prompts sont récupérés avec succès pendant la connexion

Arguments

Les prompts MCP peuvent accepter des arguments définis par le serveur :

# Sans arguments
> /mcp__github__list_prs

# Avec arguments
> /mcp__github__pr_review 456
> /mcp__jira__create_issue "Titre du bug" haute

Conventions de nommage

  • Les noms de serveur et de prompt sont normalisés
  • Les espaces et caractères spéciaux deviennent des underscores
  • Les noms sont en minuscules pour la cohérence

Gestion des connexions MCP

Utilisez la commande /mcp pour :

  • Voir tous les serveurs MCP configurés
  • Vérifier le statut de connexion
  • S’authentifier avec les serveurs activés OAuth
  • Effacer les tokens d’authentification
  • Voir les outils et prompts disponibles de chaque serveur

Permissions MCP et wildcards

Lors de la configuration des permissions pour les outils MCP, notez que les wildcards ne sont pas supportés :

  • Correct : mcp__github (approuve TOUS les outils du serveur github)
  • Correct : mcp__github__get_issue (approuve un outil spécifique)
  • Incorrect : mcp__github__* (wildcards non supportés)

Pour approuver tous les outils d’un serveur MCP, utilisez juste le nom du serveur : mcp__nomserveur. Pour approuver seulement des outils spécifiques, listez chaque outil individuellement.

Voir aussi