Commit Discipline
Des messages de commit fidèles au diff, pas seulement au format — mesuré, pas supposé.
Testé · Fonctionne
Ce que fait
Impose qu'un message de commit couvre l'intégralité du diff indexé, n'invente rien, et explique le pourquoi plutôt que de reformuler le quoi — en plus du formatage Conventional Commits standard. Lit l'intégralité du `git diff --cached` avant d'écrire, recommande de scinder les diffs à préoccupations multiples, bannit les verbes vagues comme « update » ou « fix stuff », et exige que les footers BREAKING CHANGE soient justifiés par le diff plutôt que laissés à la mémoire.
Rapport de test
Notre propre skill — testé selon le même protocole, en toute transparence. Le bench a fait passer 15 diffs réels issus de curl/redis/express/fastapi/eslint/django/rust-analyzer/astro par des agents baseline puis avec skill : la couverture du diff est passée de 83,2 % à 96,7 %, les fabrications de 1 à 0, la détection de scission sur des diffs multi-préoccupations semés est passée de 0/2 à 2/2, et la préférence A/B en aveugle a favorisé le skill 9-4-2. Le jugement s'est fait au sein de la même famille de modèles (risque d'auto-préférence, n=15, non significatif statistiquement), et le bras de base a tout de même remporté 3 cas nettement sur des diffs très ciblés — les deux réserves sont énoncées clairement dans le verdict.md et le README du skill lui-même. Le test du protocole a détecté de vrais problèmes dans nos propres dépôts (liens de benchmark morts, frontmatter YAML strict) — corrigés et revérifiés le jour même.
Testé le: 2026-07-11 · Claude Code 2.x (agent harness)
Installation
git clone https://github.com/Skillproofdev/commit-discipline ~/.claude/skills/commit-discipline
Commandes et exemples de prompts
/commit-disciplineDes messages de commit fidèles au diff, pas seulement au format — mesuré, pas supposé.
Les skills se déclenchent sur des demandes en langage courant — aucune commande à retenir. Après installation, des prompts comme ceux-ci l'activent (en anglais) :
Commit thisWrite a commit message for my staged changesCan you review this commit message: 'fix stuff'