commit-message-writer
Commit Message Writer
Overview
Draft commit messages from intent. Explain why the change exists, not just what changed.
Workflow
- Gather the rationale from the user-agent conversation, project docs, explored implementation, or recent git history.
- Infer the most defensible reason when the diff does not state it explicitly.
- Choose the narrowest conventional commit type that fits the change.
- Write a why-first subject line.
- Add a body only when extra context helps.
Subject
Use the form type(scope): why.
Prefer these conventional commit types:
-
feat: introduce user-facing capability -
fix: correct broken or risky behavior -
refactor: improve structure without intended behavior change -
perf: improve performance characteristics -
test: add or fix tests -
docs: change documentation only -
build,ci,chore: repository or tooling maintenance -
Stay at 50 characters or fewer.
-
Focus on intent or effect, not implementation steps or file edits.
-
Use a scope only when it adds meaning.
-
Avoid vague summaries such as
update,change,modifyormove.
Examples:
fix(auth): block expired token reuserefactor(api): simplify pagination flowfeat(billing): support invoice retry recovery
Body
When needed, leave the second line blank and start the body on the third line.
- Wrap every body line at 72 characters.
- Use the body for motivation, constraints, tradeoffs, or follow-up context.
- Do not repeat the diff unless that detail is needed to explain why.
More from stefafafan/skills
go-runtime-updater
Pick the correct Go version for `go` and `toolchain` directives. Use when an agent needs to bump the Go version, update a go or toolchain directive, or align Go versions in go.mod, go.work, CI, containers, version manager files, or docs.
1pnpm-action-setup-cache
Update GitHub Actions workflows to use pnpm/action-setup cache support introduced in v4.3.0. Use when creating or editing workflow YAML files that install pnpm, especially when they use actions/setup-node cache: pnpm or actions/cache entries for pnpm store paths.
1