← ClaudeAtlas

releaselisted

Use when the user says "release", "ship", "發版", "打 tag", "發新版本", "cut a release", or wants to publish a new version of this repo. Cuts a SemVer-tagged release from the current main: classifies commits since the last tag, proposes a bump, updates CHANGELOG.md, creates the tag, pushes, and opens a GitHub Release.
mojoapp-ai/agent-skills · ★ 0 · AI & Automation · score 70
Install: claude install-skill mojoapp-ai/agent-skills
# release Cut a new release of `mojoapp-ai/agent-skills`. Designed to be run from inside the repo with Claude Code. ## Prerequisites - You are at the repo root: `agent-skills/` with `mojo-food-log/`, `mojo-glp1-knowledge/`, `mojo-app-docs/` visible. - Working tree is clean — no uncommitted changes (`git status` shows nothing). - `gh` CLI is logged in for both `hanamizuki` (default) and `mojoapp-ai` accounts. If any of the above fails, stop and tell the user what's wrong. ## Step 1 — Inspect what's changed ```bash git fetch --tags LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "") if [ -z "$LAST_TAG" ]; then echo "No previous tag. This will be the initial release." COMMITS=$(git log --pretty=format:"%h %s") else echo "Last tag: $LAST_TAG" COMMITS=$(git log "$LAST_TAG..HEAD" --pretty=format:"%h %s") fi echo "$COMMITS" ``` ## Step 2 — Classify commits and propose a bump Walk through each commit subject: | Pattern in subject | Category | Bump signal | |---|---|---| | `feat:` / `feat(...):` | Added | minor | | `fix:` / `fix(...):` | Fixed | patch | | `docs:` / `docs(...):` | Documentation | patch | | `chore:` / `chore(...):` | (omit from changelog unless notable) | patch | | `refactor:` | Changed | patch | | `BREAKING CHANGE:` or subject contains `!:` | **breaking** | **major** | | anything else | Other | patch | **Proposed bump rule:** - Any breaking change present → **major** (X.0.0) - Else any `feat:` present → **minor** (0.X.0) - Else → **patc