Semver Manager

Other

Parse, validate, compare, sort, bump, and filter semantic versions (semver). Use when asked to check version compatibility, bump version numbers, sort releases, find latest matching version, or validate semver strings. Triggers on "semver", "version bump", "version compare", "semantic version", "version constraint", "caret range", "tilde range".

Install

openclaw skills install semver-manager

Semver Manager

Parse, validate, compare, sort, bump, and filter semantic versions per the semver 2.0.0 spec.

Validate

python3 scripts/semver.py validate 1.2.3 v2.0.0-beta.1 invalid

Compare

python3 scripts/semver.py compare 1.2.3 2.0.0

Sort

# Oldest first (default)
python3 scripts/semver.py sort 3.0.0 1.2.3 2.0.0-rc.1 2.0.0

# Newest first
python3 scripts/semver.py sort --reverse 3.0.0 1.2.3 2.0.0

Bump

# Bump patch: 1.2.3 → 1.2.4
python3 scripts/semver.py bump 1.2.3 patch

# Bump minor: 1.2.3 → 1.3.0
python3 scripts/semver.py bump 1.2.3 minor

# Bump major: 1.2.3 → 2.0.0
python3 scripts/semver.py bump 1.2.3 major

# Bump with pre-release tag: 1.2.3 → 1.3.0-beta.0
python3 scripts/semver.py bump 1.2.3 minor --pre beta

# Bump pre-release: 1.3.0-beta.0 → 1.3.0-beta.1
python3 scripts/semver.py bump 1.3.0-beta.0 prerelease

Filter by Constraint

# Caret (^): compatible versions
python3 scripts/semver.py filter "^1.2.0" 1.2.3 1.3.0 2.0.0 1.1.0

# Tilde (~): same minor
python3 scripts/semver.py filter "~1.2.0" 1.2.3 1.3.0 1.2.0

# Comparison operators
python3 scripts/semver.py filter ">=2.0.0" 1.9.9 2.0.0 2.1.0 3.0.0-alpha

Find Latest

# Latest overall
python3 scripts/semver.py latest 1.2.3 2.0.0 1.9.0

# Latest matching constraint
python3 scripts/semver.py latest 1.2.3 2.0.0 1.9.0 --constraint "^1.0.0"

Output Formats

python3 scripts/semver.py -f json validate 1.2.3
python3 scripts/semver.py -f markdown sort 3.0.0 1.2.3 2.0.0

Supported Constraints

OperatorMeaningExample
^Compatible (same leftmost non-zero)^1.2.3 matches 1.x.x
~Same major.minor~1.2.0 matches 1.2.x
>=Greater or equal>=2.0.0
<=Less or equal<=3.0.0
>Greater than>1.0.0
<Less than<2.0.0
=Exact match=1.2.3
!=Not equal!=1.0.0