Commit Messages
- •Imperative mood, concise, clear, descriptive
- •Title: ≤70 chars (including type, scope, parens, colon, spaces)
- •Multi-change: bulleted description, lines ≤72 chars
- •Standard markdown only, no special characters
- •Never include: co-authors, sign-offs, AI attribution
- •Never use
git logto infer style from history
Formats
Standard:
code
title description...
Conventional:
code
type(scope): subject description...
Conventional rules:
- •Infer type from changes; if unclear → ask
- •Scope: user-provided, ticket ID (
[A-Z]{3}-[0-9]+), or branch name (not main/master) - •If scope unavailable → ask
Workflow
- •Check staged files; if none → ask to stage all modified
- •Use
git add .(not individual files) - •Generate message per format above
- •Display full message in chat (triple backticks)
- •Request user approval before committing