Nvidia nemoclaw maintainer cut release tag
Skill autohandai/community-skills/nvidia-nemoclaw-maintainer-cut-release-tag
A collection of curated, useful, and safe skills for Autohand Code CLI Agent
npx -y skills add autohandai/community-skills --skill nvidia-nemoclaw-maintainer-cut-release-tagAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 9 stars9 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Cut a new semver release — bump all version strings via bump-version.ts, open a release PR, and after merge tag main and push. Use when cutting a release, tagging a version, shipping a build, or preparing a deployment. Trigger keywords - cut tag, release tag, new tag, cut release, tag version, ship it.
The file declares its own license as Apache-2.0 AND CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.4 KB, as published. Nobody here has run it
Cut Release Tag
Bump all version strings, open a release PR, and after merge create annotated semver + latest tags on origin/main.
This skill delegates the version-bump work to scripts/bump-version.ts (invoked via npm run bump:version). That script updates package.json (root + plugin), blueprint.yaml, installer defaults, docs config, and versioned doc links — then runs the build and tests before opening a PR.
Prerequisites
- You must be in the NemoClaw git repository.
- You must have push access to
origin(NVIDIA/NemoClaw). - The nightly E2E suite should have passed before tagging. Check with the user if unsure.
Step 1: Determine the Current Version
Fetch all tags and find the latest semver tag:
git fetch origin --tags
git tag --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -1
Parse the major, minor, and patch components from this tag.
Step 2: Ask the User Which Bump
Present the options with the patch bump as default:
- Patch (default):
vX.Y.(Z+1)— bug fixes, small changes - Minor:
vX.(Y+1).0— new features, larger changes - Major:
v(X+1).0.0— breaking changes
Show the concrete version strings. Example prompt:
Current tag:
v0.0.2Which version bump?
- Patch →
v0.0.3(default)- Minor →
v0.1.0- Major →
v1.0.0
Wait for the user to confirm before proceeding. If they just say "yes", "go", "do it", or similar, use the patch default.
Step 3: Show What's Being Tagged
Show the user the commit that will be tagged and the changelog since the last tag:
git log --oneline origin/main -1
git log --oneline <previous-tag>..origin/main
Ask for confirmation before proceeding.
Step 4: Run the Version Bump Script
First, preview the plan with --dry-run:
npm run bump:version -- <version-without-v-prefix> --dry-run
Show the dry-run output to the user. After confirmation, ask the user which mode they want:
Option A: PR mode (default, recommended)
npm run bump:version -- <version-without-v-prefix>
This will:
- Update all version strings across the repo
- Run the build and tests
- Create a
release/<version>branch and open a release PR againstmain
In PR mode, tagging is deferred — proceed to Step 5 after the PR merges.
Option B: Direct mode (no PR)
npm run bump:version -- <version-without-v-prefix> --no-create-pr --push
This will:
- Update all version strings across the repo
- Run the build and tests
- Commit directly on
main - Create annotated
v<version>andlatesttags - Push the commit and both tags to origin
In direct mode, tagging and pushing are handled by the script — skip to Step 6.
If the user wants to skip tests (e.g., they already ran them), add --skip-tests to either mode.
Step 5: Create and Push Tags (PR mode only, after PR merge)
Skip this step if you used direct mode in Step 4 — the script already tagged and pushed.
Once the release PR is merged into main, create the annotated tag, move latest, and push:
git fetch origin main --tags
git tag -a <new-version> origin/main -m "<new-version>"
# Move the latest tag (delete old, create new)
git tag -d latest 2>/dev/null || true
git tag -a latest origin/main -m "latest"
# Push both tags (force-push latest since it moves)
git push origin <new-version>
git push origin latest --force
Step 6: Verify
git ls-remote --tags origin | grep -E '(<new-version>|latest)'
Confirm both tags point to the same commit on the remote.
Important Notes
- NEVER tag without explicit user confirmation of the version.
- NEVER tag a branch other than
origin/main. - Always use annotated tags (
-a), not lightweight tags. - The
latesttag is a floating tag that always points to the most recent release — it requires--forceto push. - The version string passed to
npm run bump:versionshould NOT have avprefix (e.g.,0.0.3, notv0.0.3). The script adds thevprefix for tags internally.