source-command-release
SkillDev toolsReview and merge the release-plz release PR with explicit user confirmation
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the source-command-release skill
What this skill tells your AI
The instructions your AI receives, as published by utensils/nxv in .agents/skills/source-command-release/SKILL.md and read by ahel’s review.
Use this skill when the user asks to run the migrated source command release.
Command Template
Release
Releases are driven by release-plz (release-plz.toml +
.github/workflows/release-plz.yml). On every push to main it maintains a
chore: release vX.Y.Z PR with the version bump and CHANGELOG update derived
from conventional commits. Merging that PR ships the release — release-plz
pushes the vX.Y.Z tag, which triggers release.yml (static binaries, GitHub
release, crates.io, Docker) and flakehub-publish-tagged.yml.
This command walks that flow safely. Never merge the release PR without explicit user confirmation — it is an outward-facing, hard-to-reverse action.
Phase 1: Locate the release PR
gh pr list --repo utensils/nxv --search "chore: release in:title" --state open
If none exists, check whether main has unreleased conventional commits since
the last tag (git log $(git describe --tags --abbrev=0)..origin/main --oneline).
If there are releasable commits but no PR, check the latest Release-plz
workflow run for errors (gh run list --workflow release-plz.yml).
Phase 2: Review what will ship
- Show the PR's version bump (Cargo.toml diff) and CHANGELOG addition.
- Verify the version follows the project convention:
feat:commits bump the 0.x minor (features_always_increment_minor = true), fixes bump patch. - If the version or changelog is wrong, edit the release PR directly (it is a normal editable PR) — release-plz preserves manual edits unless new commits land on main.
Phase 3: Pre-flight
- All CI checks on the release PR must be green. If checks show "Expected /
Waiting", the App token is misconfigured — see
release-plz.ymlcomments. - Confirm no other PR is about to land that should be in this release.
Phase 4: Confirm and merge
Present a summary (version, commit list, changelog) and require the user to confirm with the explicit version number (AskUserQuestion). Then:
gh pr merge <PR> --repo utensils/nxv --squash
Phase 5: Monitor
- The
Release-plzworkflow on main pushes the tag. - The
Releaseworkflow builds binaries and publishes — monitor withgh run list --workflow release.yml/gh run watch. - Verify the GitHub release has all four binaries + SHA256SUMS.txt, crates.io has the new version, and ghcr.io has the version tag.
Manual escape hatches
- Tagging failed after the release PR merged: re-run the
Release-plzworkflow on main (it is idempotent — existing tags are the gate). - The old fully-manual flow (bump Cargo.toml, edit CHANGELOG, tag by hand)
still works in emergencies but must match release-plz's expectations
(tag
vX.Y.Z, CHANGELOG section## [X.Y.Z] - YYYY-MM-DD).
Signals
- GitHub stars
- 136
- Forks
- 2
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
source-command-release- Source
- github.com/utensils/nxv