semver-helper

Semantic Versioning 2.0.0 reference guide. Quick decision trees and examples for choosing MAJOR, MINOR, or PATCH version bumps.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "semver-helper" with this command: npx skills add avegancafe/semver-helper

Semver Helper

Quick reference for Semantic Versioning 2.0.0 decisions.

The Golden Rule

Given version MAJOR.MINOR.PATCH, increment:

LevelBump WhenReset Lower?
MAJOR (X.0.0)Breaking changes (incompatible API changes)Yes, MINOR and PATCH → 0
MINOR (0.X.0)New features (backwards compatible)Yes, PATCH → 0
PATCH (0.0.X)Bug fixes (backwards compatible)No

Quick Decision Tree

Did you change anything users depend on?
├─ No (internal only) → PATCH
└─ Yes
   └─ Did you remove/change existing behavior?
      ├─ Yes → MAJOR
      └─ No (only added new stuff)
         └─ Is the new stuff visible to users?
            ├─ Yes → MINOR
            └─ No → PATCH

Real Examples

🔴 MAJOR (Breaking)

  • Remove a function, endpoint, or CLI flag
  • Change the return type of a function
  • Require a new mandatory parameter
  • Change default behavior significantly
  • Rename something users depend on
  • Upgrade a dependency that forces downstream changes

Examples:

  • removeUser()deleteUser() rename
  • API response format changed from {id: 1} to {data: {id: 1}}
  • Dropping support for Node 16 (if users must upgrade)

🟡 MINOR (Feature)

  • Add new functionality
  • Add optional parameters
  • Add new exports/exports
  • Deprecate old features (warn, don't remove)
  • Performance improvements (no API change)

Examples:

  • Add createUser() alongside existing user functions
  • Add --format json flag to CLI
  • Add new event listeners/hooks
  • Mark old method as deprecated (still works)

🟢 PATCH (Fix)

  • Fix bugs without changing intended behavior
  • Documentation updates
  • Internal refactoring (no visible change)
  • Dependency updates (no API change)
  • Test additions

Examples:

  • Fix null pointer exception
  • Correct typo in error message
  • Fix race condition
  • Update README

Version Progression Examples

ChangesVersion Bump
fix: null pointer1.2.31.2.4
feat: add auth1.2.31.3.0
breaking: remove old API1.2.32.0.0
fix: bug + feat: new thing1.2.31.3.0 (MINOR wins)
fix: bug + breaking: remove API1.2.32.0.0 (MAJOR wins)

Pre-releases

Use suffixes for testing before stable:

  • 2.0.0-alpha.1 — Very early, unstable
  • 2.0.0-beta.2 — Feature complete, testing
  • 2.0.0-rc.1 — Release candidate, final testing

Pre-releases sort before their stable version: 1.0.0-alpha < 1.0.0-beta < 1.0.0-rc < 1.0.0

Common Edge Cases

SituationBumpWhy
Fix a bug that was introduced this versionPATCHStill a fix
Deprecate a feature (but keep it working)MINORNew "deprecated" state is info
Change undocumented/internal behaviorPATCHUsers shouldn't depend on it
Security fix that requires API changeMAJORBreaking for security
Rewriting internals, same behaviorPATCHInvisible to users
Adding tests/docs onlyPATCHNo code change

Anti-Patterns

Don't bump MAJOR for big new features (unless breaking) ❌ Don't bump MINOR for bug fixes ❌ Don't bump PATCH for new functionality ❌ Don't keep old numbers when bumping: 1.2.3 → 2.2.3 is wrong

Cheat Sheet

Users' code breaks? → MAJOR
Users get new toys? → MINOR
Users get fixes? → PATCH

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Quodd

Fetch real-time stock quotes via Quodd API. Get current prices, daily high/low, and after-hours data for US equities. Use when the user asks for stock prices...

Registry SourceRecently Updated
2.5K2Profile unavailable
General

release

No summary provided by upstream source.

Repository SourceNeeds Review
1.1K-tobi
General

release

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

Universal Release

Universal release workflow. Auto-detects version files and changelogs. Supports Node.js, Python, Rust, Claude Plugin, and generic projects. Use when user say...

Registry SourceRecently Updated
2700Profile unavailable