git-commit-helper

Generate conventional commit messages from staged git diffs.

Updated May 22, 2026
One-click install
npx skills add https://github.com/kitfunso/claude-config --skill git-commit-helper-kitfunso
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: git-commit-helper
Source: https://github.com/kitfunso/claude-config/tree/main/skills/git-commit-helper
Command: npx skills add https://github.com/kitfunso/claude-config --skill git-commit-helper-kitfunso

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing clear, consistent commit messages is tedious and often results in vague entries like "update" or "fix stuff". This Skill analyzes your staged git changes and drafts a well-structured conventional commit message, without staging or committing anything itself. ## Core Features & Use Cases - Diff-Based Message Generation: Reads git diff --staged and drafts a message specific to the actual changes, using conventional types like feat, fix, refactor, docs, test, chore, perf, and ci. - Style Enforcement: Applies commit message guidelines including imperative mood, summaries under 50 characters, no trailing period, and bodies that explain why rather than what. - Breaking Change Marking: Formats breaking changes with the type! prefix and a BREAKING CHANGE footer including migration notes. - Use Case: You staged a retry-with-backoff fix in fetch.py. Ask for a commit message and get something like "fix: add retry with backoff to get_price" with a body explaining the flaky HTTP call. ## Quick Start Use git-commit-helper to write the commit message for the changes I have staged.

Frequently Asked Questions about git-commit-helper

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a good git commit message from staged changes?▼

Run git diff --staged to review the actual changes, then draft a message with a conventional type prefix like feat or fix, an imperative summary under 50 characters, and a body explaining why the change was made. This Skill automates that analysis and drafting.

What commit message format does conventional commits use?▼

The format is "type: description" followed by an optional body and footer. Types include feat, fix, refactor, docs, test, chore, perf, and ci. Breaking changes add an exclamation mark after the type and a BREAKING CHANGE footer.

Does this Skill stage or commit changes for me?▼

No. It only reviews staged changes and drafts the commit message. Staging with git add and running git commit are explicitly out of scope and left to you or a separate commit command.

What happens if nothing is staged when I ask for a commit message?▼

It runs git diff --staged, observes the output is empty, and tells you nothing is staged rather than inventing a message from unstaged changes. It will not stage files on its own.

Can I use it with a pasted diff instead of a live repository?▼

Yes. You can paste the output of git diff --staged directly into the conversation, and it will draft a conventional commit message from that diff text without needing shell or repository access.

When should I amend a commit instead of creating a new one?▼

Only amend when you explicitly decide to, such as fixing the last commit message with git commit --amend. The default practice is to create a new commit rather than rewriting history.