aiwfx-release

Tags a semver release with CHANGELOG updates and gated git pushes after an aiwf epic closes.

Updated May 9, 2026
One-click install
npx skills add https://github.com/23min/aiwf --skill aiwfx-release-23min
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aiwfx-release
Source: https://github.com/23min/aiwf/tree/main/internal/skills/embedded-rituals/plugins/aiwf-extensions/skills/aiwfx-release
Command: npx skills add https://github.com/23min/aiwf --skill aiwfx-release-23min

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? After an epic is finished and merged, teams still need a disciplined way to cut a release: picking the right semver bump, promoting the accumulated CHANGELOG entries, creating an annotated git tag, and pushing it — all without accidentally publishing an unreviewed artifact. This Skill walks that release act step by step with a separate human approval gate for every mutating action. ## Core Features & Use Cases - Pre-release verification: Confirms clean tree, passing tests, and CI-green status on the last build-relevant commit via GitHub CLI before anything is tagged. - Semver determination and CHANGELOG promotion: Walks commits since the last tag to classify the bump, then renames ## [Unreleased] to the new version heading without rewriting accumulated entries. - Four separate approval gates: CHANGELOG commit, annotated tag creation, commit push, and tag push are each confirmed individually — never bundled — so nothing irreversible happens silently. - Use Case: An epic was just wrapped with aiwfx-wrap-epic and merged to main. You say "release v1.2" and the Skill verifies CI, proposes the version, updates CHANGELOG.md, and walks you through each gated commit, tag, and push. ## Quick Start Say "cut a release" or "tag release v1.2" after your epic is wrapped and merged, and approve each gate as it is presented.

Frequently Asked Questions about aiwfx-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I cut a release after finishing an aiwf epic?

Wrap the epic first with aiwfx-wrap-epic so its status is done and the branch is merged, then invoke this release skill. It verifies CI is green, proposes a semver bump, promotes the CHANGELOG Unreleased section, and walks you through gated commit, tag, and push steps.

How does the skill decide between major, minor, and patch version bumps?

It runs git describe to find the latest tag, then walks commits since that tag classifying them: breaking changes trigger MAJOR, new backward-compatible features trigger MINOR, and bug fixes trigger PATCH. You confirm or override the proposed version before anything is committed.

Does the release skill push tags automatically without confirmation?

No. Every mutating action is a separate approval gate: the CHANGELOG commit, the annotated tag creation, the commit push, and the tag push each require explicit human approval. The commit push and tag push are never bundled into one confirmation.

Why does the release check CI on an older commit instead of HEAD?

Markdown-only commits like aiwf promote or changelog prep often don't trigger CI due to path filters. The skill walks back to the most recent commit touching build inputs, such as Go source or go.mod, and verifies that commit's workflow run succeeded.

Can I reuse a version number if a release goes wrong?

No. Versions are immutable once tagged. If vX.Y.Z has a problem, the fix ships as vX.Y.(Z+1) rather than moving or deleting the existing tag, since downstream consumers may already reference the published version.

Does aiwf track a released status for epics?

No. aiwf has no released status; done is the terminal state for an epic. The durable release record lives in the git tag and the CHANGELOG entry, not in aiwf planning state.