semantic-release-automationlisted
Install: claude install-skill stealth-engine/skills
# semantic-release automation
[semantic-release](https://github.com/semantic-release/semantic-release) reads
[Conventional Commits](../conventional-commits/SKILL.md), computes the next semver
version, writes the changelog, tags, and **registers a GitHub Release** (and
optionally publishes to npm) — all in CI, no manual version bumps. This skill is
the tooling that consumes the commit format; read `conventional-commits` first for
how the bump is decided.
Copy-paste configs: [`templates/`](./templates) — a single-package config, a
monorepo per-package config, and the GitHub Actions workflow.
## How a release happens
1. You merge a PR to `main` (squash; the **PR title** is the Conventional Commit).
2. The workflow runs `semantic-release`, which:
- **commit-analyzer** → reads commits since the last tag, decides major/minor/patch (or no release).
- **release-notes-generator** → builds the notes from those commits.
- **changelog** → writes/updates `CHANGELOG.md`.
- **npm** *(optional)* → bumps `package.json` and publishes to npm.
- **git** → commits `CHANGELOG.md`/`package.json` back as `chore(release): X.Y.Z` (the version **tag** itself is created by semantic-release core, not this plugin).
- **github** → creates the **GitHub Release** (the canonical record of what shipped).
If no commit since the last release warrants a bump (only `chore`/`docs`/…), it
does nothing — correct, not a failure.
### Outputs are à la carte — pick any subset
Those six steps read