release-notes
Generate release notes from commit messages since the last beta tag. Use when preparing notes for an upcoming beta or production release.
- License 许可
- GPL-3.0
- 最近更新
- 2026-04-30
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- release-notes
- description
- Generate release notes from commit messages since the last beta tag. Use when preparing notes for an upcoming beta or production release.
- allowed-tools
- Bash, Read
- argument-hint
- [optional: base tag for diff, e.g. v2026.04-01beta]
02 资源文件 4
- 参考文档references/codex-tools.md4.0 KB
- 参考文档references/copilot-tools.md2.1 KB
- 参考文档references/gemini-tools.md1.5 KB
- 参考文档template.md289 B
03 SKILL.md 正文
Generate release notes for the upcoming release. Follow every step exactly — do not invent, assume, or embellish anything not present in the git output.
Step 1: Find the baseline tag
If $ARGUMENTS is non-empty, use it as the baseline tag. Otherwise run:
git tag -l "*beta" --sort=-version:refname | head -1
Record the result as LAST_BETA_TAG. If nothing is returned, use the first commit as the baseline:
git rev-list --max-parents=0 HEAD
Tell the user which baseline you are using before continuing.
Step 2: Collect all commits since that tag
Run exactly this command, substituting LAST_BETA_TAG with the actual value:
git log --pretty=format:"COMMIT %H%nSUBJECT: %s%nBODY:%n%b%n<<<END>>>" LAST_BETA_TAG..HEAD
Read every line of the output. Do not skip any commit. If the output is empty, tell the user there are no commits since the baseline and stop.
Step 3: Filter out non-user-facing commits
Exclude any commit whose subject line matches any of these patterns:
- Starts with
Release— version bump commits - Contains only tooling/CI changes with no user impact (e.g. changes only to
.github/,scripts/,gradle/,*.ymlfiles) — only exclude these if the subject line itself makes the scope clear
When in doubt, keep the commit and let Step 4 decide.
Step 4: Derive user-facing change descriptions
For each remaining commit, derive one change description:
- Base it on the subject line and any body text from the commit.
- Write it in plain language an end user would understand (not developer jargon).
- If the commit is purely internal refactoring with no visible user effect and that is clear from the message, omit it — do not guess at impact.
- Never add detail that is not stated in the commit message. If something is unclear, describe it at the level of abstraction the commit message uses, no more.
Step 5: Write the release notes
Read the template from @template.md. Fill it in:
-
Intro line: one to three honest sentences summarizing the theme of the changes and how the user is affected or how the app was improved for them. Use the actual changes to derive the theme. Do not use marketing language. If there is no clear unifying theme, write: "This release includes several improvements and fixes."
-
Change list: one entry per user-facing change derived in Step 4, in the same order as the git log (newest first).
Output the completed release notes in a code block so they can be copied directly.
04 同仓库更多 Skills
feature-to-requirements
Runs the full feature pipeline - discovers the feature concept with the user, saves it to a file, then runs requirements elicitation based on that concept.
commit
Commit changes with a concise and meaningful message