一键导入
tag-release
Create a release tag based on accumulated changelog fragments, then prune merged worktrees and branches. Run when ready to cut a release.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create a release tag based on accumulated changelog fragments, then prune merged worktrees and branches. Run when ready to cut a release.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Create a git worktree for PRD work with a descriptive branch name. Infers PRD from context or asks user.
Write documentation with real, validated examples. Executes commands through the user to capture actual output. Use for any new documentation or major doc updates.
| name | tag-release |
| description | Create a release tag based on accumulated changelog fragments, then prune merged worktrees and branches. Run when ready to cut a release. |
| disable-model-invocation | true |
Create a semantic version tag based on accumulated changelog fragments.
Run this skill when:
Run the analysis script bundled with this skill:
bash analyze.sh
If the script fails (non-zero exit) or the output contains ERROR=true, show the MESSAGE to the user and stop.
If the output contains NO_FRAGMENTS=true, inform the user there's nothing to release and stop.
Present the script output to the user:
CURRENT_VERSION)FRAGMENTS list with their types)PROPOSED_VERSION) based on bump type (BUMP_TYPE)If SKIP_CI=true, inform the user that tagging HEAD would prevent the release workflow from running. Create a preparation commit:
git commit --allow-empty -m "chore: prepare release [version]"
git push origin HEAD
After confirmation:
git tag -a [version] -m "[Brief description summarizing the fragments]"
git push origin [version]
Show the user:
Once the release is tagged, the branches and worktrees whose work it contains are done. Run the read-only detection script bundled with this skill:
bash cleanup.sh
Interpret the output:
NOTHING_TO_CLEAN=true, tell the user there is nothing to clean and finish.WORKTREES, LOCAL_BRANCHES, and REMOTE_BRANCHES lists
and ask the user to confirm before deleting anything.This step is destructive — always show the full list and get explicit
confirmation first. Never touch the default branch (DEFAULT_BRANCH) or the
branch/worktree you are currently on; cleanup.sh already excludes them.
After confirmation, process the items in this order:
Remove each worktree (must come before deleting its branch — a branch checked out in a worktree cannot be deleted):
git worktree remove [worktree_path]
If a worktree has uncommitted changes git refuses; report it and skip rather
than using --force, unless the user explicitly asks.
Delete each local branch:
git branch -d [branch]
Use -d (not -D) as a safety net — it refuses unmerged branches. If it
refuses, surface the warning and ask before forcing with -D.
Delete each remote branch:
git push origin --delete [branch]
Finally, prune stale worktree metadata:
git worktree prune
v0.x), the minor digit is the compatibility boundary, so breaking fragments bump the minor and feature/bugfix fragments are patch releases; from 1.0 onward, standard semver applies (breaking→major, feature→minor, bugfix→patch). The analyze.sh output already reflects this.