Skip to content

Plugin: analyzer-conventional

Determines the next SemVer bump from Conventional Commit messages. It maps commit types and breaking-change markers to major, minor, or patch decisions.

Terminal window
semrel plugin install @semrel/analyzer-conventional

semrel plugin install downloads the binary to .semrel/plugins/ and updates .semrel.lock. Commit .semrel.lock to pin the version for your team.

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

Terminal window
docker pull ghcr.io/semrels/analyzer-conventional:latest

Verify the image signature with cosign:

Terminal window
cosign verify ghcr.io/semrels/analyzer-conventional:latest \
--certificate-identity-regexp 'https://github.com/SemRels/analyzer-conventional/.github/workflows/release.yml.*' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com
version: 1
plugins:
- uses: @semrel/analyzer-conventional
args:
breaking_change_label: 'BREAKING CHANGE'
minor_types: feat
patch_types: 'fix,perf,refactor'
NameRequiredDefaultDescription
SEMREL_PLUGIN_BREAKING_CHANGE_LABELnoBREAKING CHANGEFooter label used to detect breaking changes.
SEMREL_PLUGIN_MINOR_TYPESnofeatComma-separated commit types that trigger a minor bump.
SEMREL_PLUGIN_PATCH_TYPESnofix,perf,refactorComma-separated commit types that trigger a patch bump.

This plugin does not require any of the shared SEMREL_* release context variables to do its job.

Given the commits feat(api): add search endpoint and fix(ui): handle empty state, the analyzer returns a minor bump because feat outranks fix.