| description | Bump version to next alpha and update dependencies after release. | |
|---|---|---|
| argument-hint |
|
|
| model | sonnet |
After a release, this command updates the project to the next alpha version and updates all dependencies within semver-compatible ranges.
$ARGUMENTS specifies the new alpha version (e.g., 26.1.0-alpha.0).
If no version is specified, automatically determine the next version options:
-
Read current version from root
package.json -
Parse the version: Extract
MAJOR.MINOR.PATCH(ignore any existing prerelease suffix) -
Generate three options for the user to choose from:
- Patch bump:
MAJOR.MINOR.(PATCH+1)-alpha.0(e.g.,26.1.1-alpha.0) - Minor bump:
MAJOR.(MINOR+1).0-alpha.0(e.g.,26.2.0-alpha.0) - Major bump:
(MAJOR+1).1.0-alpha.0(e.g.,27.1.0-alpha.0)
- Patch bump:
-
Use
AskUserQuestionto let the user select:
AskUserQuestion({
questions: [{
question: "Which version bump do you want for the next alpha release?",
header: "Version",
multiSelect: false,
options: [
{
label: "26.1.1-alpha.0 (Patch)",
description: "Patch version bump - for small fixes and updates"
},
{
label: "26.2.0-alpha.0 (Minor)",
description: "Minor version bump - for new features (Recommended)"
},
{
label: "27.1.0-alpha.0 (Major)",
description: "Major version bump - for breaking changes"
}
]
}]
})
Note: If the current version already has -alpha.N suffix, strip it before calculating the next versions.
- Ensure the version follows semver format with alpha suffix:
X.Y.Z-alpha.N - Example valid formats:
26.1.0-alpha.0,26.2.0-alpha.1
- Update the
versionfield in the root/package.jsonto the new alpha version
- This command propagates the version to all related files:
version.jsonindex.htmlmanifest.jsonreact/package.jsonpackages/backend.ai-ui/package.jsonelectron-app/package.json
Update dependencies in the following package.json files within semver-compatible ranges:
/packages/backend.ai-ui/package.json/react/package.json
Important Rules:
- Read
pnpm-workspace.yamlfirst to check the following settings:minimumReleaseAge: Minimum age in minutes for package versions (e.g., 10080 = 7 days)minimumReleaseAgeExclude: List of packages exempt from the minimum age rule
- Respect these settings when updating dependencies
- Use
pnpm updatewith appropriate flags for semver-compatible updates
Run pnpm install to update the lockfile with new dependency versions.
After updating dependencies, verify everything works correctly:
- Run
pnpm installto ensure no errors in dependency resolution - Check all package.json files have the correct version
- Note any peer dependency warnings
- Run TypeScript type checking to detect any type errors caused by updated packages:
# Check TypeScript errors in react package
pnpm --prefix ./react run typecheck
# Check TypeScript errors in backend.ai-ui package
pnpm --prefix ./packages/backend.ai-ui run typecheck
# Or run tsc directly if typecheck script is not available
pnpm --prefix ./react exec tsc --noEmit
pnpm --prefix ./packages/backend.ai-ui exec tsc --noEmit-
If TypeScript errors occur, fix them before proceeding:
- Review the error messages to identify which updated packages caused the issue
- Common fixes include:
- Updating type definitions (
@types/*packages) - Adjusting code to match new API signatures
- Adding type assertions where needed
- Updating type definitions (
- Fix all errors before completing the version bump
-
Run build to ensure everything compiles:
pnpm run build# Update root package.json version (use Edit tool)
# Propagate version to all files
make versiontag
# Update dependencies in workspace packages
pnpm update --recursive --latest --workspace
# Or update specific packages
cd react && pnpm update
cd packages/backend.ai-ui && pnpm update
# If engine constraints block:
pnpm update --ignore-engines
# Install to update lockfile
pnpm installAfter completion, provide a summary including:
- Version Update: Old version -> New version
- Files Updated: List of files modified by
make versiontag - Dependencies Updated: Summary of updated packages with version changes
- Peer Dependency Warnings: Any warnings encountered
- Next Steps: Suggest committing changes if everything looks good
User: /bump-alpha-version 26.1.0-alpha.0
Claude:
1. Updates package.json version to 26.1.0-alpha.0
2. Runs make versiontag
3. Updates dependencies in react/ and packages/backend.ai-ui/
4. Runs pnpm install
5. Runs typecheck + build
6. Provides summary of all changes
- Always verify the current version before updating
- Check git status before running to ensure a clean working directory
- This command does NOT create a commit - let the user decide when to commit
- If there are uncommitted changes, warn the user first