commit-push Skill
Commitet lokale Änderungen im Conventional Commits Format und pusht sie in ein Remote-Repository.
- GitHub Stars
- 87
- Dateien
- 1
- Letzter Commit
- 15. Sept. 2026
- Lizenz
- Apache-2.0
- Erlaubte Tools
- —
Was macht der commit-push Skill?
commit-push ist ein Agent Skill. Commitet lokale Änderungen im Conventional Commits Format und pusht sie in ein Remote-Repository.
Zusammenfassung erzeugt aus der SKILL.md des Skills.
Über den commit-push skill
Dieser Skill ermöglicht es Entwicklern in terminalbasierten Umgebungen, den Prozess von Staging, Committing und Pushing von Code-Änderungen zu automatisieren. Ein Agent sollte dieses Tool laden, sobald er Coding-Aufgaben abgeschlossen hat und lokale Modifikationen mit einem Remote-Repository synchronisieren muss. Der Prozess folgt einer strikten Abfolge von Prüfschritten, um sicherzustellen, dass der Diff verstanden wurde, die Commit-Message dem Conventional Commits Format entspricht und der Staging-Bereich mit den beabsichtigten Änderungen übereinstimmt.
Durch die Nutzung von Standard-Git-Commands wie git status, git diff und git log analysiert der Skill, ob eine Änderung ein feat, fix, docs, refactor, test, chore, perf oder ci ist. Er erstellt eine strukturierte Commit-Message, die einen Typ, einen optionalen Scope und eine Beschreibung enthält, während er gleichzeitig Multi-Line-Bodies und Issue-Referenzen verarbeitet. Der Workflow schließt mit der Verifizierung ab, dass der lokale Branch nach dem git push Befehl auf dem neuesten Stand mit seinem Upstream ist.
Was ein agent damit machen kann
- 1Commit-Historie standardisierenEin AI-Agent kann alle lokalen Änderungen gemäß der Conventional Commits Spezifikation formatieren, um ein sauberes Projekt-Log zu führen.
- 2Breaking Changes dokumentierenDer Agent kann abwärtskompatible Updates identifizieren und kennzeichnen, indem er das entsprechende Ausrufezeichen zum Commit-Scope hinzufügt.
- 3Lokale Arbeit mit Remotes synchronisierenEin Agent kann abgeschlossene Features in ein Remote-Repository pushen und bestätigen, dass der Branch erfolgreich aktualisiert wurde.
Geschrieben basierend auf dem SKILL.md des skills. Jeder use case wurde gegen ein zitat daraus geprüft.
So installierst du den commit-push Skill
Jeder Befehl kopiert den Skill-Ordner in das Skills-Verzeichnis des Clients. Starte den Client neu oder beginne eine neue Session, um ihn zu laden.Den commit-push Skill in Plugin installieren
/plugin marketplace add existential-birds/beagle /plugin install beagle-core@existential-birds
Den commit-push Skill in Claude Code installieren
~/.claude/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.claude/skills/commit-pushDen commit-push Skill in Claude Code (project) installieren
.claude/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push .claude/skills/commit-pushDen commit-push Skill in Codex installieren
~/.agents/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.agents/skills/commit-pushDen commit-push Skill in Gemini CLI installieren
~/.gemini/skills/commit-push/SKILL.md
$ npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.gemini/skills/commit-pushDen commit-push Skill in Claude.ai installieren
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
Auf GitHub ansehenCommit 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).
Dateien in diesem Skill
1commit-push Skill-Fragen
Wie installiere ich den commit-push Skill in Claude Code?
Führe npx degit existential-birds/beagle/plugins/beagle-core/skills/commit-push ~/.claude/skills/commit-push aus. Claude Code lädt Skills aus ~/.claude/skills (alle Projekte) oder .claude/skills (ein Projekt) und nutzt einen Skill, wenn seine Beschreibung zur Aufgabe passt.
Welche Clients können den commit-push Skill nutzen?
Jeder Client, der das Agent Skills-Format liest: Claude Code, Codex, Gemini CLI und claude.ai (als ZIP hochladen). Skripte im Skill laufen nur dort, wo der Client Codeausführung erlaubt.
Welches Commit-Format nutzt dieser Skill?
Der Skill folgt dem Conventional Commits Format, das einen Typ, einen optionalen Scope und eine Beschreibung umfasst.
Wie sollte ich die Beschreibung der Commit-Message schreiben?
Du solltest den Imperativ verwenden, zum Beispiel 'add feature' statt 'added feature', und die erste Zeile unter 72 Zeichen halten.