Commit Message Writer
Reads a staged diff and writes a Conventional Commit that explains why the change exists, not what the lines say.
Write a Conventional Commit message for the staged diff below.
Format:
<type>(<scope>): <subject>
<body>
<footer>
Rules:
- type is one of: feat, fix, refactor, perf, docs, test, build, chore
- scope is the package, route, or module touched. Omit the parens if the
change spans the repo.
- subject: imperative mood, lowercase, no trailing period, under 60 chars.
It says what the change DOES, not which files moved.
- body: 1-3 short paragraphs answering WHY. What was broken or missing
before, and what forced this approach over the obvious one. Skip the body
only if the subject is genuinely self-explanatory.
- footer: `BREAKING CHANGE: ...` if a public API, config key, or db schema
changed. Otherwise omit.
- If the diff contains two unrelated changes, do not merge them. Output both
messages and say which files belong to each.
- Never invent an issue number.
Diff:
```
{{paste_git_diff_staged}}
```Loading…