Ce que c'est et pourquoi ça compte
Vous demandez à Claude un calendrier pour choisir une date, et il en construit un de zéro : 335 lignes à lire et à réparer quand elles cassent. Pourtant votre projet avait déjà son champ de saisie, et chaque navigateur a déjà un calendrier. Dix lignes suffisaient.
ponytail met dans votre Claude un développeur senior paresseux, au bon sens du terme. Avant d'écrire, il lit le code que la modification touche et cherche ce qui existe déjà : dans le projet, dans le navigateur ou le langage, dans les bibliothèques que vous avez installées. Puis il écrit seulement ce qui manque. Les contrôles, en revanche, il ne les coupe pas, et là où il y a de l'argent ou de la sécurité, il laisse un petit test.
C'est un prompt (une skill, c'est-à-dire un fichier d'instructions pour Claude) plus un plugin qui le charge à chaque session. Gratuit, licence MIT, plus de 180 000 étoiles sur GitHub fin octobre. Son auteur l'a mesuré sur 39 tâches : en moyenne 53 % de lignes et 26 % de coût en moins. Comment les lire : étape 6. C'est pour qui construit seul avec Claude Code et ne veut pas relire du code inutile.
1. L'installer dans Claude Code
Ouvrez Claude Code et envoyez ces deux lignes en deux messages séparés : en un seul, d'après le guide d'installation, ça ne marche pas.
/plugin marketplace add DietrichGebert/ponytail
/plugin install ponytail@ponytail
La première ajoute le marketplace, le catalogue où Claude Code va chercher le plugin. La seconde ouvre la fiche du plugin : lisez ce qu'il installe et choisissez « Install for you », pour qu'il vaille dans tous vos projets. Dans l'application de bureau, onglet Code, tapez les mêmes lignes dans le champ du prompt.
Pour vérifier qu'il est activé :
- Dans /plugin, onglet Installed, ponytail est là.
- Au début de chaque session, ponytail affiche le niveau actif.
- /ponytail seul vous donne le niveau ; s'il était éteint, il l'allume.
Autres agents : copiez le fichier AGENTS.md du repo dans votre projet (règles toujours actives, sans commandes) ou suivez INSTALL.md.
2. Comment il raisonne : l'échelle avant d'écrire
Le cœur de ponytail est une échelle. Il lit la tâche et le code qu'elle touche, puis s'arrête au premier barreau qui règle tout :
- Est-ce vraiment nécessaire ? Ce que personne n'a demandé, il le saute, et vous le dit en une ligne.
- Est-ce déjà dans le projet ? Un composant ou une fonction que vous utilisez ailleurs : il prend ça.
- Le langage ou le navigateur le font-ils ? Il prend ça, mais un composant du projet passe avant.
- Une bibliothèque déjà installée le fait-elle ? Jamais une nouvelle bibliothèque pour quelques lignes.
- Une ligne claire suffit-elle ? Une ligne.
- Seulement alors le minimum de code qui marche, avec un petit test s'il y a de la logique.
Le calendrier vient de son benchmark, avec la demande « ajoute un sélecteur de date ». Sans ponytail, 335 lignes. Avec ponytail, 10, qui réutilisent le composant Input du projet avec type="date" : c'est le navigateur qui apporte le calendrier. Pour être honnête : c'est le cas le plus extrême des 39 tâches. Sur beaucoup de petites tâches, la différence est faible ou nulle.
Pour le voir travailler, demandez ainsi (changez les parties entre [ ]) :
Ajoute [un sélecteur de date] à [le formulaire de réservation]. Avant d'écrire, dis-moi ce qui existe déjà dans le projet, dans le navigateur ou dans les bibliothèques installées pour faire ce travail, et à quel barreau tu t'es arrêté.
3. Les trois niveaux d'intensité, et off
Il démarre tout seul, au niveau full. Vous le changez avec /ponytail et le niveau, jusqu'à la fin de la session.
- lite : il fait ce que vous avez demandé et propose en une ligne la version plus petite. Je l'utilise quand la demande est déjà décidée.
- full : l'échelle de l'étape 2, avec le test là où il faut. C'est celui que je garde presque toujours.
- ultra : en plus, il remet la demande en question et, avant de construire, vous dit ce que le besoin ne justifie pas. Je l'utilise au début d'un projet.
- off : l'éteint. Un message avec seulement « stop ponytail » suffit aussi.
/ponytail ultra
Pour changer le niveau de départ de toutes les sessions, écrivez-le dans ~/.config/ponytail/config.json (sous Windows dans %APPDATA%\ponytail) :
{ "defaultMode": "lite" }Ou il y a la variable d'environnement PONYTAIL_DEFAULT_MODE, qui l'emporte sur le fichier. Avec "off", il ne démarre pas tout seul : vous l'allumez avec /ponytail.
4. Les deux commandes de revue
Les deux écrivent un rapport et ne touchent pas au code. Chaque problème est numéroté et dit ce que fait ce code, ce qui ne va pas, comment le corriger et ce qui arrive si vous le laissez. Le rapport est en général en anglais simple.
/ponytail-review : la modification que vous venez de faire
Seul, il regarde les modifications pas encore dans un commit, ou le dernier commit s'il n'y en a pas. Il lit aussi le code qui les utilise, parce qu'une modification peut casser un fichier que vous n'avez pas touché. Pour choisir ce qu'il regarde, ajoutez un mot : uncommitted, staged (prêtes pour le commit), branch ou le lien d'une PR.
/ponytail-review branch
Puis répondez avec les numéros :
Corrige la 1 et la 3 avec la correction la plus petite que tu as proposée. Laisse les autres.
/ponytail-audit : tout le projet, par ordre d'importance
Les mêmes contrôles, sur tout le repo ou sur le dossier que vous lui nommez. D'abord il fait la carte : par où entrent les données, où elles finissent, quelle charge il faut tenir. Puis il classe au maximum 20 problèmes, du plus grave au moins grave, et vous dit par lequel commencer. Je le lance sur un projet que je n'ai pas ouvert depuis des mois.
/ponytail-audit
Si le menu de Claude Code affiche les commandes précédées du nom du plugin, comme /ponytail:ponytail-review, utilisez cette forme.
5. Les raccourcis signalés et le bandeau au-dessus du prompt
Quand il choisit un raccourci avec une limite connue, ponytail l'écrit dans le code avec un commentaire shortcut: suivi de la limite et du moment où le changer. Par exemple une liste gardée en mémoire, qui tient tant que les utilisateurs sont peu nombreux. Ce sont des décisions, pas des erreurs, mais il faut les relire : /ponytail-debt les rassemble dans un registre et signale celles qui ne disent pas quand les revoir.
/ponytail-debt
Écris ce registre dans PONYTAIL-DEBT.md.
Avec un Claude Code récent, dans le terminal et l'application de bureau, il y a un bandeau au-dessus du prompt : ce que consomme la tâche, le temps de l'agent, combien de code il a réutilisé, si les tests sont passés. /ponytail band le masque et le remet.
6. Les chiffres, lus honnêtement
Ce sont les chiffres de son auteur : 39 tâches, Claude Code avec Opus, 5 essais par tâche. La méthode et les scripts sont dans le repo.
- Lignes de code : 53 % de moins en moyenne (entre 41 % et 63 %).
- Coût : 26 % de moins au prix catalogue (entre 16 % et 36 %). Avec un abonnement, vous ne payez pas moins : vous consommez moins de votre limite.
- Un test là où la logique en demande un : 98 % des fois, contre 68 % sans ponytail.
- Exactitude, sur les 18 tâches avec des contrôles cachés : égalité. Moins de code n'a pas retiré de sécurité, mais n'en a pas ajouté non plus.
Dans le benchmark, l'agent ne pouvait pas lancer de commandes : on mesure ce qu'il écrit, pas comment il travaille dans votre projet. Et ponytail reste un prompt : Claude peut quand même se tromper, et les raccourcis, c'est vous qui les relisez.
Les erreurs les plus courantes
- Envoyer les deux lignes d'installation en un seul message.
- L'installer depuis une copie : l'original, c'est seulement DietrichGebert/ponytail sur GitHub (ou @dietrichgebert/ponytail sur npm), et il ne contient jamais de fichiers .exe ou .dll.
- Ne pas avoir Node.js : les instructions marchent, mais à chaque message s'affiche l'erreur « node: command not found ».
- Laisser les commentaires shortcut: sans les lire : la limite qu'ils indiquent arrive tôt ou tard.
Check-list
- J'ai envoyé les deux lignes d'installation en deux messages séparés
- En tapant /ponytail, je vois le niveau actif
- J'ai essayé /ponytail-review sur une vraie modification à moi
- J'ai lu les raccourcis avec /ponytail-debt
Questions fréquentes
ponytail est-il gratuit ?
Oui, licence MIT. Mais les réponses de Claude consomment votre usage, comme toujours.
Coupe-t-il aussi les contrôles de sécurité ?
Non. La validation des données venues de l'extérieur, la gestion des erreurs qui évite de perdre des données, la sécurité et l'accessibilité ne sont jamais coupées. Sur les six tâches de sécurité du benchmark : 30 essais sur 30, comme sans ponytail.
Et si j'ai vraiment besoin de la solution longue ?
Demandez-la clairement : les instructions disent de ne jamais couper ce que vous avez demandé. Ou passez à lite.