Commit Message Writer
by @lnguyen1996
Generate Conventional Commit messages, PR titles, and summaries from git diffs, code snippets, or change descriptions for any project or language.
clawhub install commit-message-writerπ About This Skill
commit-message-writer
Description
Write Conventional Commit messages from a git diff, code snippet, or plain description. Also generates PR titles and 3-bullet PR summaries. Works with any language and any project β no setup, no config.Use when
Supported conventions
Request a specific one or it defaults to Conventional Commits.
Input
Paste one of:git diff --staged)Optionally specify:
Output format
## Commit Messagetype: [subject]
[body β explains WHY, not just WHAT. Omitted if obvious from subject]
[BREAKING CHANGE: description β only if applicable]
[Closes #123 β only if issue number is known]
PR Title
[short, imperative, under 70 chars]PR Summary
[What changed]
[Why it changed / what problem it solves]
[Any notable side effects, caveats, or follow-up needed]
Conventional Commits type guide
| Type | When to use |
|---|---|
| feat | New feature (triggers minor version bump) |
| fix | Bug fix (triggers patch version bump) |
| docs | Documentation only |
| style | Formatting, whitespace β no logic change |
| refactor | Restructure without changing behavior |
| perf | Performance improvement |
| test | Adding or fixing tests |
| chore | Build system, CI, dependency updates |
| revert | Reverts a prior commit |
| ci | CI pipeline changes |
Writing rules
BREAKING CHANGE: footer with migration notesauth, api, db, ui)Examples
Simple fix
fix(auth): reject expired JWT tokens before checking claimsPreviously, token expiry was checked after claim validation,
which allowed attackers to replay expired tokens with valid claims.
New feature with breaking change
feat(api)!: require API key on all public endpointsBREAKING CHANGE: All requests now require X-API-Key header.
Clients using anonymous access will receive 401. See migration guide.
Dependency update
chore(deps): bump openssl from 1.1.1 to 3.0.8Addresses CVE-2023-0286 (X.400 address type confusion).
No API changes.
Self-improvement instructions
After each commit message written, note whether the input was a diff, description, or code snippet. After 20 uses, surface the most common missing context that leads to weaker messages.π‘ Examples
Simple fix
fix(auth): reject expired JWT tokens before checking claimsPreviously, token expiry was checked after claim validation,
which allowed attackers to replay expired tokens with valid claims.
New feature with breaking change
feat(api)!: require API key on all public endpointsBREAKING CHANGE: All requests now require X-API-Key header.
Clients using anonymous access will receive 401. See migration guide.
Dependency update
chore(deps): bump openssl from 1.1.1 to 3.0.8Addresses CVE-2023-0286 (X.400 address type confusion).
No API changes.