Skip to content

tag-version

Bump the version and create an annotated git tag for $ARGUMENTS.

If $ARGUMENTS is empty, stop and tell the user: “Provide a version or bump type — for example: /release-plugin:tag-version patch or /release-plugin:tag-version 1.2.0.”

Step 1: Determine the new version

Inspect the current version: !cat package.json 2>/dev/null | grep '"version"' | head -1 || echo "no package.json found"

If $ARGUMENTS is a semantic version string matching the pattern X.Y.Z (e.g., 1.2.0, 0.9.1), use it directly as the new version.

If $ARGUMENTS is patch, minor, or major, run:

npm version $ARGUMENTS --no-git-tag-version

This updates package.json without creating a git tag. Read the new version from package.json after the command runs:

cat package.json | grep '"version"'

Step 2: Stage the version bump

If npm version was used to update package.json, stage the change:

git add package.json package-lock.json
git commit -m "Bump version to v$VERSION"

If the version was provided as a literal semver string, update package.json manually: edit the "version" field to the new value, then stage and commit it.

Step 3: Create the annotated tag

git tag -a v$VERSION -m "Release v$VERSION"

Step 4: Confirm

Run git describe --tags --abbrev=0 and show the output. Confirm: “Tag v$VERSION created. Run /release-plugin:publish to push it to origin and create the GitHub release.”

Do not push. The publish skill handles pushing.