semantic version advisor

Semantic Version Advisor

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "semantic version advisor" with this command: npx skills add alienfast/claude/alienfast-claude-semantic-version-advisor

Semantic Version Advisor

This skill helps classify version changes, determine appropriate version bumps, and validate semantic versioning decisions.

Quick Reference

Version Format: MAJOR.MINOR.PATCH

  • MAJOR: Breaking changes, incompatible API changes

  • MINOR: New features, backward-compatible additions

  • PATCH: Bug fixes, backward-compatible fixes

Core Workflows

Workflow 1: Classify Version Change

Input: Old version and new version Output: Classification (MAJOR/MINOR/PATCH) with explanation

Decision Tree

┌─────────────────────────────────┐ │ Compare versions X.Y.Z │ └────────────┬────────────────────┘ │ v ┌────────────────┐ │ X changed? │─ YES ──> MAJOR (breaking changes) └────┬───────────┘ │ NO v ┌────────────────┐ │ Y changed? │─ YES ──> MINOR (new features) └────┬───────────┘ │ NO v ┌────────────────┐ │ Z changed? │─ YES ──> PATCH (bug fixes) └────┬───────────┘ │ NO v Same version

Classification Steps

  • Parse versions: Extract MAJOR.MINOR.PATCH from both versions

  • Strip notation: Remove ^ , ~ , >= prefixes if present

  • Compare MAJOR: If different → MAJOR change

  • Compare MINOR: If different → MINOR change

  • Compare PATCH: If different → PATCH change

  • Verify: Confirm classification matches change type

Examples

^4.0.0 → ^5.0.0 = MAJOR (4 → 5, breaking changes) ^13.1.5 → ^13.2.0 = MINOR (1 → 2, new features) ^7.1.5 → ^7.1.6 = PATCH (5 → 6, bug fixes) 9.35.0 → 9.36.0 = MINOR (35 → 36, new features) 1.0.0 → 1.0.1 = PATCH (0 → 1, bug fixes)

Workflow 2: Determine Version Bump

Input: List of changes to be included in release Output: Recommended version bump (MAJOR/MINOR/PATCH)

Change Classification

MAJOR bump required if ANY of:

  • Breaking API changes (removed methods, changed signatures)

  • Incompatible behavior changes

  • Removed public APIs or interfaces

  • Changed default behaviors that break existing code

  • Renamed public modules or packages

  • Dropped support for language/runtime versions

MINOR bump required if ANY of:

  • New features or capabilities added

  • New APIs or methods added

  • New optional parameters added

  • Deprecated APIs (but still functional)

  • Performance improvements (non-breaking)

  • New dependencies added

PATCH bump if ALL of:

  • Bug fixes only

  • Documentation updates

  • Internal refactoring (no API changes)

  • Security patches (backward-compatible)

  • Test improvements

  • Build process changes

Decision Process

Start with PATCH (default) ↓ For each change:

  • Breaking change? → Upgrade to MAJOR, stop
  • New feature? → Upgrade to MINOR, continue
  • Bug fix? → Keep current level, continue ↓ Return highest level encountered

Example Analysis

Changes:

  • Fixed null pointer exception in getData()

  • Added new fetchAsync() method

  • Updated documentation

Analysis:

  • Null pointer fix → PATCH candidate

  • New method → MINOR upgrade (overrides PATCH)

  • Documentation → No impact

Result: MINOR bump (new functionality added)

Workflow 3: Validate Version Proposal

Input: Current version, proposed version, change list Output: Validation result (valid/invalid) with reasoning

Validation Rules

  • Version must increase: New version > current version

  • Only one segment increases: Increment MAJOR OR MINOR OR PATCH

  • Reset lower segments: When incrementing, reset lower segments to 0

  • MAJOR bump: 1.5.3 → 2.0.0 ✅ (MINOR and PATCH reset)

  • MINOR bump: 1.5.3 → 1.6.0 ✅ (PATCH reset)

  • PATCH bump: 1.5.3 → 1.5.4 ✅ (no reset needed)

  • Match change severity: Version bump matches most severe change

  • Breaking change → MAJOR required

  • New feature → MINOR minimum

  • Bug fix only → PATCH appropriate

Validation Examples

Valid:

  • 1.2.3 → 2.0.0 with breaking changes ✅

  • 1.2.3 → 1.3.0 with new features ✅

  • 1.2.3 → 1.2.4 with bug fixes ✅

Invalid:

  • 1.2.3 → 1.4.0 (skipped MINOR version) ❌

  • 1.2.3 → 2.1.0 (MINOR not reset to 0) ❌

  • 1.2.3 → 1.2.3 (no change) ❌

  • 1.2.3 → 1.3.0 with breaking changes (under-versioned) ❌

  • 1.2.3 → 2.0.0 with only bug fixes (over-versioned) ❌

Common Pitfalls

❌ Misclassifying Range Notation

Wrong: ^7.1.5 → ^7.1.6 = "Major" because of the caret Right: ^7.1.5 → ^7.1.6 = PATCH (ignore the ^ , compare numbers)

❌ Assuming Package Importance

Wrong: Core package changed → must be MAJOR Right: Classify by version numbers, not package importance

❌ Ignoring Reset Rules

Wrong: 1.5.3 → 2.1.0 for MAJOR bump Right: 1.5.3 → 2.0.0 for MAJOR bump (reset MINOR and PATCH)

❌ Security Assumptions

Wrong: Security fix → must be PATCH Right: Security fixes can be any level (breaking fix = MAJOR)

Pre-release Versions

Format

  • 1.0.0-alpha.1

  • Alpha pre-release

  • 1.0.0-beta.2

  • Beta pre-release

  • 1.0.0-rc.1

  • Release candidate

Precedence

1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-rc.1 < 1.0.0

Pre-release Classification

  • 1.0.0 → 1.0.0-alpha.1 = Pre-release (no semver bump)

  • 1.0.0-beta.1 → 1.0.0 = Release (no semver change)

  • 1.0.0-rc.1 → 1.1.0 = MINOR release from RC

Research Depth by Type

MAJOR Version Changes

Required Research:

  • Full changelog review

  • Breaking change analysis

  • Migration guide review

  • API compatibility check

  • Test coverage verification

Time Investment: High (30-60 minutes)

MINOR Version Changes

Required Research:

  • Feature overview

  • Deprecated API checks

  • New dependency review

  • High-level compatibility check

Time Investment: Medium (10-20 minutes)

PATCH Version Changes

Required Research:

  • Security advisory check only

  • Skip detailed changelog review

Time Investment: Low (2-5 minutes)

Integration with Other Tools

NPM/pnpm Commands

View outdated packages with version info

npm outdated

Machine-readable upgrade information

npx ncu --jsonUpgraded

pnpm version check

pnpm outdated

Semver Utility Commands

Classify version difference

semver diff 1.2.3 1.3.0 # Output: "minor"

Compare versions

semver gt 1.3.0 1.2.3 # Output: true

Check range satisfaction

semver satisfies 1.2.4 "^1.2.3" # Output: true

Advisory Templates

Template: Version Bump Recommendation

Recommended Version Bump: [MAJOR/MINOR/PATCH]

Current Version: X.Y.Z Proposed Version: A.B.C

Change Summary:

Reasoning: [Explain why this classification based on change types]

Migration Notes (if MAJOR): [Required steps for consumers]

Template: Dependency Update Classification

Package: package-name Version Change: X.Y.Z → A.B.C Classification: [MAJOR/MINOR/PATCH]

Impact Assessment:

  • Breaking Changes: [Yes/No]
  • New Features: [Yes/No]
  • Security Fixes: [Yes/No]

Recommended Action: [Update now/Test first/Review carefully]

Quick Classification Chart

Old Version New Version Change Type Classification

1.2.3 2.0.0 X changed MAJOR

1.2.3 1.3.0 Y changed MINOR

1.2.3 1.2.4 Z changed PATCH

^4.0.0 ^5.0.0 X changed MAJOR

~1.2.3 ~1.3.0 Y changed MINOR

9.35.0 9.36.0 Y changed MINOR

0.2.3 0.3.0 Y changed MINOR (0.x)

Resources

  • Version Range Notation Guide - Detailed caret, tilde, and exact range rules

  • Classification Examples - Real-world version change examples

  • Common Errors Reference - Patterns to avoid

Full Specification

For complete semver rules and standards, see: ~/.claude/standards/semver.md

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

deprecation handler

No summary provided by upstream source.

Repository SourceNeeds Review
General

dependency updater

No summary provided by upstream source.

Repository SourceNeeds Review
General

pr title and description generator

No summary provided by upstream source.

Repository SourceNeeds Review
General

Style Guide Generator

Generate comprehensive website style guides and design systems from URLs, screenshots, and existing documentation. Use this skill when users ask to create a style guide, design system documentation, brand guidelines document, or design specification from a website, app, or existing materials. This skill produces professional PDF outputs following industry-standard style guide structure.

Registry SourceRecently Updated
2.3K2Profile unavailable