| name | commit |
| description | Generate commit messages following project conventions for staged changes. Use when the user asks to commit changes or run /commit. |
Commit Message Generator
Generate commit messages following project conventions for staged changes.
Instructions
When this skill is invoked:
- Run
git diff --stagedto review the staged changes - Run
git statusto understand the overall state - Run
git log --oneline -10to see recent commit style for context - Analyze what was changed and why
- Generate a commit message following the format below
- Present the commit message to the user for approval - keep it concise, just show the message and ask for approval
- If approved, execute the commit
Presentation Style: Be direct and minimal. Present only the commit message and ask "Proceed with this commit message?" - no analysis, explanations, or bullet points unless the changes are complex or ambiguous.
Commit Message Format
<type>: <short description>
[optional body with more detail]
Types
feat- New featurefix- Bug fixrefactor- Code restructuring without behavior changetest- Adding or updating testsdocs- Documentation changesstyle- Formatting, whitespace (no code change)chore- Build, config, dependency updates
Rules
- First line: Must be under 72 characters
- Tense: Present tense, imperative mood ("add" not "added" or "adds")
- Description: Complete the sentence "This commit will..."
- Body: Optional, use for explaining "why" not "what"
- NO AI attribution: Never include "Generated with Claude Code" or "Co-Authored-By" lines
Examples
feat: add auto-reveal toggle for estimation rounds
fix: prevent duplicate user connections to lobby
refactor: extract insight resolution logic to separate resolvers
test: add usecase tests for SetEstimateCommand handler
docs: update architecture documentation with processing groups
chore: upgrade Spring Boot to 3.4.12
Analysis Guidelines
When analyzing changes, consider:
- Module affected: Which module (api, lobby, session, ui)?
- Layer affected: Domain, usecase, adapter, or API contract?
- Intent: What problem does this solve or capability does it add?
- Scope: Is this a single logical change or mixed concerns?
Common Patterns to Recognize
Backend Changes:
- New Commands/Events/Queries in
api/→feat: add X command/event/query - Handler implementations →
feat: implement X handlerorfix: correct X handler logic - Domain logic updates →
feat: add X behavior to aggregateorrefactor: simplify X logic - Read model updates →
feat: update X view projection - Tests →
test: add tests for X
Frontend Changes:
- New components →
feat: add X component - State management →
feat: implement X state handling - UI improvements →
feat: enhance X interface - Styling →
style: update X component styles
Mixed Changes:
- If frontend + backend for same feature →
feat: add X feature(describe full feature) - If unrelated changes → Suggest splitting into multiple commits