Une commande slash est un fichier Markdown dont le corps devient un prompt. C'est le moyen le plus simple d'arrêter de retaper la même demande — une relecture, une vérification de version, un résumé dans la forme attendue par votre équipe — et la partie la moins capricieuse de toute la configuration. Le seul endroit où cela dérape, ce sont les arguments. Tout ce qui suit le nom de la commande arrive comme un marqueur, les mots isolés comme des marqueurs numérotés, et un corps qui n'en mentionne aucun ignore ce que l'utilisateur a passé tout en continuant d'annoncer qu'il accepte quelque chose. Ce créateur écrit le fichier, propose les marqueurs sous forme de boutons et signale ce décalage dans les deux sens.
Fonctionnalités
Marqueurs insérés depuis des boutons plutôt que mémorisés
Avertit quand un argument est annoncé mais jamais utilisé par le prompt
Avertit quand le prompt utilise un argument sans rien dire à l’utilisateur
Liste d’outils facultative et choix de modèle
Le nom est vérifié comme nom de fichier, car c’est ce qu’il devient
Portée projet ou personnelle avec le chemin correspondant
Un aperçu de la façon dont la commande sera tapée
Se télécharge en fichier .md prêt à l’emploi
Comment utiliser Générateur de commandes
Nommez la commande — ce sera /nom et le nom du fichier
Écrivez le prompt en insérant $ARGUMENTS ou $1 là où va l’entrée
Ajoutez un indice d’argument pour guider l’utilisateur
Choisissez une portée et téléchargez le fichier
Exemple
Entrée
argument-hint: <pr-number>
Sortie
Review pull request #$1.
L’indice et le marqueur doivent concorder, sinon l’un des deux ment.
Erreurs courantes et dépannage
La commande ignore ce que je tape après. — Le corps doit utiliser l’entrée. $ARGUMENTS est tout ce qui a été tapé ; $1, $2 et $3 sont les mots isolés.
La commande n’apparaît pas dans la liste. — Le nom de fichier est le nom de la commande : minuscules et tirets, et le fichier doit être dans le répertoire de commandes de la portée choisie.
La description manque dans la liste. — Elle vient du champ description du frontmatter. Sans lui, la commande apparaît sans étiquette.
$1 et $ARGUMENTS semblent se recouper. — Ils se recoupent : $ARGUMENTS contient tout, $1 en est le premier mot. Utilisez l’un ou l’autre, sauf à vouloir les deux sciemment.
Foire aux questions
Quelle différence entre $ARGUMENTS et $1 ?
$ARGUMENTS est toute la chaîne tapée après le nom de la commande. $1, $2 et $3 sont les mots séparés par des espaces. Prenez les numérotés quand la commande reçoit un jeu d’entrées fixe, et $ARGUMENTS pour du texte libre.
Ai-je besoin d’une liste d’outils ?
Non, et la plupart des commandes n’en ont pas. Elle se justifie quand une commande doit pouvoir exécuter quelque chose de précis sans demander à chaque fois, ou quand vous voulez qu’elle ne puisse pas faire ce que la session ferait.
Où vit un fichier de commande ?
Une commande de projet vit dans le dépôt pour toute l’équipe ; une commande personnelle vous suit. Le chemin exact est affiché et se met à jour avec le nom.
Une commande peut-elle appeler des outils ?
Le corps est un prompt : il peut demander tout ce que la session pouvait déjà faire. La liste d’outils élargit ou rétrécit ce qui s’exécute sans demander ; elle n’accorde rien de nouveau.
Quand faut-il une commande plutôt qu’une skill ?
Une commande s’invoque délibérément en la tapant. Une skill est associée automatiquement quand une tâche paraît pertinente. Si vous voulez choisir le moment, écrivez une commande ; si cela doit arriver tout seul, écrivez une skill.
Outils associés
Générateur de skills — Écrivez un SKILL.md dont le frontmatter est vérifié à la frappe.
Générateur de sous-agents — Créez le fichier de définition d'un sous-agent, outils et modèle compris.
Générateur de hooks — Créez des hooks settings.json et repérez les matchers qui ne se déclenchent jamais.
Manifeste de plugin — Générez un plugin.json et voyez l'arborescence qu'il suppose.