From git
Organize messy git changes into clean, well-scoped conventional commits. Use when the user wants to clean up their commit history, organize uncommitted changes into logical commits, squash or reorganize recent commits, or curate a changeset before pushing. Triggers on phrases like "clean up my commits", "organize these changes", "split this into commits", "curate history", "make my commits cleaner", or any request to restructure git history into atomic, meaningful units.
How this skill is triggered — by the user, by Claude, or both
Slash command
/git:git-commitsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Transform intermingled changes into a clean series of atomic, conventional commits — each with a clear scope and meaningful message.
Transform intermingled changes into a clean series of atomic, conventional commits — each with a clear scope and meaningful message.
Good commit history tells a story. Each commit should do one thing well, be independently understandable, and build logically on the commits before it. The goal is a history that a future reader can follow without context about the development process.
Understand the current state before planning anything.
git status
git log --oneline -10
git diff --stat
git diff --cached --stat
Determine the situation:
Group changes by logical scope. Each group becomes one commit.
| Type | When to use |
|---|---|
feat | New functionality |
fix | Bug correction |
refactor | Code improvement, no behavior change |
docs | README, comments, documentation |
style | Formatting, whitespace |
test | Adding or updating tests |
chore | Build config, dependencies, tooling |
Scope is the affected area — a package name, module, or component (e.g., auth, ui, api).
Draft the commit series before touching anything:
Present the plan to the user and wait for confirmation before proceeding.
For uncommitted changes — stage and commit in logical groups:
git add <files-for-commit-1>
git commit -m "type(scope): description"
git add <files-for-commit-2>
git commit -m "type(scope): description"
For reorganizing recent commits — soft reset to preserve changes, then restage:
git reset --soft HEAD~N
# Then stage and commit in logical groups as above
Commit message format:
type(scope): concise description
Optional body explaining the "why" if not obvious.
Use a HEREDOC to pass multi-line messages:
git commit -m "$(cat <<'EOF'
type(scope): concise description
Body paragraph here.
EOF
)"
After all commits are created, show the result:
git log --oneline -N # N = number of commits just created
Confirm with the user that the history looks right. If they want to push and open a PR, invoke git:pr.
End with a short, plain-language summary the user can share with other contributors — in Slack, a standup, or a PR description. This isn't a commit log restatement; it's a conversational explanation of what changed and why, written so someone unfamiliar with the commits can quickly understand the impact.
Keep it to 2-4 sentences. Lead with the most important change. Mention affected areas without listing every file.
Example:
Fixed a race condition in session expiration that was causing sporadic logouts. Added an outline variant to the button component with theme support. Updated the README to document the new variant.
--no-verifygit stash before destructive operations.env, credentials, tokensGiven mixed changes across auth and UI:
M src/auth/login.ts (bug fix)
M src/auth/session.ts (bug fix)
M src/ui/button.tsx (new variant)
M src/ui/theme.ts (new variant support)
M README.md (updated docs)
The plan:
fix(auth): resolve session expiration race condition — login.ts, session.tsfeat(ui): add outline button variant — button.tsx, theme.tsdocs: update README with button variant examples — README.mdnpx claudepluginhub kellymears/agents --plugin gitOrganizes git workspace changes into clean, atomic commits following conventional formats. Activates after features, refactors, or explicit commit requests.
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 creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.