Skip to content

semrel

Ship with confidence. semrel reads your commits, calculates the next version, and publishes the release — automatically.

Zero manual versioning

semrel analyses your Conventional Commits and decides whether to bump major, minor, or patch — no human judgement required.

Fully pluggable

Every step of the pipeline is a swappable subprocess plugin. Swap the GitHub provider for GitLab, replace the changelog generator, or add a Slack notification — without touching core semrel.

Monorepo ready

Version multiple independent modules in a single repository, each with its own tag series and config file.

Supply chain security

Signed releases with Sigstore Cosign, CycloneDX/SPDX SBOM, SLSA Level 1 provenance. DCO sign-off and REUSE/SPDX compliance enforced on every PR.

Language agnostic plugins

Plugins are plain subprocess binaries — write them in Go, Python, Rust, Node.js, or any language you like.

Dry-run mode

Preview exactly what semrel would do before touching anything. Run semrel release --dry-run in CI to validate your config safely.

Open Source

Apache 2.0 licensed. Built in the open at SemRels/semrel.