Skill git-commit
scriptsGénérez des messages de commit conventionnels à partir de diffs et exécutez des commits git.
- Étoiles GitHub
- 8
- Fichiers
- 4
- Dernier commit
- 28 oct. 2026
- Licence
- MIT
- Outils autorisés
- —
Que fait la skill git-commit ?
git-commit est une agent skill. Générez des messages de commit conventionnels à partir de diffs et exécutez des commits git.
Résumé généré à partir du SKILL.md de la skill.
À propos du skill git-commit
Cette SKILL permet aux développeurs travaillant dans des environnements en ligne de commande d'automatiser la création de messages de commit standardisés et l'exécution de commits git. Lorsqu'un agent doit préparer des changements ou finaliser une modification de code, il charge cet outil pour analyser les diffs indexés ou non. Il produit des messages de commit conventionnels suivant la spécification de conventionalcommits.org, garantissant que chaque entrée inclut un type, un scope optionnel et une description à l'impératif.
Le processus repose sur la lecture de git status et git diff pour s'assurer que le message reflète fidèlement les changements de code réels plutôt que de se baser sur des suppositions. Il inclut un mécanisme de linting pré-commit qui détecte et exécute automatiquement les linters spécifiques au projet comme npm, ruff, flake8 ou golangci-lint afin de bloquer les commits qui échouent aux contrôles de qualité. Cet outil est spécifiquement conçu pour les commits de développement standards et ne doit pas être utilisé pour générer des commits de release ou gérer des workflows de fin de branche.
Ce qu'un agent peut faire avec
- 1Générer des messages de commit conventionnelsUn agent IA peut rédiger un message de commit structuré basé sur les changements spécifiques trouvés dans un diff de code.
- 2Gérer correctement les breaking changesLes développeurs peuvent utiliser l'outil pour formater automatiquement les breaking changes avec le point d'exclamation et le footer requis.
- 3Organiser des changements mixtes en commitsL'agent peut identifier lorsqu'un diff contient des préoccupations non liées et suggérer de les diviser en commits séparés.
Rédigé à partir du SKILL.md du skill. Chaque cas d'utilisation est vérifié par rapport à une citation de celui-ci.
Comment installer la skill git-commit
Chaque commande copie le dossier de la skill dans le répertoire des skills du client. Redémarrez le client ou démarrez une nouvelle session pour la charger.Installer la skill git-commit dans Plugin
/plugin marketplace add mgiovani/cc-arsenal /plugin install cc-arsenal@cc-arsenal-marketplace
Installer la skill git-commit dans Claude Code
~/.claude/skills/git-commit/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/git-commit ~/.claude/skills/git-commitInstaller la skill git-commit dans Claude Code (project)
.claude/skills/git-commit/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/git-commit .claude/skills/git-commitInstaller la skill git-commit dans Codex
~/.agents/skills/git-commit/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/git-commit ~/.agents/skills/git-commitInstaller la skill git-commit dans Gemini CLI
~/.gemini/skills/git-commit/SKILL.md
$ npx degit mgiovani/cc-arsenal/skills/git-commit ~/.gemini/skills/git-commitInstaller la skill git-commit dans Claude.ai
npx degit mgiovani/cc-arsenal/skills/git-commit git-commit && zip -r git-commit.zip git-commit # claude.ai → Customize → Skills → + → Create skill → Upload a skill → git-commit.zip
SKILL.md
Voir sur GitHubGit Commit
Generate a conventional commit message and create the commit.
Quality Guidelines
Base the message only on what the diff actually shows, not assumptions:
- Read
git statusandgit diff --staged(orgit diffif nothing is staged yet) before writing anything. - Check which files/modules changed before setting scope.
- Look for removed exports, changed signatures, deleted functions to catch breaking changes.
- If the purpose of a change is unclear, ask the user rather than guess.
Pre-commit Linting
In Claude Code, a PreToolUse hook runs before every git commit: it detects the project's
linter (Node's npm/bun/pnpm/yarn run lint, Python's ruff/flake8, make lint, rubocop,
golangci-lint) and blocks the commit if it fails. No linter configured means the commit
proceeds unblocked. Outside Claude Code (no hook support), run the project's lint command
yourself before committing. Never bypass a failing lint with --no-verify: fix the errors
and re-run the commit instead.
Workflow
- Run
git statusandgit diff --stagedto see what actually changed. - If the diff mixes unrelated concerns (e.g. a feature plus an unrelated fix plus docs),
split into separate commits by staging each group with
git add <files>and committing them one at a time. Otherwise, one commit is enough, don't force a split. - For each commit, pick the type:
feat: new featurefix: bug fixdocs: documentation onlystyle: formatting, no code meaning changerefactor: neither fixes a bug nor adds a featureperf: performance improvementtest: adding or correcting testsbuild: build system or dependency changesci: CI configuration/scriptschore: everything else that doesn't touch src or testsrevert: reverts a previous commit
- Format as
type(scope): description, scope optional, description imperative mood ("add" not "added"), max ~50 characters. Skip the body for a typo fix or a single dependency bump; add a wrapped body (why, not how) once the change alters behavior or touches multiple files. For breaking changes, append!after the scope and add aBREAKING CHANGE: ...footer.
Example formats
feat(auth): add OAuth2 login support
fix(api): resolve null pointer in user endpoint
docs: update installation instructions
chore(deps): bump lodash to 4.17.21
feat(shopping-cart)!: remove deprecated calculate method
BREAKING CHANGE: calculate has been removed, use computeTotal instead
Ask for confirmation before committing if the changes are complex or span multiple concerns; otherwise just commit.
Fichiers de cette skill
4Questions sur la skill git-commit
Comment installer la skill git-commit dans Claude Code ?
Exécutez npx degit mgiovani/cc-arsenal/skills/git-commit ~/.claude/skills/git-commit. Claude Code charge les skills depuis ~/.claude/skills (tous les projets) ou .claude/skills (un seul projet) et utilise une skill lorsque sa description correspond à la tâche.
Quels clients peuvent utiliser la skill git-commit ?
Tout client qui lit le format Agent Skills : Claude Code, Codex, Gemini CLI et claude.ai (envoi sous forme de ZIP). Les scripts de la skill ne s'exécutent que si le client autorise l'exécution de code.
Que se passe-t-il si le projet a un linter configuré ?
Un hook PreToolUse s'exécute avant le commit pour détecter le linter du projet et bloquera le commit si le linting échoue.
Comment dois-je gérer un diff qui contient plusieurs changements non liés ?
Vous devez diviser les changements en commits séparés en ajoutant chaque groupe de modifications individuellement avec git add <files> et en les commitant un par un.
Quel est le format pour un commit de breaking change ?
Pour les breaking changes, vous devez ajouter un point d'exclamation après le scope et inclure un footer 'BREAKING CHANGE: ...'.