Semantische Release-Automatisierung ohne Node.js
DIE NEXT-GEN SEMANTIC RELEASE ENGINE
Semantic Releases.
Vollautomatisch. Ohne Node-Ballast.
semrel ist der kompromisslose Nachfolger klassischer Release-Tools: Eine einzige statische Go-Binärdatei (~12 MB), die Conventional Commits analysiert, SemVer berechnet, 15+ Paket-Ökosysteme aktualisiert, Changelogs generiert und Releases supply-chain-gesichert ausliefert — in Sekunden statt 35 Minuten.
- ✓ Kein Node.js, keine
node_modules: Eliminiert 400+ transitive npm-Abhängigkeiten und 60s CI-Kaltstarts. - ✓ 46 Produktionsreife Plugins: GitHub/GHES, GitLab, Gitea, Bitbucket, npm, PyPI, Crates, Docker, OCI, Helm, Zig, Flutter, nFPM, Discord, Slack, Teams & mehr.
- ✓ Reproduzierbar & Air-Gap-sicher: Gepinnte SHA-256-Prüfsummen in
.semrel.lockundsemrel plugin restoreohne Internetzugriff im Release-Job. - ✓ Keine Paywalls, kein „Pro"-Tier: Monorepo-Workspaces, Linux-Packaging und Enterprise-Features sind dauerhaft 100% Open Source (Apache 2.0).
$ 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!Warum die Konkurrenz bei weitem nicht abbildet, was semrel leistet
Andere Tools zwingen dich entweder in einen 350-MB-Node.js-Abhängigkeitsbaum (semantic-release, release-it, changesets), kennen keine automatische SemVer-Berechnung aus Commits (GoReleaser OSS) oder sperren Enterprise- und Monorepo-Features hinter eine 3.300-$/Jahr-Paywall.
| Fähigkeit / Kriterium | 🚀 semrel v0.28.2 | semantic-release v24.x | GoReleaser v2.x OSS/Pro | release-please v17.x | release-it / changesets v17.x / v2.x |
|---|---|---|---|---|---|
| Laufzeit & 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 aus Commits | ✅ Conventional + Regex | ✅ Conventional Commits | ❌ Manueller Git-Tag nötig | ✅ Nur via Release-PR | ⚠️ Teilweise / Manuell |
| Scope-basierte Bump-Regeln | ✅ Nativ (inkl. scope: false) | ✅ | ❌ | ❌ | ❌ |
| Air-Gap & Offline-CI | ✅ Nativ via .semrel.lock | ❌ npm-Netzwerkzugriff | ✅ | ❌ Cloud API gebunden | ❌ npm-Netzwerkzugriff |
| Multi-Language Version Updaters | ✅ 15 Ökosysteme (Go, npm, Cargo, PyPI, Helm, Maven, Gradle, NuGet, Composer, Pubspec, Zig, Terraform, Docker, Homebrew, Regex) | ⚠️ JS-zentrisch / Drittpakete | ❌ Nur Go-Build-Fokus | ⚠️ Hartkodierte Updater | ❌ Nur JS/TS (package.json) |
| Multi-Registry Publishers & nFPM | ✅ OCI, Docker, npm, PyPI, crates.io, HTTP + .deb/.rpm/.apk | ⚠️ Nur via npm-Plugins | ✅ (Teilweise Pro) | ❌ Keine Artifact-Publisher | ⚠️ Primär npm |
| Git-Forges & Self-Hosted | ✅ GitHub, GHES, GitLab, Gitea/Forgejo, Bitbucket, Git | ✅ via Plugins | ✅ GitHub, GitLab, Gitea | ❌ Nur GitHub | ⚠️ GitHub / GitLab |
| Auto PR/MR Release-Kommentare | ✅ GitHub, GitLab, Gitea & Bitbucket (idempotent) | ⚠️ Nur GitHub/GitLab | ❌ | ⚠️ Nur Release-PR | ❌ |
| AI-Disclosure & Contributor MVP | ✅ 🤖 AI-Badges + 🏆 Release MVP + First-Timers | ❌ | ❌ | ❌ | ❌ |
| Supply-Chain Attestierung | ✅ Cosign v3 + CycloneDX/SPDX + SLSA L1 | ❌ Hohes npm-Risiko | ✅ Cosign + SBOM | ❌ | ❌ |
| Große Repos (460+ Tags) | ⚡ < 90 Sekunden (nebenläufiges Go) | 🐢 35+ Minuten (Timeouts) | ⚡ Schnell | ⚠️ API-Rate-Limits | 🐢 Langsam |
| Lizenz & Enterprise-Kosten | ✅ Apache 2.0 · 100% Kostenlos | ✅ MIT · Kostenlos | 💰 Pro kostet 3.300 $/Jahr | ✅ Apache 2.0 | ✅ MIT |
ℹ️ Stand des Funktions- und Preisvergleichs: Oktober 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) auf Basis der öffentlich dokumentierten Standardfunktionen der jeweiligen Projekte. Sollte sich bei einem der verglichenen Projekte seither etwas geändert haben, freuen wir uns über einen Hinweis oder Pull Request.
Gebaut für moderne Cloud-Native & Enterprise Pipelines
Vom Einzel-Repo bis zum Enterprise-Monorepo mit hunderten Services (ohne künstliche Limits) unter NIS2- und DORA-Regulierung — semrel deckt den kompletten Release-Lifecycle ohne Skript-Wildwuchs ab.
Conventional Commits & Scopes
Analysiert euren Commit-Verlauf und entscheidet automatisch über major, minor oder patch. Inklusive Scope-basierten Bump-Regeln (z. B. deps(major)) und versteckten Typen.
Eine statische Go-Binärdatei
Kein Node.js, kein npm install, keine 400+ transitiven Pakete und kein V8-Kaltstart. Läuft sofort in minimalen Alpine-Containern und restriktiven Runnern.
Supply-Chain Security by Default
Signierte Releases mit Sigstore Cosign v3 (--bundle), CycloneDX & SPDX SBOMs, SLSA Level 1 Provenance, DCO Sign-off und REUSE/SPDX Compliance.
Lockfile (.semrel.lock) & Air-Gap
Reproduzierbare Plugin-Versionen mit plattformübergreifenden SHA-256-Prüfsummen in .semrel.lock. Einmal cachen — null ausgehende Netzwerkzugriffe im Release-Job (NIS2 / DORA ready).
8 Modulare Plugin-Kategorien
Condition, Analyzer, Generator, Updater, Packager (.deb/.rpm/.apk), Publisher (OCI/Docker/npm/PyPI/Crates/HTTP), Provider & Hook — sprachunabhängig per Subprocess-Protokoll.
Monorepo Workspace Engine
Mehrere unabhängige Pakete in einem Repository — jedes mit eigener Tag-Serie und Config. Topologische Dependency-Order und parallele Releases per semrel workspace release.
GHES, GitLab, Gitea & Bitbucket
Voller Support für GitHub Enterprise Server (/api/v3 & Custom CA), Data Residency (*.ghe.com), GitLab CI Job-Tokens sowie automatische PR-/MR-Kommentare bei jedem Release.
AI-Disclosure & Contributor MVPs
Erkennt KI-Co-Autoren automatisch für transparente Changelogs und ehrt Erstbeitragende sowie den 🏆 Release MVP direkt in Markdown, HTML und Discord/Slack.
Doctor, Commitlint & JSON-Schemas
Pre-Flight-Checks per semrel doctor, Git-Hook-fähiges semrel commitlint (--commit-msg-file), Env-Interpolation mit Sprout und IDE-Autocomplete via registry.semrel.io.
Ein deterministischer Lifecycle — 4 Ausführungsphasen, 8 Plugin-Rollen
Jeder Schritt ist ein isoliertes Subprocess-Binary, gesteuert über Umgebungsvariablen (SEMREL_*) und abgesichert durch SHA-256-Checksummen.
CI & Branch Gate
Prüft GitHub Actions/GHES, GitLab CI, CircleCI, Bitbucket, Gitea oder Custom-Gates.
SemVer & Contributors
Berechnet major/minor/patch, Scopes, Commit-Hashes & Contributor-Statistiken.
Release Notes & AI-Audit
Rendert Markdown/HTML-Changelogs mit PR-Links, 🤖 AI-Disclosure und 🏆 Release MVP.
Manifeste patchen & Taggen
Aktualisiert Versionen in 15 Ökosystemen, erstellt genau einen Release-Commit & pusht den Git-Tag.
Build, Publish, Release & Notify
Baut .deb/.rpm, pusht zu OCI/Docker/npm/PyPI/Crates, erstellt Releases, kommentiert PRs & benachrichtigt ChatOps.
46 Offizielle Plugins — Für jeden Stack sofort einsatzbereit
Installiere jedes Plugin per semrel plugin install @semrel/<name>. Jedes Plugin wird als signierte Multi-Arch-Binärdatei und GHCR-Container-Image ausgeliefert.
CI/CD-Umgebungen & Branch-Gates validieren
@semrel/condition-github-actions GHES@semrel/condition-gitlab-ci@semrel/condition-gitea-actions@semrel/condition-bitbucket-pipelines NEW@semrel/condition-circleci NEW@semrel/condition-genericCommit-Historie analysieren & SemVer berechnen
Changelogs, AI-Disclosure & Contributor-MVPs
Manifeste & Version-Strings vor dem Tagging patchen
@semrel/updater-go@semrel/updater-npm@semrel/updater-cargo@semrel/updater-python@semrel/updater-docker@semrel/updater-helm@semrel/updater-maven@semrel/updater-gradle@semrel/updater-nuget@semrel/updater-composer NEW@semrel/updater-pubspec NEW@semrel/updater-zig NEW@semrel/updater-homebrew@semrel/updater-terraform@semrel/updater-replace NEWSystempakete aus gebauten Binaries schnüren
Artefakte & Pakete in Registries veröffentlichen
@semrel/publisher-oci@semrel/publisher-docker@semrel/publisher-npm NEW@semrel/publisher-pypi NEW@semrel/publisher-crates NEW@semrel/publisher-generic-httpGit-Forges, Releases, Assets & PR-Kommentare
@semrel/provider-github GHES + PR@semrel/provider-gitlab MR Comment@semrel/provider-gitea PR Comment@semrel/provider-bitbucket PR Comment@semrel/provider-gitChatOps, Issue-Tracker & Lifecycle-Skripte
@semrel/hook-slack@semrel/hook-teams@semrel/hook-discord NEW@semrel/hook-matrix@semrel/hook-jira@semrel/hook-email@semrel/hook-exec NEW@semrel/hook-gitpluginIn 3 Schritten zur vollautomatischen Pipeline
Mit JSON-Schema-Validierung in deiner IDE, Pre-Flight-Doctor und risikofreiem --dry-run.
Installieren & Plugins pinnen
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-discordKonfigurieren (.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"Prüfen & Releasen
# 1. Pre-flight check (Config, Plugins, Tokens)
semrel doctor
# 2. Commit messages validieren
semrel commitlint --commit-msg-file .git/COMMIT_EDITMSG
# 3. Vorschau ohne Änderungen
semrel release --dry-run
# 4. Produktives Release (oder Monorepo: semrel workspace release)
semrel release --github-outputDer Weg zu semrel v1.0.0
Kontinuierliche Weiterentwicklung mit vollem Fokus auf Stabilität, Ecosystem-Breite und Enterprise-Readiness.
Zero-Dependency Core & Subprocess Runtime
Statische Go-Binärdatei ohne Node.js-Abhängigkeiten, Subprocess-Plugin-Architektur und semrel doctor Pre-Flight-Analysen.
.semrel.lock, Air-Gap & 8-Kategorien-Pipeline
SHA256-gepinnte Lockfiles, Air-Gap-Restore, Monorepo-Workspaces sowie neue Generator-, Packager- und Publisher-Kategorien.
Scope-Rules, Contributor Metadata & AI-Transparency
Scope-basierte Bump-Regeln, SEMREL_CONTRIBUTORS für MVP-Ehrungen, KI-Co-Autor-Kennzeichnung und Registry Download-Telemetrie.
Cosign v3, GHES, Workspace-Scopes & 46 Official Plugins
Sigstore Cosign v3 (--bundle), Env-Var-Interpolation, Monorepo sharedPaths/ignorePaths & paket-gescopte Commits, automatische .gitignore-Generierung, PR/MR-Release-Kommentare, GHES-Support und 46 offizielle Plugins.
Ecosystem & Enterprise Adopter Expansion
Community-Plugin-Offensive, OIDC Trusted Publishing für Paket-Registries, erweiterte Release-Analytics und Enterprise-Blueprints.
v1.0 Long-Term Stability & Enterprise SLA Guarantees
Langfristige Stabilitätsgarantien für das Plugin-Protokoll v1, Core JSON-Schema v1 und rückwärtskompatible Lockfile-Spezifikationen.
Mach mit! Baue mit uns den neuen Open-Source-Standard für Releases
semrel ist ein unabhängiges Open-Source-Projekt von Markus Waldheim (@mwaldheim) und Thomas Boerger (@tboerger). Kein Venture-Capital-Lock-in, keine künstlichen Enterprise-Paywalls — sondern echte Ingenieurskunst aus der Community für die Community.
Plugins entwickeln & einreichen
Schreibe einen neuen Updater, Publisher oder Hook in Go, Rust, Python oder jeder anderen Sprache und reiche ihn auf registry.semrel.io ein.
Plugin-Guide starten →Good First Issues & Core
Egal ob Go-Profi oder Open-Source-Einsteiger: Wir begleiten jeden ersten Pull Request persönlich. Schnapp dir ein gelabeltes Einstiegs-Issue!
Good First Issues ansehen →Discord Community & Release Ping
Tritt unserem offiziellen Discord-Server bei! Erhalte direkte Hilfe von den Maintainern, tausche dich mit Adoptern aus und abonniere den automatischen Release Ping.
Discord-Server beitreten →Docs, Blueprints & CI-Templates
Hilf uns mit neuen CI/CD-Kochrezepten, Migrationsleitfäden, Übersetzungen oder teile dein Produktions-Setup in den GitHub Discussions.
Im Docs-Repo mitwirken →