Automatically generate conventional commit messages when user has staged changes and mentions committing. Analyzes git diff and status to create properly formatted commit messages following conventional commits specification. Invoke when user mentions "commit", "staged", "committing", or asks for help with commit messages.
From cms-cultivatornpx claudepluginhub kanopi/claude-toolbox --plugin cms-cultivatorThis skill uses the workspace's default tool permissions.
Automatically generate conventional commit messages for staged changes.
Commit messages are the history and documentation of your code's evolution.
Activate this skill when the user:
git add or git status output with staged changesBefore generating a commit message, ask yourself:
feat typefix typerefactor typedocs typetest typeauth, api, ui)validation, logging)Split if staged changes include:
User mentions commit
↓
Check: Staged changes?
↓ Yes
Check: Multiple unrelated changes?
↓ No
Check: Follows conventional commits pattern?
↓ Generate message
↓
Review with user → Commit
git status
git diff --staged
If no staged changes, inform the user and suggest staging files first.
git log --oneline -10
Learn the repository's commit message conventions.
Format: <type>(<scope>): <description>
Types:
feat - New featurefix - Bug fixdocs - Documentation changesstyle - Code style changes (formatting, semicolons, etc.)refactor - Code refactoring (no functional changes)test - Adding or updating testschore - Build process, dependency updates, etc.perf - Performance improvementsci - CI/CD changesExample:
feat(auth): add two-factor authentication support
- Implement TOTP-based 2FA
- Add backup codes generation
- Include recovery flow for lost devices
- Update user profile settings UI
Drupal:
feat(config): add user profile field configurationfix(custom_module): correct permission check in access callbackrefactor(hooks): simplify hook_form_alter implementationWordPress:
style(theme): improve mobile navigation stylesfix(plugin): correct ACF field validationfeat(blocks): add testimonial Gutenberg blockWhen used via workflow-specialist agent:
The agent will use AskUserQuestion to present the commit message for review:
When used conversationally: Show the generated commit message and ask: "Here's a commit message based on your changes. Would you like me to commit with this message, or would you like to modify it?"
git commit -m "commit message here"
Or for multi-line messages:
git commit -m "$(cat <<'EOF'
feat(auth): add two-factor authentication support
- Implement TOTP-based 2FA
- Add backup codes generation
- Include recovery flow
EOF
)"
This skill complements the /pr-commit-msg slash command:
This Skill: Automatically triggered during natural conversation
/pr-commit-msg Command: Explicitly invoked for staged changes
Both use the same analysis approach but different invocation methods.
BREAKING CHANGE: footer if applicableExample 1: Simple fix
User: "I fixed the login bug, ready to commit"
[Skill analyzes git diff]
Skill: "I'll generate a commit message for your login fix..."
Generated:
fix(auth): resolve session timeout on remember-me login
- Correct cookie expiration logic
- Add test coverage for remember-me flow
Would you like me to commit with this message?
Example 2: Feature addition
User: "Staged my changes, need to commit"
[Skill analyzes extensive changes]
Skill: "I see you've added a new dashboard widget. Here's a commit message..."
Generated:
feat(dashboard): add performance metrics widget
- Create new widget component
- Add database query for metrics
- Include responsive design
- Add widget to admin dashboard page
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.