release
Create a versioned release — bump version, update CHANGELOG.md, tag, push, create GitHub release. Usage: /release [patch|minor|major]
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create a versioned release — bump version, update CHANGELOG.md, tag, push, create GitHub release. Usage: /release [patch|minor|major]
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | release |
| description | Create a versioned release — bump version, update CHANGELOG.md, tag, push, create GitHub release. Usage: /release [patch|minor|major] |
Create a versioned release for pilgrim-viewer.
/release patch — bug fixes (0.1.0 → 0.1.1)
/release minor — new features (0.1.0 → 0.2.0)
/release major — breaking changes (0.1.0 → 1.0.0)
Default: patch if no argument given.
Run all quality gates. If ANY fail, STOP and fix before releasing.
npm run typecheck
npm test
npm run build
Also verify:
git status — no uncommitted changes)main branchgit fetch origin main && git rev-list HEAD..origin/main --count returns 0)If any check fails, tell the user what's wrong and stop.
Read current version from package.json. Apply the bump type (patch/minor/major).
Show: "Releasing v{new_version} (was v{old_version})"
Get commits since the last tag:
git log $(git describe --tags --abbrev=0 2>/dev/null || git rev-list --max-parents=0 HEAD)..HEAD --oneline --no-merges
Parse each commit and categorize by conventional commit prefix:
Categories (in this order, skip empty ones):
feat: → Addedfix: → Fixedchore: / refactor: / perf: → ChangedFiltering rules:
chore: that mention "plan", "spec", "workflow")docs/ or .github/Format:
## [X.Y.Z] - YYYY-MM-DD
### Added
- Feature description
- Feature description
### Fixed
- Fix description
### Changed
- Change description
Read CHANGELOG.md. Insert the new entry AFTER the header (after the "adheres to Semantic Versioning" line) and BEFORE any previous entries. Preserve all existing content.
Update the version field in package.json.
git add package.json CHANGELOG.md
git commit -m "release: v{version}"
git tag -a "v{version}" -m "Release v{version}"
git push origin main
git push origin "v{version}"
The GitHub release (step 7) triggers .github/workflows/deploy.yml which builds and deploys to GitHub Pages. Normal pushes to main only run CI — deploy is release-only.
Use the changelog entry (without the ## [X.Y.Z] header) as the release body:
gh release create "v{version}" --title "v{version}" --notes "{release_notes}"
gh run list --limit 1 --workflow=deploy.yml
Show the user: