Créer un commit git

VérifiéSûr

Analyse les changements, génère un message de commit conventionnel et exécute le commit.

Spar Skills Guide Bot
DeveloppementDébutant
24/07/2026
Claude Code
#git#commit-messages#conventional-commits#version-control#workflow-automation

Recommandé pour

Synthèse automatique

Génère et exécute un commit Git à partir des modifications déjà indexées, en respectant la spécification Conventional Commits et la langue des commits récents.

Points forts

  • Analyse le diff indexé avant de committer et signale les secrets ou incohérences éventuelles
  • Détecte automatiquement la langue des 10 derniers commits et rédige le message en conséquence
  • Applique un format strict : type Conventional Commits, impératif, résumé court et corps obligatoire en puces
  • Explique la gestion des HEREDOC pour éviter que les backticks ne corrompent le message

Limites

  • N'exécute jamais git add : seules les modifications déjà indexées sont prises en compte
  • Ne couvre ni amend, ni squash, ni push, ni gestion des hooks ou des conflits
  • Le corps en puces étant imposé même pour un changement trivial, les messages peuvent être plus verbeux que nécessaire
Quand l'utiliser

À utiliser quand les changements sont déjà indexés et que vous voulez un message de commit cohérent et conforme sans y réfléchir.

Quand l'éviter

À éviter si vous devez d'abord sélectionner les fichiers à indexer ou réécrire l'historique existant (amend, rebase, squash).

Analyse de sécurité

Sûr
Score qualité90/100

The skill only uses scoped git commands for status, diff, log, branch, and commit. It explicitly avoids git add and git push, and it includes a step to check staged changes for secrets before committing. No destructive, exfiltrating, or obfuscated behavior is present.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

Basic commit
/commit
Commit with extra context
/commit the retry logic was flaky in CI so I added exponential backoff
Force a language
/commit write the message in Japanese

allowed-tools: Bash(git status:), Bash(git diff:), Bash(git log:), Bash(git branch:), Bash(git commit:*) argument-hint: [additional explanation] description: Create a git commit

Context

  • Current git status: !git status
  • Staged changes: !git diff --staged
  • Recent commits (for language detection): !git log -n 10 --pretty=format:"%s"
  • Current branch: !git branch --show-current

Your Task

Based on the above context:

  1. Analyze the staged changes for any critical issues:

    • Review the Staged changes from context above
    • Check for sensitive information (passwords, API keys, etc.)
    • Verify that the changes are complete and coherent
    • If issues are found, confirm with the user before proceeding
  2. Determine the commit message language:

    • Based on the Recent commits from context above
    • If the majority are in English, write in English
    • If the majority are in Japanese, write in Japanese
    • If $ARGUMENTS includes a language instruction, follow that instead
  3. Create and execute the commit:

    • Refer to the Commit Message Guidelines section below when writing the message
    • Use git commit -m with an appropriate message
  4. Verify the commit was successful:

    • Execute git status to verify the commit was successful
    • Provide a summary of what was committed to the user

Commit Message Guidelines

  • Follow the Conventional Commits specification:

    • Format: <type>(optional scope): <description>
    • Example: feat(auth): add OAuth2 login support
  • Allowed types: feat, fix, docs, style, refactor, perf, test, chore

  • Use the imperative mood in the description (e.g., "add", not "added" or "adds").

  • Keep the summary concise (max ~72 characters).

  • Body rules:

    • Always include a body — no exceptions, even for trivial-looking changes

    • Insert one blank line after the summary, then write the body

    • The body must be written as bullet points — never use prose paragraphs or a single free-form line

    • Each bullet should describe a reason, context, or detail of the change

    • Example:

      feat(auth): add OAuth2 login support
      
      - implement login with OAuth2
      - update user model with providerId
      - add tests for OAuth2 flow
      
  • Language rule:

    • Use the same language as the majority of recent commits
    • If $ARGUMENTS includes a language instruction, follow that instead
    • Scope language matches the message language: for Japanese commits, the scope may also be written in Japanese (e.g., feat(認証): OAuth2 ログインを追加). For English commits, keep the scope in English.
  • Focus rule:

    • Do not write vague phrases like "fixed review comments", or "minor fix".
    • Always describe what was actually changed (e.g., "remove unused import", "fix null check in auth flow").
  • Arguments rule:

    • Treat $ARGUMENTS as additional context or instruction for the commit message

HEREDOC Handling for Commit Messages

When composing a multi-line commit message with git commit -m "$(cat <<...EOF ... EOF)", the HEREDOC quoting style affects how backticks are interpreted:

  • Single-quoted HEREDOC (<<'EOF'): No shell expansion happens, so write raw backticks directly (e.g., inline `functionName` or `file.ts` is safe)
  • Double-quoted or unquoted HEREDOC (<<"EOF" / <<EOF): Bash may interpret backticks as command substitution. Avoid inline single backticks — use triple-backtick fenced blocks (```) if a code span is needed

Rationale: In double-quoted/unquoted HEREDOC, backticks sometimes get auto-escaped as \`, which leaks literal backslashes into the commit message.

Recommendation: Prefer <<'EOF' whenever the commit message contains backticks or code identifiers — it is the safest default.

Important Notes

  • Do not execute git add
  • The changes are already staged with the correct granularity and responsibility.
  • Do not execute git push

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/create-a-git-commit-mryiqh33/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/create-a-git-commit-mryiqh33' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/create-a-git-commit-mryiqh33/download' --output '.skill-downloads/create-a-git-commit-mryiqh33/SKILL.md.part' && mv '.skill-downloads/create-a-git-commit-mryiqh33/SKILL.md.part' '.skill-downloads/create-a-git-commit-mryiqh33/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Outils déclarés par l’auteur (à vérifier dans votre agent) : Bash(git status:*), Bash(git diff:*), Bash(git log:*), Bash(git branch:*), Bash(git commit:*)

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/create-a-git-commit-mryiqh33/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires