Skip to content

Semantic Release Automation Without Node.js

Zero Node.js. Zero runtime overhead. One static Go binary (~12 MB) that parses Conventional Commits, computes SemVer, generates changelogs, and ships supply-chain secure releases across 15+ ecosystems — automatically.
v0.28.2 · 46 Official Plugins Go-Native · Zero Node.js Cosign v3 · SBOM · SLSA L1 Apache 2.0 · 100% Free 💬 Join Discord (Release Ping) →

THE NEXT-GEN SEMANTIC RELEASE ENGINE

Semantic Releases.
Fully Automated. Zero Node Tax.

semrel is the uncompromising successor to legacy release tools: a single static Go binary (~12 MB) that parses Conventional Commits, computes SemVer, updates 15+ package ecosystems, generates rich changelogs, and ships supply-chain-attested releases — in seconds instead of 35 minutes.

  • ✓ No Node.js, no node_modules: Eliminates 400+ transitive npm dependencies and 60s CI cold starts.
  • ✓ 46 Production-Ready Plugins: GitHub/GHES, GitLab, Gitea, Bitbucket, npm, PyPI, Crates, Docker, OCI, Helm, Zig, Flutter, nFPM, Discord, Slack, Teams & more.
  • ✓ Reproducible & Air-Gap Ready: Pinned SHA-256 checksums in .semrel.lock and semrel plugin restore with zero outbound network calls.
  • ✓ No Paywalls, No "Pro" Tier: Monorepo workspaces, Linux packaging, and enterprise features are 100% Open Source forever (Apache 2.0).
semrel release --github-output ~1.4s · 0 npm deps
$ semrel plugin restore && semrel release
✓ lockfile   verified 6 plugins from .semrel.lock (SHA-256 OK)
✓ condition  @semrel/condition-github-actions passed (main)
✓ analyzer   @semrel/analyzer-conventional 18 commits → minor
→ version    v1.8.2 → v1.9.0 (4 contributors, MVP: @alice)
✓ generator  @semrel/generator-changelog-md wrote CHANGELOG.md 🤖
✓ pre-tag    updater-go + updater-helm + updater-npm
✓ git        committed & pushed signed tag v1.9.0 (Cosign v3)
✓ packager   @semrel/packager-nfpm built .deb, .rpm, .apk
✓ publisher  @semrel/publisher-oci pushed ghcr.io/acme/app:1.9.0
✓ provider   @semrel/provider-github released & commented on 7 PRs
✓ hook       @semrel/hook-discord + hook-slack notified #releases
🚀 Release v1.9.0 completed in 1.42s!
46 Official Plugins
0 Node.js / Runtime Deps
~12 MB Single Static Binary
8 Modular Pipeline Categories
15+ Languages & Ecosystems
$0 Apache 2.0 · Zero Paywalls
COMPETITOR SHOWDOWN

Why Legacy Tools Fall Short of What semrel Delivers

Other tools either force a 350 MB Node.js dependency tree into your container (semantic-release, release-it, changesets), cannot compute SemVer from commits (GoReleaser OSS), or lock enterprise features behind a $3,300/yr paywall.

Capability / Criterion🚀 semrel v0.28.2semantic-release v24.xGoReleaser v2.x OSS/Prorelease-please v17.xrelease-it / changesets v17.x / v2.x
Runtime & Footprint✅ ~12 MB Static Go Binary❌ Node.js + ~350 MB npm✅ ~45 MB Go Binary❌ Node.js / GH Action❌ Node.js + ~200 MB npm
Auto SemVer from Commits✅ Conventional + Regex✅ Conventional Commits❌ Manual Git tag required✅ Via Release PR only⚠️ Partial / Manual files
Scope-Based Bump Rules✅ Native (incl. scope: false)✅❌❌❌
Air-Gap & Offline CI✅ Native via .semrel.lock❌ Requires npm network access✅❌ Cloud API bound❌ Requires npm network access
Multi-Language Version Updaters✅ 15 Ecosystems (Go, npm, Cargo, PyPI, Helm, Maven, Gradle, NuGet, Composer, Pubspec, Zig, Terraform, Docker, Homebrew, Regex)⚠️ JS-centric / 3rd-party❌ Go build focus only⚠️ Hardcoded updaters❌ JS/TS only (package.json)
Multi-Registry Publishers & nFPM✅ OCI, Docker, npm, PyPI, crates.io, HTTP + .deb/.rpm/.apk⚠️ Via npm plugins only✅ (Partially Pro)❌ No artifact publishers⚠️ Primarily npm
Git Forges & Self-Hosted✅ GitHub, GHES, GitLab, Gitea/Forgejo, Bitbucket, Git✅ via plugins✅ GitHub, GitLab, Gitea❌ GitHub only⚠️ GitHub / GitLab
Auto PR/MR Release Comments✅ GitHub, GitLab, Gitea & Bitbucket (idempotent)⚠️ GitHub/GitLab only❌⚠️ Release PR only❌
AI Disclosure & Contributor MVP✅ 🤖 AI-Badges + 🏆 Release MVP + First-Timers❌❌❌❌
Supply-Chain Attestation✅ Cosign v3 + CycloneDX/SPDX + SLSA L1❌ High npm supply-chain risk✅ Cosign + SBOM❌❌
Large Repos (460+ Tags)⚡ < 90 seconds (concurrent Go)🐢 35+ minutes (timeouts)⚡ Fast⚠️ API rate limits🐢 Slow
License & Enterprise Cost✅ Apache 2.0 · 100% Free✅ MIT · Free💰 Pro costs $3,300/yr✅ Apache 2.0✅ MIT

ℹ️ Comparison snapshot as of October 2026 (semrel v0.28.2, semantic-release v24.x, GoReleaser v2.x OSS/Pro, release-please v17.x, release-it v17.x, @changesets/cli v2.x) based on each project’s publicly documented default capabilities. If any compared tool has added features since this date, please open an issue or PR so we can update this table.

ARCHITECTURE & CAPABILITIES

Engineered for Cloud-Native & Regulated Enterprise Pipelines

From single-binary tools to massive enterprise monorepos with hundreds of services (with zero artificial limits) under NIS2 and DORA mandates — semrel covers the entire release lifecycle without brittle glue scripts.

Core

Conventional Commits & Scopes

Analyses your commit history and automatically computes major, minor, or patch bumps. Includes scope-based bump rules (e.g. deps(major)) and hidden changelog types.

Zero Node.js

Single Static Go Binary

No Node.js, no npm install, no 400+ transitive packages, and zero V8 cold starts. Runs instantaneously in minimal Alpine containers and hardened CI runners.

Security

Supply-Chain Security by Default

Signed releases with Sigstore Cosign v3 (--bundle), CycloneDX & SPDX SBOMs, SLSA Level 1 provenance, DCO sign-off, and REUSE/SPDX compliance.

Air-Gap

Lockfile (.semrel.lock) & Air-Gap

Reproducible plugin versions with cross-platform SHA-256 checksums in .semrel.lock. Cache once — zero outbound network calls during CI release execution (NIS2 / DORA ready).

Pipeline

8 Modular Plugin Categories

Condition, Analyzer, Generator, Updater, Packager (.deb/.rpm/.apk), Publisher (OCI/Docker/npm/PyPI/Crates/HTTP), Provider & Hook — language-agnostic via subprocess contract.

Monorepo

Monorepo Workspace Engine

Multiple independent packages in one repository — each with its own tag series and config. Topological dependency ordering and parallel execution via semrel workspace release.

Enterprise

GHES, GitLab, Gitea & Bitbucket

First-class support for GitHub Enterprise Server (/api/v3 & custom CA), Data Residency (*.ghe.com), GitLab CI job tokens, and automatic PR/MR comments on every release.

AI & Community

AI Disclosure & Contributor MVPs

Automatically detects AI co-author trailers for transparent changelogs and celebrates first-time contributors and the 🏆 Release MVP across Markdown, HTML, and Discord.

DX & Tooling

Doctor, Commitlint & JSON Schemas

Pre-flight checks via semrel doctor, Git-hook ready semrel commitlint (--commit-msg-file), Sprout env interpolation, and IDE autocomplete via registry.semrel.io.

THE 8-CATEGORY PIPELINE

One Deterministic Lifecycle — 4 Execution Phases, 8 Plugin Roles

Every step is an isolated subprocess binary driven by environment variables (SEMREL_*) and verified via SHA-256 checksums.

Phase 1 · condition Conditions (6)

CI & Branch Gate

Verifies GitHub Actions/GHES, GitLab CI, CircleCI, Bitbucket, Gitea, or custom shell gates.

Core + Analyzer Analyzers (2)

SemVer & Contributors

Computes major/minor/patch, scopes, commit hashes & contributor statistics.

Phase 2 · generator Generators (3)

Release Notes & AI Audit

Renders Markdown/HTML changelogs with PR links, 🤖 AI disclosure, and 🏆 Release MVP.

Phase 3 · pre-tag Updaters (15)

Patch Manifests & Tag

Updates versions across 15 ecosystems, creates a single release commit & pushes the Git tag.

Phase 4 · release Packagers · Publishers · Providers · Hooks (20)

Build, Publish, Release & Notify

Builds .deb/.rpm, pushes to OCI/Docker/npm/PyPI/Crates, creates forge releases, comments on PRs & notifies ChatOps.

COMPLETE ECOSYSTEM

46 Official Plugins — Ready for Every Stack

Install any plugin via semrel plugin install @semrel/<name>. Every plugin ships as a Cosign-signed multi-arch binary and GHCR container image.

Packagers 1

Build distributable system packages

QUICK START

3 Steps to a Fully Automated Release Pipeline

Complete with IDE JSON Schema autocomplete, pre-flight doctor checks, and zero-risk --dry-run.

1

Install & Pin Plugins

go install github.com/SemRels/semrel/cmd/semrel@latest
semrel config init

semrel plugin install @semrel/condition-github-actions
semrel plugin install @semrel/generator-changelog-md
semrel plugin install @semrel/updater-go
semrel plugin install @semrel/provider-github
semrel plugin install @semrel/hook-discord
2

Configure (.semrel.yaml)

# yaml-language-server: $schema=https://registry.semrel.io/schemas/core/v1.json
tagPrefix: v
commit_changelog: false
branches:
  - name: main
  - name: next
    prerelease: beta

plugins:
  - uses: @semrel/condition-github-actions
    phase: condition
  - uses: @semrel/generator-changelog-md
    phase: pre-tag
    args:
      keep_releases: "10"
      ai_disclosure: "true"
  - uses: @semrel/updater-go
    phase: pre-tag
    args:
      file: internal/version/version.go
  - uses: @semrel/provider-github
    phase: release
    args:
      token: '${env.GITHUB_TOKEN}'
      comment_on_prs: "true"
3

Verify & Ship

# 1. Pre-flight check (config, plugins, tokens)
semrel doctor

# 2. Validate commit messages
semrel commitlint --commit-msg-file .git/COMMIT_EDITMSG

# 3. Preview without side effects
semrel release --dry-run

# 4. Ship production release (or monorepo: semrel workspace release)
semrel release --github-output
ROADMAP

The Road to semrel v1.0.0

Relentless execution focused on stability, ecosystem breadth, and enterprise readiness.

v0.1 – v0.10 ✓ Shipped

Zero-Dependency Core & Subprocess Runtime

Static Go binary without Node.js dependencies, subprocess plugin runtime, and semrel doctor pre-flight diagnostics.

v0.11 – v0.18 ✓ Shipped

.semrel.lock, Air-Gap & 8-Category Pipeline

SHA256-pinned lockfiles, air-gap plugin restore, monorepo workspaces, plus dedicated Generator, Packager, and Publisher categories.

v0.19 – v0.25 ✓ Shipped

Scope Rules, Contributor Metadata & AI Transparency

Scope-based bump rules, SEMREL_CONTRIBUTORS for MVP shoutouts, AI co-author disclosure badges, and registry download analytics.

v0.26 – v0.28.2 ✓ Shipped

Cosign v3, GHES, Workspace Scopes & 46 Official Plugins

Sigstore Cosign v3 (--bundle), env-var interpolation, monorepo sharedPaths/ignorePaths & package-scoped commits, automatic .gitignore generation, PR/MR release comments, GHES support, and 46 official plugins.

v0.29+ ⚡ In Progress

Ecosystem & Enterprise Adopter Expansion

Community plugin expansion, OIDC trusted publishing across registries, richer release analytics, and enterprise reference blueprints.

v1.0.0 🎯 Planned

v1.0 Long-Term Stability & Enterprise Guarantees

Long-term stability guarantees for Plugin Protocol v1, Core JSON Schema v1, and backward-compatible lockfile specifications.

COMMUNITY & CONTRIBUTING

Join the Movement — Help Us Build the Open-Source Release Standard

semrel is an independent open-source project created by Markus Waldheim (@mwaldheim) and Thomas Boerger (@tboerger). No VC lock-in, no artificial enterprise paywalls — built by engineers, for engineers.

🧩

Build & Submit Plugins

Write a new updater, publisher, or hook in Go, Rust, Python, or any language and publish it to registry.semrel.io.

Start Plugin Guide →
🐛

Good First Issues & Core

Whether you are a seasoned Go engineer or a first-time contributor, we mentor every PR. Grab a labeled Good First Issue!

Browse Good First Issues →
💬

Discord Community & Release Ping

Join our official Discord server! Get direct support from the maintainers, connect with adopters, and receive automatic Release Ping notifications.

Join Discord Server →
📚

Docs, Blueprints & CI Templates

Help us reach more engineering teams with CI/CD recipes, migration guides, translations, or share your setup in GitHub Discussions.

Contribute to Docs Repo →
SPREAD THE WORD

Help Us Grow Reach & Show Off semrel in Your README!

Open source thrives on visibility. Giving a GitHub Star, joining our Discord, sharing on LinkedIn/X, or adding the official "Released with semrel.io" badge to your README.md helps other teams escape slow legacy release tools.

Official README Badge: released with 🚀 semrel.io
Apache-2.0 License · DCO Sign-Off · REUSE Compliant