Agent skill · mia-cx
git-commit-and-push
Splits uncommitted changes into a small set of logical, single-concern git commits, then executes the commits and pushes to remote. Use when the user wants to commit and push, organize changes into logical commits, split a large change into multiple commits, or create a series of conventional commits from the current working tree.
What it needs
About 2k tokens when loaded.
What this skill does
Git commit and push Organize uncommitted changes into atomic, single-concern commits (one per: config, formatting, behavior, tests, docs) so history stays readable. Execute every commit and push. Run immediately, no approval round-trip. Workflow 1. Inspect current state Run git status, git diff, and (if anything is staged) git diff --staged. Record which areas changed: config, source, tests, docs, rules. 2. Check GitHub issues Run gh issue list --state open and match issues against the planned commits. When a commit fixes an issue, add Fixes #N / Closes #N on its own line in the commit body (or (fixes #N) in the subject when it's the main fix and fits). 3. Group by logical concern One commit per concern, not per file: Concern Examples Conventional type --- --- --- Config / tooling ESLint, tsconfig, package.json scripts chore or build Formatting only Blank lines, quotes, line length style Feature / behavior New logic, changed behavior feat or fix Tests New or moved tests, fixtures test Docs / rules AGENTS.md, docs, skills docs Misc / cleanup Unrelated small fixes chore, or split when feasible When a file spans two concerns, assign it to the dominant one and note the mix in the body. 4. Execute and push For each commit in order: git add <paths>, then git commit with subject, flavourful body, issue refs, and a Co-Authored-By trailer with your actual model name (e.g. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>, whatever model you actually are). Execute every commit via Bash; printing the commands is not committing. After the final commit: git push. Confirm with a summary table of what landed. Commit message format Subject Types: chore, feat, fix, docs, test, style, refactor. Present tense, under ~72 chars, no trailing period. Body (flavour zone) Every commit gets a body: genuinely useful (the why, tricky decisions, breaking changes) with a light touch of fun. Dry wit, a pun, a lyric, a mini-poem. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills mia-cx/git-commit-and-push