Write a changelog entry in a fixed format from commit history
A changelog entry in the sample's format with full commit hashes.
Choose one of three approaches. The steps for that option appear below.
Choose an option above. On a phone, swipe the tabs left or right to see all options →
Claude: classifies commits, formats entry, you check
Claude classifies every commit, then formats the entry. You correct the table and approve the result.
You
Gather log, sample
Claude
Classify commits
You
Correct table
Claude
Format entry
You
Check and decide
Gather the commit log and format sample
Use:You
Have ready: the commit log between the two tags and the changelog format sample.
Check
Check the log covers the tag range and the sample is the one to follow.
Classify every commit
Use:Claude
Ask Claude to classify every commit between the two tags.
Details
What to paste into the tool
The log I paste is a copy: codes such as D1 stand in for committer names and emails. Here is the commit log between two tags. Classify every commit as added, changed, fixed, removed or breaking, one row per commit with its hash. Mark anything user-visible. If a commit could be breaking, mark it breaking rather than guessing safe. List any commit you are unsure how to classify as 'needs maintainer decision' instead of dropping it. Keep the codes exactly as written.
Correct the classification table
Use:You
Check every user-visible commit appears with its hash and breaking changes are marked. Fix miscategorised rows.
Check
Check every commit marked breaking against the diff, and look for breaking changes that are not marked.
Format the entry to the sample
Use:Claude
Ask Claude to format the entry to the sample format, keeping every hash.
Details
What to paste into the tool
The log I paste is a copy: codes such as D1 stand in for committer names and emails. Format this approved classification table as a changelog entry that matches the supplied sample's format - same headings, ordering, hash style and punctuation. Do not add sections, do not paraphrase commit summaries beyond what the format allows, and keep every hash. Keep the codes exactly as written.
Check the entry, then approve or hold
Use:You
Check the entry against the approved table and the sample format, then approve or hold it. The entry keeps hashes and summaries only.
Check
Check headings, ordering, hash style and punctuation match the sample; every hash kept, nothing added. Approve only when it matches; otherwise hold it and list the fixes.
Cursor: finds sources, drafts changelog in a safe copy
You set safety rules in an isolated copy. Cursor finds sources and drafts; you check them and the format.
You
Create isolated copy
Cursor
Find, classify, draft
You
Check sources, format
Create an isolated branch and set safety rules
Use:You
Have ready: the repository snapshot, the two tag names, the commit log and the fixed-format changelog sample. Create an isolated draft branch or copy and set the safety rules.
Check
Check repository permission and the safety rules: no remote push, package install, secret access or production run. Preserve source files.
Find sources, classify and draft
Use:Cursor
In the isolated copy, ask Cursor Agent to find source files, then propose a classification table with full commit hashes and a sample-format draft.
Details
What to paste into the tool
First search this isolated copy and list the exact source files you will use: the commit log between the two supplied tags and the changelog format sample. Read only those sources. Cover every supplied commit once or mark it excluded with a reason. Draft the changelog in a new file with full commit hashes, matching the sample's format. Do not push, publish, install packages or modify other files.
Check the draft against sources and format
Use:You
Check every source, that the source-file list covers the full tag range, and each heading and item against the sample. Keep commit hashes.
Check
No merge, push or publication. Check the agent's source-file list and draft before relying on them. Compare the source-file list with the tag range and the commit log. Reconcile supplied commit count and exclusions; check hashes against the log.
ChatGPT: classifies commits and formats entry, you check
ChatGPT classifies every commit and drafts the entry in the sample's format. You check each row and approve.
You
Gather inputs
ChatGPT
Classify and draft
You
Check and decide
Gather the log, sample and breaking rules
Use:You
Have ready: the commit log between the two tags, the changelog format sample and any project rules for what counts as breaking.
Check
Check the tag range is correct and the sample is the current fixed format.
Classify the commits and draft the entry
Use:ChatGPT
Paste the commit log and the format sample into ChatGPT. Ask it to classify every commit and draft the entry in the sample's exact format.
Details
What to paste into the tool
The log I paste is a copy: codes such as D1 stand in for committer names and emails. Here is the commit log between two release tags and the changelog format sample. Classify every commit once - hash, summary, category, breaking flag - or mark it excluded with a reason. Then format the entry to match the supplied sample - same headings, ordering, hash style and punctuation. Keep every hash as given. If any row does not fit the format, list it separately instead of improvising. Do not tag or publish anything. Keep the codes exactly as written.
Check every row and the format, then approve
Use:You
Check every row and breaking mark against the log and diffs, and the format against the sample. Approve the entry or hold it.
Check
Verify every user-visible commit appears with a hash and breaking changes are marked. Compare the entry with the format sample. Do not tag or publish a release. The breaking calls and the final entry are your call. The entry keeps hashes and summaries only. Nothing is tagged or published from this workflow.
Compare the three approaches
Option A: Claude: classifies commits, formats entry, you check
Best when: You want a correction step before the entry is formatted
What it does: Claude classifies and formats; you correct and approve
Strong at: Drafts and edits text in many formats
Limit: Usage capped in 5-hour and weekly windows
Free plan: Yes
Option B: Cursor: finds sources, drafts changelog in a safe copy
Best when: You want search and drafting inside the repository
What it does: Cursor finds sources and drafts; you check sources and format
Strong at: Runs coding agents that write and change code
Limit: Cloud agents need Premium or above
Free plan: Yes
Option C: ChatGPT: classifies commits and formats entry, you check
Best when: You want one chat to classify and format the entry
What it does: ChatGPT classifies and formats; you check every row
Strong at: Writes, rewrites and summarises text
Limit: Free plan limits file uploads, image generation, voice and data analysis
Free plan: Yes
Before you paste into any AI tool, remove any confidential information. Put it back at the end.