Text Analysis & GenerationContent CreationCoding
Git Commit Message based on Changes
Generate a Conventional Commits message from change notes: pick primary type/scope, write 72-char imperative subject, concise body bullets, and optional BREAKING CHANGE or issue footers.
Prompt Content
Write a concise, high-quality Git commit message from the provided change description.
1) Read the change description:
<changes>
Changes
</changes>
2) Choose the primary Conventional Commit type (feat, fix, refactor, docs, test, chore, build, ci, perf, style). Add a short scope if obvious.
3) Produce a commit message with exactly this structure:
- type(scope?): summary in imperative, <= 72 characters, no period
- blank line
- body: 1-5 short lines or bullet points explaining what and why (wrap ~72 chars)
- optional footers, only if applicable:
- BREAKING CHANGE: <details>
- Closes: <ids> or Refs: <ids>
4) Output only the commit message, nothing else.
• Use imperative mood and present tense
• Be specific; avoid fluff and repetition
• No emojis or marketing language
• If multiple change types exist, pick the most significant for the subject
<example>
Input (
<changes>
Changes
</changes>
):
- Added password reset via email with token expiry
- Fixed NPE in login flow
- Refactored auth middleware
- Breaking: removed legacy /v1/login
- Closes #123; Refs AUTH-45
Output:
feat(auth): add password reset via email
- Implement token-based reset flow with expiry
- Fix null pointer in login handler
- Refactor auth middleware for clarity
BREAKING CHANGE: Remove legacy /v1/login
Closes: #123
Refs: AUTH-45
</example>
Variables
- Changes
- Brief description of the changes made, noting new features, bug fixes, refactoring, any breaking changes, and related issue IDs.
- Example: - Add CSV export for reports - Fix off-by-one in pagination - Refactor report serializer - Breaking: remove deprecated /v1/reports endpoint - Closes #482; Refs ABC-99