# semantic-release/semantic-release

📦🚀 Fully automated version management and package publishing

Repository: https://github.com/semantic-release/semantic-release
Canonical: https://ross.abutalabs.com/products/semantic-release
Homepage: https://semantic-release.org
Language: JavaScript
License: MIT
License Family: permissive
Topics: automation, changelog, package, publish, release, release-workflow, release-automation, semver, semver-release, version, semantic-release, semantic-version
Last push: 2026-08-26T21:54:52+00:00

## Health v2 (maintenance only)
Score: 98/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 96, longevity 100
- inputs: {"age_days": 4370, "days_push": 7, "days_rel": 28, "gap_med": 18.0, "n_releases_24m": 23}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 24007, forks 1811 (observed 2026-08-28T04:11:35.492805+00:00)

## What it is
semantic-release is a Node.js CLI tool that fully automates version management and package publishing. It determines the next semantic version from commit messages, generates release notes and changelogs, and publishes packages via CI pipelines, extensible through plugins for any package manager or language.

## Use cases
- automate npm package releases from git commits
- generate changelogs and release notes automatically
- enforce semantic versioning based on commit conventions
- publish packages on CI after successful builds
- release to multiple distribution channels like npm dist-tags
- stop manually bumping version numbers

## When to choose
- you follow conventional commit messages and want hands-off releases
- you publish packages to npm or other registries via CI
- you want consistent, emotion-free semver versioning
- you need automated changelog and release note generation

## When to avoid
- your team does not follow a formalized commit message convention
- you need manual control over each release's version number
- your project is not published as a versioned package
- you cannot run releases in a CI environment

## Facets
- artifact type: cli-tool
- maturity: stable
- function: ci-cd, deployment, version-control, developer-tools, workflow-automation
- domain: developer-tools, version-control
- platform: cli, cloud
- tags: semantic-versioning, release-automation, changelog-generation, npm-publishing, conventional-commits, package-publishing, devops, automation, nodejs, docker

## Member repositories
- semantic-release/semantic-release (main) score 98

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:35.492805+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:56:18.390083+00:00, confidence not recorded.
  - readme: https://github.com/semantic-release/semantic-release (fetched 2026-08-28T04:11:35.492805+00:00, sha 2ac944be5438)
  - homepage: https://semantic-release.org (fetched 2026-08-29T07:54:07.379501+00:00, sha e8498949b1b9)
  - site_page: https://semantic-release.org/usage/getting-started (fetched 2026-08-29T07:54:07.390047+00:00, sha 452708dc2f33)
- Data as of 2026-08-30T08:39:29.467469+00:00.
