From abatilo-core
Create logically grouped, atomic git commits with well-formatted commit messages following best practices. Use when user says "/commit", "commit changes", "create commits", asks about conventional commits format, needs to split changes into multiple commits, or wants help with git add -p partial staging.
How this skill is triggered — by the user, by Claude, or both
Slash command
/abatilo-core:git-commitThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill helps you create well-structured, atomic git commits with properly formatted commit messages.
This skill helps you create well-structured, atomic git commits with properly formatted commit messages.
Use this skill when:
Based on the current git status and changes, create a set of logically grouped, atomic commits. Be specific with each grouping, and keep scope minimal. Leverage partial adds to make sure that multiple changes within a single file aren't batched into commits with unrelated changes.
Analyze Current State
git log --oneline -20) to understand:
feat:, fix:, docs:)Group Changes Logically
git add -p for partial adds when a file contains multiple logical changesCreate Commits
IMPORTANT: Before writing any commits, analyze the recent git history to determine the project's commit style:
feat:, fix:, docs:, chore:, refactor:, test:, style:, perf:, ci:, build:If the project uses conventional commits, follow this structure:
<type>[(optional scope)]: <description>
[optional body]
[optional footer(s)]
Common types:
feat: A new featurefix: A bug fixdocs: Documentation changesstyle: Code style changes (formatting, missing semicolons, etc.)refactor: Code changes that neither fix bugs nor add featuresperf: Performance improvementstest: Adding or updating testsbuild: Changes to build system or dependenciesci: Changes to CI configurationchore: Other changes that don't modify src or test filesExamples:
feat: add user authenticationfix: resolve null pointer in login handlerdocs: update API documentationrefactor(auth): simplify token validation logicFollow these seven rules for excellent commit messages (adjust for conventional commits if used):
<subject: concise summary, imperative, capitalized, no period>
<body: explain the motivation for the change and contrast with previous behavior>
<footer: references to issues, breaking changes, etc.>
Good Examples (Traditional Style):
Refactor subsystem X for readabilityRemove deprecated methods from UserServiceFix null pointer exception in login handlerAdd user authentication middlewareGood Examples (Conventional Commits):
feat: add user authentication middlewarefix: resolve null pointer exception in login handlerrefactor: improve subsystem X readabilitychore: remove deprecated methods from UserServiceBad Examples:
fixed stuffChangeswipUpdate file.jsfeat added new feature (incorrect format - missing colon)git status to see current stategit diff HEAD to see all changesgit log --oneline -20 to analyze recent commit style
type: prefix patterns)git add -p if needed)git showgit status to verify nothing important was missedFor detailed information on conventional commits, see:
git add -p for interactive staging when files contain multiple unrelated changesnpx claudepluginhub abatilo/vimrc --plugin abatilo-coreAnalyzes Git changes, groups staged/unstaged files into logical commits by feature/type/scope, and executes them one-by-one using conventional commit format.
Analyzes git changes, groups into atomic logical commits, writes conventional commit messages, stages files selectively, and commits safely. Use for clean solo git history without blind adds.
Guides git commits with atomic change analysis, conventional commit messages, and interactive staging options. Flags non-atomic commits and suggests splits for better maintainability.