Jackin Release
Use only when the user explicitly requests this skill. Cuts a jackin❯ release — runs the readiness gates, writes the changelog, recommends a version, then executes cargo release on explicit operator confirmation.
- Skill ID
- jackin-project/jackin-dev/jackin-release
- Publisher
- jackin-project
- Repository
- jackin-dev
- Installs
- 0
- Files
- 2
- License
- Apache-2.0
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
jackin-project/jackin-dev/jackin-releaseInstalls these files- SKILL.md
- agents/openai.yaml
What this skill tells the agent
jackin-release
Cut a release. The only irreversible skill in the suite — cargo release --execute bumps the version, rewrites the changelog header, tags, and pushes. Hard-gated on one explicit operator "yes"; nothing releases on assumption.
Orchestrates jackin-release-check (the gates) and jackin-release-notes (the changelog), then recommends a version from the changelog shape and cuts.
When to use
- The operator asks to cut / ship / release a version.
When NOT to use
- Just checking readiness →
jackin-release-check. - Just updating the changelog →
jackin-release-notes.
Prerequisites
cargo-release installed; gh authenticated; release.toml with pre-release-replacements for CHANGELOG.md; CHANGELOG.md with the <!-- next-header --> marker; .github/workflows/ci.yml.
Process
- Gates. Run
jackin-release-check. A red gate stops — show the report and name what to fix. Warns surface; ask whether to continue.
Done when every gate is green, or the operator accepted the warns.
- Changelog. Run
jackin-release-notes. Present the[Unreleased]section; let the operator re-classify or reword.
Done when the operator approves the changelog.
- Recommend a version. Read the approved
[Unreleased]buckets: any Removed or "breaking" entry → major; any Added → minor; only Fixed / Changed / Security / Deprecated → patch. Read the current version (grep '^version' Cargo.toml), compute the next, present the recommendation, wait.
Done when the operator confirms the bump level.
- Commit the changelog. If
CHANGELOG.mdhas uncommitted edits,git add CHANGELOG.md && git commit -m "docs: update changelog for vX.Y.Z".
- Final confirm. Show the summary — version, bump level, changelog shape, and the exact
cargo release <level> --executeabout to run (it bumpsCargo.toml, renames[Unreleased]to[X.Y.Z] - <date>viarelease.toml, tags, and pushes). Do not run it without an explicit "yes."
Done when the operator says "yes."
- Cut.
cargo release <level> --execute. On failure, show the error and stop.
- Verify.
git tag -l "vX.Y.Z"andgit ls-remote --tags origin "refs/tags/vX.Y.Z". Point the operator at the release workflow that now builds the artifacts.
Error recovery
- Before
cargo release: safe to fix and re-run — this skill re-validates everything. - During
cargo release: check what committed or tagged. Tag created but unpushed →git push origin vX.Y.Z. Version commit without tag → reset and retry. - After: the release is done; a CI failure is a workflow issue, not a rollback.
Common mistakes
- Running
cargo releasewithout the explicit "yes" — the one hard gate. - Letting a red readiness gate through to the cut.
- Hand-editing the
[X.Y.Z]version heading —cargo-releaserewrites it viarelease.tomlpre-release-replacements; double-editing corrupts the release commit.
More from jackin-project
Use this skill in a project
Open any RiverX project, search the Skills panel for jackin-project/jackin-dev/jackin-release, and install it in one click.
