一键导入
release
Draft a release by bumping package.json and updating CHANGELOG.md. Use when committed changes are ready to ship from main.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Draft a release by bumping package.json and updating CHANGELOG.md. Use when committed changes are ready to ship from main.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | release |
| description | Draft a release by bumping package.json and updating CHANGELOG.md. Use when committed changes are ready to ship from main. |
| disable-model-invocation | true |
.github/workflows/release.yml creates and pushes vX.Y.Z automatically when the version bump lands on main.CHANGELOG.md and package.json. Do not touch any other files.git add -- CHANGELOG.md package.json. Never use git add . for a release.Verify the current branch is main:
git branch --show-current
If it is not main, stop and tell the user to switch branches first.
Check for uncommitted changes:
git status --short
If the work tree is dirty, show the dirty paths and ask whether to ignore them. Continue only after explicit confirmation. Do not modify or stage unrelated dirty files.
Pull the latest main and tags:
git pull --ff-only
git fetch --tags --prune --force
Read the current package version:
jq -r .version package.json
List release tags, newest first:
git tag --list 'v*' --sort=-v:refname
Use the newest v* tag as the latest release. Gather full commit data since that tag:
git log <latest-tag>..HEAD --decorate=short --stat
Use the full log rather than --oneline so commit bodies are available.
If there are no commits since the latest tag, stop and tell the user there is nothing to release.
Pim is pre-v1. Choose the bump from the actual nature of the changes, not only commit prefixes:
0.x.0) if any commit introduces new functionality or contains breaking changes.0.x.y) for bug fixes, docs, CI, refactors, chores, and other non-feature changes.CHANGELOG.mdRead CHANGELOG.md first. If it does not exist, create it.
The file must have a top-level heading followed by releases in reverse chronological order:
# Changelog
## vX.Y.Z
### Features
- Description (#PR)
### Bug Fixes
- Description (commit-hash)
### Improvements
- Description (#PR)
Rules:
## vX.Y.Z section above older releases.chore: release vX.Y.Z or chore: bump version to vX.Y.Z.(#10), use that as the reference. Otherwise use the 7-character short commit hash.package.jsonUpdate only the "version" field to the new version string without the v prefix.
Show the release-file diff:
git diff -- CHANGELOG.md package.json
Stage the release files only:
git add -- CHANGELOG.md package.json
Show the staged diff:
git diff --cached -- CHANGELOG.md package.json
Ask the user to confirm the release, including the version bump (for example, 0.2.2 → 0.3.0). Wait for explicit confirmation.
After confirmation:
git commit -m "chore: release vX.Y.Z"
git push origin main
Do not tag. CI will run checks, create the tag, create the GitHub release, and publish to npm.