release-versioning

Automates semver decisions, tagging, changelogs, and release tooling for software projects.

1|Updated Jul 3, 2026
One-click install
npx skills add https://github.com/Nandansai08/skillz --skill release-versioning-nandansai08
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: release-versioning
Source: https://github.com/Nandansai08/skillz/tree/main/skills/devops-cicd/release-versioning
Command: npx skills add https://github.com/Nandansai08/skillz --skill release-versioning-nandansai08

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Teams ship inconsistent versions: breaking changes hidden in minor bumps, hand-edited version numbers drifting across files, tags pushed from laptops, and changelogs that are raw git logs. This Skill establishes a disciplined release process where version numbers are honest promises to consumers and the mechanics are automated. ## Core Features & Use Cases - Semver Decision Framework: Bump major/minor/patch by consumer impact, not effort, with a written definition of the public API surface in VERSIONING.md. - Release Automation: Wire Conventional Commits with release-please, semantic-release, or changesets so version, tag, and changelog generate from commit metadata. - Tag & Changelog Protocol: CI-created annotated immutable tags triggering publish workflows, plus keep-a-changelog format that is generated then human-edited. - Use Case: A CLI tool stuck at 0.9.x breaking users each minor defines its contract, cuts 1.0.0, wires changesets, and ships a renamed flag as 2.0.0 with a deprecated alias — zero surprise breakage. ## Quick Start Set up automated semver releases with conventional commits and CI-created tags for my project.

Frequently Asked Questions about release-versioning

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decide if a change is major, minor, or patch?▼

Bump by consumer impact, not effort. Major means existing consumers must change something to upgrade, minor adds capability without affecting them, and patch is bug fixes only. A one-line rename of a public function is major; a year-long internal rewrite can be a patch.

How to automate version bumps from commit messages?▼

Use Conventional Commits (feat:, fix:, feat!:) with tooling like release-please, semantic-release, or changesets for monorepos. The human decides whether a change is breaking once, and version arithmetic, tagging, and changelog generation follow automatically.

Should services use semver or build metadata versioning?▼

Continuously deployed services usually work better with build metadata like date-plus-SHA, since a service has one deployed version rather than a compatibility matrix. Reserve semver for the service's client libraries and published API versions.

Why is moving or deleting a git tag a problem?▼

Tags must be immutable because consumers and tooling pin to them. A broken release gets a new patch version instead of a moved tag, and tags should be created by CI on the release commit, never hand-pushed from laptops.

When is staying on 0.x versioning a mistake?▼

Perpetual 0.x on a widely-used library is a versioning bug. Either commit to 1.0 early and honor semver, or state loudly that 0.x minors may break — two years of breaking 0.9 minors is a 1.0 refusing to happen.