Skill commit-push
Effectue les commits des modifications locales en utilisant le format Conventional Commits et les pousse vers un dépôt distant.
- Étoiles GitHub
- 87
- Fichiers
- 1
- Dernier commit
- 15 sept. 2026
- Licence
- Apache-2.0
- Outils autorisés
- —
Que fait la skill commit-push ?
commit-push est une agent skill. Effectue les commits des modifications locales en utilisant le format Conventional Commits et les pousse vers un dépôt distant.
Résumé généré à partir du SKILL.md de la skill.
À propos du skill commit-push
Cette SKILL permet aux développeurs travaillant dans des environnements en ligne de commande d'automatiser le processus de staging, de commit et de push des modifications de code. Un agent doit charger cet outil lorsqu'il a terminé ses tâches de codage et qu'il doit synchroniser les modifications locales avec un dépôt distant. Le processus suit une séquence stricte de contrôles pour garantir que le diff est compris, que le message de commit respecte le format Conventional Commits et que la zone de staging correspond aux changements prévus.
En utilisant les commandes git standards telles que git status, git diff et git log, la SKILL analyse si un changement est un feat, fix, docs, refactor, test, chore, perf ou ci. Elle génère un message de commit structuré comprenant un type, un scope optionnel et une description, tout en gérant les corps de message multi-lignes et les références aux issues. Le flux de travail se termine par la vérification que la branche locale est à jour avec son upstream après l'exécution de la commande git push.
Ce qu'un agent peut faire avec
- 1Standardiser l'historique des commitsUn agent IA peut formater toutes les modifications locales selon la spécification Conventional Commits afin de maintenir un journal de projet propre.
- 2Documenter les breaking changesL'agent peut identifier et signaler les mises à jour non rétrocompatibles en ajoutant le point d'exclamation approprié au scope du commit.
- 3Synchroniser le travail local avec les dépôts distantsUn agent peut pusher des fonctionnalités terminées vers un dépôt distant et confirmer que la branche a été mise à jour avec succè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 commit-push
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 commit-push dans Plugin
/plugin marketplace add existential-birds/beagle /plugin install beagle-core@existential-birds
Installer la skill commit-push dans Claude Code
~/.claude/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.claude/skills/commit-pushInstaller la skill commit-push dans Claude Code (project)
.claude/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push .claude/skills/commit-pushInstaller la skill commit-push dans Codex
~/.agents/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.agents/skills/commit-pushInstaller la skill commit-push dans Gemini CLI
~/.gemini/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.gemini/skills/commit-pushInstaller la skill commit-push dans Claude.ai
npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push commit-push && zip -r commit-push.zip commit-push # claude.ai → Customize → Skills → + → Create skill → Upload a skill → commit-push.zip
SKILL.md
Voir sur GitHubCommit and Push
Commit all local changes following Conventional Commits format and push to remote.
Gates
Complete in order. Do not run the next action until the Pass condition is satisfied (use command output as evidence, not memory).
- Diff understood — Pass when: Outputs from
git status,git diff, andgit diff --cachedare consistent with your one-sentence description of what changed (or you recorded that there is nothing to commit). - Commit line chosen — Pass when: You have a draft first line
type(scope): description(ortype: descriptionif omitting scope) that matches the change set you intend to ship. - Staging matches intent — Pass when: After
git add,git diff --cached --stat(and spot-checkgit diff --cachedif needed) shows only the paths you meant to include; adjust staging before committing if not. - Push target confirmed — Pass when: Current branch and remote are the ones you intend (
git branch -vv,git remote -v); then push. - Remote caught up — Pass when:
git statusis clean andgit status -sbshows the branch is up to date with its configured upstream (no unexpected unpushed commits left for this task).
Step 1: Gather Context
Run these commands in parallel to understand the changes:
# See all untracked and modified files
git status
# See staged and unstaged changes
git diff
git diff --cached
# See recent commit messages for style reference
git log --oneline -10
Step 2: Analyze Changes
Review the changes and determine:
-
Type: What kind of change is this?
feat- New feature or capabilityfix- Bug fixdocs- Documentation onlyrefactor- Code restructure without behavior changetest- Adding or updating testschore- Maintenance, dependency updatesperf- Performance improvementci- CI/CD changes
-
Scope: Which component is affected?
- Examine the changed files and determine the appropriate scope
- Use consistent scope names within the project (check
git logfor patterns) - (omit scope for cross-cutting changes)
-
Breaking: Does this break backward compatibility? If yes, add ! after scope.
Step 3: Write Commit Message
Format:
type(scope): description
[optional body explaining why, not what]
[optional footer with issue references]
Rules:
- Use imperative mood: "add feature" not "added feature"
- Keep first line under 72 characters
- Focus on why in the body, the diff shows what
- Reference issues:
Closes #123orFixes #456
Step 4: Stage, Commit, and Push
Satisfy Gates 1–3 before git commit; satisfy Gate 4 before git push; satisfy Gate 5 after push.
# Stage all changes (or selectively stage)
git add -A
# Gate 3: confirm staged set before committing
git diff --cached --stat
# Commit with message (use HEREDOC for multi-line)
git commit -m "$(cat <<'EOF'
type(scope): description
Optional body explaining the motivation.
Closes #123
EOF
)"
# Push to remote
git push
Examples
# Simple feature
git commit -m "feat(api): add pagination support to list endpoints"
# Bug fix with body
git commit -m "$(cat <<'EOF'
fix(auth): handle token expiration during long requests
The previous implementation did not account for tokens expiring
during the processing of long-running requests.
Fixes #42
EOF
)"
# Breaking change
git commit -m "$(cat <<'EOF'
feat!(api): change response format for user endpoints
BREAKING CHANGE: The `status` field is now an object with `state` and
`message` properties instead of a plain string.
EOF
)"
Optionally append a co-author or footer trailer per project convention (e.g. a Co-Authored-By: line or a tool-attribution footer). Omit it when the project has no such convention.
Step 5: Verify
After pushing, satisfy Gate 5: run git status and git status -sb and confirm a clean tree and upstream sync (or an expected ahead/behind you can explain, e.g. fork workflow).
Fichiers de cette skill
1Questions sur la skill commit-push
Comment installer la skill commit-push dans Claude Code ?
Exécutez npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.claude/skills/commit-push. 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 commit-push ?
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.
Quel format de commit cette SKILL utilise-t-elle ?
La SKILL suit le format Conventional Commits, qui inclut un type, un scope optionnel et une description.
Comment dois-je rédiger la description du message de commit ?
Vous devez utiliser le mode impératif, par exemple 'add feature' au lieu de 'added feature', et veiller à ce que la première ligne ne dépasse pas 72 caractères.