Run the gatecheck release flow end-to-end. Use when the user asks to release patch, minor, major, beta, or an explicit semver; includes non-interactive release execution, GitHub Actions monitoring with gh, draft release note cleanup, and publishing the GitHub Release.
Run the gatecheck release flow end-to-end. Use when the user asks to release patch, minor, major, beta, or an explicit semver; includes non-interactive release execution, GitHub Actions monitoring with gh, draft release note cleanup, and publishing the GitHub Release.
gatecheck Release
Use this skill to perform an end-to-end release for this repository.
Inputs
Interpret the user's argument as the release version spec:
patch, minor, major, beta
or an explicit semver such as 0.1.0 / 0.1.0-beta.0
If no version spec is present, ask the user which one to use.
Preconditions
Work from the repository root.
Inspect the current branch and working tree:
git branch --show-current
git status --short
If there are unrelated uncommitted changes, stop and ask the user how to handle them.
If release-related changes were just made, commit them before running release because scripts/release.ts requires a clean working tree.
VERSION_SPEC="patch"# replace with the user's requested spec
pnpm release -y --version ""
$VERSION_SPEC
The script runs audit/lint/typecheck/test checks, updates package.json, creates a signed release commit, creates a signed tag, and pushes commits and tags.
If push fails because the branch has no upstream
The release commit and tag may already exist locally. Push the current branch with upstream, then push tags:
The workflow creates a draft release. Inspect the generated notes:
TAG="v0.0.0"# replace
gh release view "$TAG" --json body --jq .body
Rewrite the notes according to docs/release-note-guideline.md. The generated draft is based on commit logs, so categories and wording may be wrong from the gatecheck product perspective. Remove internal-only updates, move entries to the correct category, merge intermediate same-release fixes into their related feature, and rewrite commit-message phrasing into release-note prose.
For a second-pass review before publishing, delegate a focused review to another agent:
RELEASE_URL="https://github.com/d-kimuson/gatecheck/releases/tag/v0.0.0"# replace
pi -p "Read docs/release-note-guideline.md, review the Release Note at $RELEASE_URL, and identify concrete changes that should be made. Do not edit files or GitHub releases; only report findings."
Apply the review findings when they are consistent with the guideline.
Publish the draft with the rewritten notes:
TAG="v0.0.0"# replace
NOTES_FILE="/tmp/gatecheck-$TAG-release-notes.md"$EDITOR"$NOTES_FILE"# or write the file with the agent's file tool
gh release edit "$TAG" --notes-file "$NOTES_FILE" --draft=false