Bumps versions in package.json per semantic versioning, updates CHANGELOG.md from git diffs/PRs (skips for betas), formats via justfile if present, commits changes, and creates git tags. Handles monorepos, explicit versions, beta releases, dry-runs.
npx claudepluginhub joshuarweaver/cascade-code-general-misc-1 --plugin paulrberg-agent-skillsThis skill uses the workspace's default tool permissions.
Support for both regular and beta releases.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Support for both regular and beta releases.
version: Optional explicit version to use (e.g., 2.0.0). When provided, skips automatic version inference--beta: Create a beta release with -beta.X suffix--dry-run: Preview the release without making any changes (no file modifications, commits, or tags)package.json in the current working directory first; if not found, ask which package to release. All file paths (CHANGELOG.md, package.json, justfile) are relative to the package directory.CHANGELOG.md file with all changes since the last version release (skip this step for beta releases).package.json:
-beta.X suffix (e.g., 1.2.3-beta.1)justfile exists in the repository, run just full-write to ensure CHANGELOG.md and package.json are properly formattedgit tag -a v<version> -m "<version>"Note: When --dry-run flag is provided, display what would be done without making any actual changes to files, creating commits, or tags.
Check for arguments - Determine if version was provided, if this is a beta release (--beta), and/or dry-run (--dry-run)
Check for clean working tree - Run git status --porcelain to verify there are no uncommitted changes unrelated to this release. If there are, run the commit skill to commit them before proceeding
Write Changelog - Examine diffs between the current branch and the previous tag to write Changelog. Then find
relevant PRs by looking at the commit history and add them to each changelog (when available). If package.json contains
a files field, only include changes within those specified files/directories. If no files field exists, include all
changes except test changes, CI/CD workflows, and development tooling
Follow format - Consult references/common-changelog.md for the Common Changelog specification
Check version - Get current version from package.json
Bump version - If version argument provided, use it directly. Otherwise, if unchanged since last release, increment per Semantic Versioning rules:
For regular releases:
For beta releases (--beta flag):
-beta.1 to the version-beta.1 → -beta.2)When unsure — If the changes are ambiguous (e.g., a new feature that may also break consumers, or a mix of fixes and features), use AskUserQuestion to let the user decide the semver level:
<summary>. Which release level?"Use the user's choice and skip step 7
Confirm version - When the version was confidently inferred (no explicit version argument), use AskUserQuestion to confirm before proceeding:
<current> → <inferred>?"If the user picks an alternative, use that version for the remaining steps. Skip this step when --dry-run is active (show the inferred version in the preview instead)
When --beta flag is provided in the $ARGUMENTS
version provided:
-beta.1package.json and determine beta version:
1.2.3: Create 1.2.4-beta.1 (increment patch + beta.1)1.2.3-beta.1: Create 1.2.3-beta.2 (increment beta number)1.2.3-beta.5: Create 1.2.3-beta.6 (increment beta number)v1.2.4-beta.1)For regular releases only, generate changelog entries in CHANGELOG.md following the format and writing guidelines in references/common-changelog.md. Use the Changed, Added, Removed, Fixed categories (in that order). Every entry must begin with a present-tense verb in imperative mood.
For regular releases only (changelog generation is skipped for beta releases):
package.json contains a files field, only include changes to files/directories specified in that array. All other codebase changes should be excluded from the CHANGELOGfiles field exists, exclude test changes, CI/CD workflows, and development tooling# Create a regular patch/minor/major release
/bump-release
# Preview what a regular release would do
/bump-release --dry-run
# Create a beta release with -beta.X suffix
/bump-release --beta
# Preview what a beta release would do
/bump-release --beta --dry-run
# Specify exact version
/bump-release 2.0.0
# Specify exact beta version
/bump-release 2.0.0-beta.1
# Combine with flags
/bump-release 2.0.0 --dry-run
| 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 — Common Changelog format and writing guidelines