一键导入
release
Create a new semantic version release — bumps version, generates changelog, tags, and pushes to trigger CI
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create a new semantic version release — bumps version, generates changelog, tags, and pushes to trigger CI
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
| name | release |
| description | Create a new semantic version release — bumps version, generates changelog, tags, and pushes to trigger CI |
Create a new release of cms. Usage: /release patch, /release minor, or /release major.
Run ALL of these. If any fail, stop and report the issue.
# Must be on main
[ "$(git branch --show-current)" = "main" ] && echo "OK: on main" || echo "FAIL: not on main"
# Must be clean
git diff --quiet && git diff --staged --quiet && echo "OK: clean" || echo "FAIL: dirty tree"
# Must be up to date with remote
git fetch origin main
git diff --quiet main origin/main && echo "OK: up to date" || echo "FAIL: local/remote diverged"
# Tests must pass
go test ./...
Read the latest tag:
git describe --tags --abbrev=0 2>/dev/null || echo "none"
If no tag exists, the next version is v0.1.0 regardless of bump type.
Otherwise, parse the tag as vMAJOR.MINOR.PATCH and bump the requested component:
patch: increment PATCHminor: increment MINOR, reset PATCH to 0major: increment MAJOR, reset MINOR and PATCH to 0List commits since the last tag (or all commits if first release):
git log $(git describe --tags --abbrev=0 2>/dev/null)..HEAD --oneline
# If no tags: git log --oneline
Group by conventional commit type:
featfixperfPresent the grouped changelog and the calculated version to the user. Wait for explicit confirmation before proceeding.
Only after user confirms:
git tag <version>
git push origin main --tags
Print:
https://github.com/ser-ge/cms/actions (to watch the release workflow)