commit
Creates well-structured git commits with conventional format
When & Why to Use This Skill
This Claude skill automates the Git version control workflow by generating well-structured, professional commit messages following the Conventional Commits standard. It enhances developer productivity by intelligently analyzing code changes, staging relevant files, and ensuring project histories remain clean, searchable, and compliant with industry best practices.
Use Cases
- Standardizing Commit History: Automatically apply the Conventional Commits format (feat, fix, refactor, etc.) to ensure the repository history is readable and compatible with automated changelog generators.
- Streamlining Post-Development Workflow: Quickly stage and commit changes immediately after a coding task is completed, reducing the manual overhead of CLI commands.
- Smart Change Grouping: Analyze modified files to group related changes into logical commits while proactively excluding sensitive data like secrets or unnecessary generated files.
- Enhancing Team Collaboration: Provide descriptive, 'why'-focused commit messages that help team members understand the intent behind code changes during reviews.
| name | commit |
|---|---|
| description | Creates well-structured git commits with conventional format |
| allowed-tools | Bash, Read, Grep |
Commit Skill
When to Use
- User asks to commit changes
- After completing a task that modified files
- When user says "commit this" or similar
Workflow
Check status
git status git diff --stagedReview changes
- Understand what was modified
- Group related changes logically
- Identify if multiple commits are needed
Stage files
- Stage only related changes together
- Never stage secrets or credentials
- Skip generated files unless intentional
Write commit message Format:
type(scope): descriptionTypes:
feat- New featurefix- Bug fixrefactor- Code restructuringdocs- Documentation onlytest- Adding/fixing testschore- Maintenance tasks
Commit
- Use descriptive message focusing on "why" not "what"
- Keep first line under 72 characters
- Add body for complex changes
Examples
# Feature
git commit -m "feat(auth): add password reset flow"
# Bug fix
git commit -m "fix(api): handle null response from external service"
# Refactor
git commit -m "refactor(utils): extract date formatting to shared helper"
Do NOT
- Commit without user confirmation
- Include "Generated by Claude" attribution (unless requested)
- Force push or amend without asking
- Commit .env files or secrets