一键导入
bump-release
Use for release versioning: bump/cut/tag a release, bump version, create a release, changelog updates, or version tagging.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use for release versioning: bump/cut/tag a release, bump version, create a release, changelog updates, or version tagging.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use only when explicitly asked to archive/prune/compact/roll over checked tasks from TODO.md into `.ai/todos/TODO_UNTIL_YYYY_MM_DD.md`, leaving unchecked tasks.
Use only when explicitly invoked for Git commit workflows: stage intended changes, craft Conventional Prefix Format messages by default, Natural Language messages with --natural or configured repos, commit, and optionally --all, --staged, --deep, --close, or --push.
Use for dependency updates: update/bump deps, npm/pnpm/yarn/bun package upgrades, outdated checks, package.json updates, or taze.
Use for GitHub PR/issue/discussion workflows: create/update PRs or issues, post comments, start discussions; triggers include create/open PR, file/update issue, yeet.
Use to polish recently changed code: simplify for readability/maintainability and run a risk-profiled review that autonomously applies fixes. Default runs both passes; pass --simplify or --review for one. Covers code/PR review, audits, bug/security checks, reviewing diffs or changes, cleanup, refactoring, and reducing complexity.
Use for GitHub CLI automation: gh commands, repo info, workflow triggers, GitHub search, codespaces, PR status, issues, repo browsing, or command-line GitHub tasks.
| argument-hint | [packages...] [version] [--beta] [--dry-run] |
| disable-model-invocation | false |
| effort | high |
| model | opus |
| name | bump-release |
| user-invocable | true |
| description | Use for release versioning: bump/cut/tag a release, bump version, create a release, changelog updates, or version tagging. |
Release one package or several packages with version bumps, changelog entries, commits, and tags. Supports single-package repos, workspace monorepos, regular releases, beta releases, and dry runs.
packages: Optional monorepo package names or directories, such as evm or evm-safe. Omit in single-package repos.version: Optional explicit semver, such as 2.0.0. Only valid for one target package.--beta: Create or advance a -beta.X prerelease.--dry-run: Preview the release plan without modifying files, committing, or tagging.Run the bundled planner before manual inspection. It is read-only and gives one JSON fact base for package discovery, previous tags, scoped changed files, dependency edges, and dirty-tree status. In pnpm workspaces, it uses pnpm list -r --depth -1 --json when available and falls back to local workspace-glob discovery. Bun and npm-style package.json workspaces use the local glob discovery, including negative workspace patterns.
Resolve <skill-dir> from the loaded SKILL.md path:
node "<skill-dir>/scripts/plan-release.mjs" [--cwd <repo>] [--beta] [--dry-run] [--version <semver>] [--package <name-or-dir>]...
Map user arguments directly:
--package <selector>.--version <semver>.--beta and --dry-run when requested.If the helper exits 2, stop: the cwd is not a git repo or has no root package.json. If it exits 64, read the JSON errors when present, report the invalid arguments, and stop.
mode, packages, targets, previousTags, changedFiles, includedFiles, excludedFiles, dependencyEdges, needsSelection, and workingTree.workingTree.clean is false, stop and show the short status. Do not invoke the commit skill or commit unrelated work unless the user explicitly asks.needsSelection is true, ask the user which workspace packages to release. If package selectors are unknown or ambiguous, stop and ask for exact package names or directories.version was supplied for more than one target package, stop. Explicit versions are single-package only.version: use it as-is for a regular release; with --beta, append -beta.1 unless it already has a prerelease suffix.1.2.3: use 1.2.4-beta.1.1.2.3-beta.1: use 1.2.3-beta.2.1.2.3-beta.5: use 1.2.3.includedFiles and no dependency-range cascade, report that there are no relevant release changes and do not bump it.dependencyEdges to find workspace packages whose dependencies or peerDependencies point at bumped packages. Check ranges with a structured semver parser or package manager API when available, not ad hoc string comparison. If the new version is outside the declared range, update the range and add the dependent to the release plan. Treat dependency range widening as patch by default; treat peer dependency major changes as major unless the user confirms otherwise.--dry-run, print the package order, current versions, planned versions, changelog/tag/commit actions, dependency range updates, and skipped files. Stop before edits.references/common-changelog.md after the final package set is known. Use each target's includedFiles to bound diff inspection against its previousTags[package].tag. Include only production-impacting changes; for package.json, include dependencies and peerDependencies changes only, not devDependencies.CHANGELOG.md and package.json. For beta releases, skip CHANGELOG.md. Update any cascaded dependent ranges before committing the dependent release.justfile exists, inspect just --list and prefer the narrowest relevant write recipe; use broad recipes such as just full-write only when no narrower established recipe covers the touched files. Without a suitable recipe, use the repo's established formatter commands or leave formatting unchanged.docs: release <version>docs: release <package> <version>v<version> unless existing tags use bare semver.previousTags; default to <package-dir>@<version>.Regular releases must generate entries in CHANGELOG.md following references/common-changelog.md.
Changed, Added, Removed, Fixed.devDependencies.package.json has a files field, include only changes under those package files/directories, plus production dependency changes in package.json.Beta releases do not update changelogs.
| Script | Purpose |
|---|---|
scripts/plan-release.mjs | Read-only release discovery and scoped diff facts |
Planner output fields to use:
packages and targets: package identity, directory, name, version, files, dependency names, and peer dependency names.previousTags: per-package previous release tag and tag patterns used.changedFiles, includedFiles, excludedFiles: scoped file lists for changelog and no-op decisions.dependencyEdges: workspace dependency and peer dependency relationships.workingTree: dirty-tree status that must be clean before release edits.needsSelection and errors: package-selection or argument problems to resolve before proceeding.# Regular release
/bump-release
# Preview without writes
/bump-release --dry-run
# Beta release
/bump-release --beta
# Monorepo package release
/bump-release evm
# Multi-package monorepo release
/bump-release evm evm-safe
# Explicit single-package version
/bump-release 2.0.0
# Explicit beta version
/bump-release 2.0.0-beta.1
| Current Version | Release Type | New Version |
|---|---|---|
1.2.3 | Regular | 1.2.4 (patch) |
1.2.3 | Beta | 1.2.4-beta.1 |
1.2.3-beta.1 | Beta | 1.2.3-beta.2 |
1.2.3-beta.5 | Regular | 1.2.3 |
1.2.3 | 2.0.0 | 2.0.0 |
1.2.3 | 2.0.0 + Beta | 2.0.0-beta.1 |
references/common-changelog.md - Read only for regular releases after the final stable release package set is known.