Skip to content

Plugin: generator-release-notes

Generates concise, formatted release notes from the release context and commit history. Running as a generator phase plugin, its stdout overrides the default SEMREL_CHANGELOG value that provider and hook plugins receive — useful for creating a polished release description on GitHub Releases, GitLab Releases, or Slack/Teams notifications.

Terminal window
semrel plugin install @semrel/generator-release-notes

Pre-built, signed multi-platform images (linux/amd64, linux/arm64) are published on every release:

Terminal window
docker pull ghcr.io/semrels/generator-release-notes:latest

Verify the image signature with cosign:

Terminal window
cosign verify ghcr.io/semrels/generator-release-notes:latest \
--certificate-identity-regexp 'https://github.com/SemRels/generator-release-notes/.github/workflows/release.yml.*' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com
plugins:
- uses: @semrel/generator-release-notes
phase: generator # stdout captured by semrel → becomes SEMREL_CHANGELOG
args:
template: .semrel/templates/release-notes.tmpl # optional
max_commits: "50"
include_body: "false"
signature: "true" # optional semrel.io footer, opt-in
- uses: @semrel/provider-gitlab # receives the formatted notes as SEMREL_CHANGELOG
- uses: @semrel/hook-slack # same
NameRequiredDefaultDescription
SEMREL_PLUGIN_TEMPLATEnobuilt-inPath to a custom template.
SEMREL_PLUGIN_MAX_COMMITSno50Maximum commits to include.
SEMREL_PLUGIN_INCLUDE_BODYnofalseInclude full commit bodies.
SEMREL_PLUGIN_SIGNATUREnofalseAppend an opt-in footer linking to https://semrel.io after the generated notes.
SEMREL_PLUGIN_AI_DISCLOSUREnofalseDetect AI co-author trailers and append a badge to each AI-assisted line.
SEMREL_PLUGIN_AI_DISCLOSURE_BADGEno🤖Badge appended to AI-assisted lines.
SEMREL_PLUGIN_AI_DISCLOSURE_SECTIONnofalseAppend a collapsible 🤖 AI-Assisted Contributions section (requires SEMREL_PLUGIN_AI_DISCLOSURE=true).

When SEMREL_PLUGIN_SIGNATURE=true, the generated notes end with:

---
*Generated by [semrel.io](https://semrel.io)*