Overview
This skill is for repositories where a commit is not just a message but a final quality gate. It covers both quick conventional commit message generation and the fuller review workflow for higher-risk changes.
Workflow
- Inspect changes — read staged and unstaged diffs with
git diff --cachedandgit diff - Check recent history — run
git log --oneline -10to match existing commit style - Verify generated files — ensure schema changes include their migration SQL, lock files are updated, build output is excluded
- Check changelog date — if a changelog entry is staged, verify the date is correct (run
node -e "console.log(new Date().toISOString().slice(0,10))") - Produce message — write a conventional commit message that matches the repository's style
Message Rules
- Use conventional commit format:
type(scope): subject - Valid types:
feat,fix,docs,style,refactor,test,chore,perf,ci,build - Keep subject lines under 72 characters, imperative mood, with no trailing period
- Prefer outcome over implementation detail:
fix: prevent duplicate order emailsrather thanfix: add check in sendEmail function
Quality Gates
- Schema changes, generated migrations, and dependent code must be in the same commit
- Danish changelog text must use æ, ø, and å correctly — never ae, oe, aa
- Never set
featured: truewithout justification - Do not commit
.envfiles, secrets, or large binary assets
Examples
feat(auth): add MFA support for organization admins
fix(billing): prevent duplicate invoice generation on retry
docs: update Drizzle migration workflow in README
chore(deps): bump next from 16.1.0 to 16.2.6