From versioning
Alpha/beta/RC tagging patterns and GitHub pre-release workflows for managing pre-production releases. Use when creating alpha releases, beta releases, release candidates, managing pre-release branches, testing release workflows, or when user mentions pre-release, alpha, beta, RC, release candidate, or pre-production versioning.
How this skill is triggered — by the user, by Claude, or both
Slash command
/versioning:prerelease-versionsThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Pre-release version management patterns including alpha, beta, and release candidate (RC) tagging with GitHub pre-release workflows.
examples/alpha-workflow.mdexamples/beta-workflow.mdexamples/multi-prerelease-pipeline.mdexamples/rc-workflow.mdscripts/create-prerelease.shscripts/promote-prerelease.shscripts/test-prerelease.shtemplates/alpha-version-tag.templatetemplates/beta-version-tag.templatetemplates/github-prerelease-workflow.ymltemplates/prerelease-config.jsontemplates/rc-version-tag.templatePre-release version management patterns including alpha, beta, and release candidate (RC) tagging with GitHub pre-release workflows.
This skill provides comprehensive patterns for managing pre-release versions throughout the software development lifecycle. It supports semantic versioning pre-release identifiers (alpha, beta, rc) with GitHub Actions automation for safe pre-production testing.
Semantic versioning pre-release format:
<major>.<minor>.<patch>-<prerelease>.<number>
Examples:
1.0.0-alpha.1 - First alpha release1.0.0-alpha.2 - Second alpha release1.0.0-beta.1 - First beta release1.0.0-beta.2 - Second beta release1.0.0-rc.1 - First release candidate1.0.0-rc.2 - Second release candidate1.0.0 - Stable release (promoted from RC)Purpose: Internal testing, highly unstable, breaking changes expected
Characteristics:
When to use:
Purpose: External testing, feature complete but may have bugs
Characteristics:
When to use:
Purpose: Final pre-release testing, production ready unless critical bugs found
Characteristics:
When to use:
All scripts are located in scripts/ and provide functional pre-release management.
Create a new pre-release version with automatic version calculation.
Usage:
bash scripts/create-prerelease.sh <prerelease_type> <base_version>
Parameters:
prerelease_type: alpha, beta, or rcbase_version: Target stable version (e.g., 1.0.0)Example:
# Create first alpha release for version 1.0.0
bash scripts/create-prerelease.sh alpha 1.0.0
# Output: 1.0.0-alpha.1
# Create next alpha release
bash scripts/create-prerelease.sh alpha 1.0.0
# Output: 1.0.0-alpha.2
Features:
Promote a pre-release to the next stage or stable release.
Usage:
bash scripts/promote-prerelease.sh <current_version>
Promotion Path:
alpha.N → beta.1
beta.N → rc.1
rc.N → stable (removes pre-release identifier)
Example:
# Promote alpha to beta
bash scripts/promote-prerelease.sh 1.0.0-alpha.3
# Output: 1.0.0-beta.1
# Promote beta to RC
bash scripts/promote-prerelease.sh 1.0.0-beta.2
# Output: 1.0.0-rc.1
# Promote RC to stable
bash scripts/promote-prerelease.sh 1.0.0-rc.2
# Output: 1.0.0
Features:
Validate pre-release version format and readiness.
Usage:
bash scripts/test-prerelease.sh <version>
Validations:
Exit Codes:
0: All validations passed1: Format validation failed2: Consistency check failed3: Git tag conflict4: Changelog missingExample:
# Validate alpha release
bash scripts/test-prerelease.sh 1.0.0-alpha.1
# Validate RC release
bash scripts/test-prerelease.sh 1.0.0-rc.1
All templates are located in templates/ and provide production-ready configurations.
GitHub Actions workflow for automated pre-release creation and testing.
Location: templates/github-prerelease-workflow.yml
Features:
Trigger Branches:
alpha/* → Creates alpha releasesbeta/* → Creates beta releasesrelease/* → Creates RC releasesUsage:
# Copy to project
cp templates/github-prerelease-workflow.yml .github/workflows/prerelease.yml
# Customize as needed
vim .github/workflows/prerelease.yml
Git tag annotation template for alpha releases.
Location: templates/alpha-version-tag.template
Format:
Alpha Release v{VERSION}
🚧 INTERNAL TESTING ONLY
This is an unstable alpha release for internal testing.
Breaking changes are expected in future releases.
Changes:
{CHANGELOG}
Testing:
- [ ] Unit tests passed
- [ ] Integration tests passed
- [ ] Manual testing completed
DO NOT USE IN PRODUCTION
Git tag annotation template for beta releases.
Location: templates/beta-version-tag.template
Format:
Beta Release v{VERSION}
🧪 EARLY ACCESS
This is a beta release for early adopters and testing.
Features are complete but bugs may exist.
Changes:
{CHANGELOG}
Testing:
- [ ] All tests passing
- [ ] Performance benchmarks completed
- [ ] Documentation reviewed
- [ ] Known issues documented
Use with caution in production environments.
Git tag annotation template for release candidates.
Location: templates/rc-version-tag.template
Format:
Release Candidate v{VERSION}
✅ PRODUCTION READY (pending final validation)
This release candidate is considered stable and ready for production
unless critical issues are discovered during final testing.
Changes:
{CHANGELOG}
Validation:
- [x] All tests passing
- [x] Performance validated
- [x] Documentation complete
- [x] Security audit completed
- [ ] Production deployment tested
Expected stable release: {EXPECTED_DATE}
Configuration template for pre-release workflow settings.
Location: templates/prerelease-config.json
Structure:
{
"prerelease": {
"alpha": {
"branch_pattern": "alpha/*",
"auto_increment": true,
"testing_required": ["unit", "integration"],
"notification_channels": ["slack-dev"],
"retention_days": 30
},
"beta": {
"branch_pattern": "beta/*",
"auto_increment": true,
"testing_required": ["unit", "integration", "e2e"],
"notification_channels": ["slack-qa", "slack-dev"],
"retention_days": 90
},
"rc": {
"branch_pattern": "release/*",
"auto_increment": true,
"testing_required": ["unit", "integration", "e2e", "performance"],
"notification_channels": ["slack-releases", "slack-qa"],
"retention_days": 180
}
}
}
All examples are located in examples/ and demonstrate real-world workflows.
Complete alpha release workflow from creation to promotion.
Location: examples/alpha-workflow.md
Covers:
Complete beta release workflow including feedback integration.
Location: examples/beta-workflow.md
Covers:
Complete release candidate workflow to stable release.
Location: examples/rc-workflow.md
Covers:
Managing multiple concurrent pre-release tracks.
Location: examples/multi-prerelease-pipeline.md
Covers:
This skill supports versioning plugin commands:
--prerelease flagIf version already exists:
# Check existing tags
git tag -l "v1.0.0-*"
# Delete conflicting tag
git tag -d v1.0.0-alpha.1
# Recreate with correct number
bash scripts/create-prerelease.sh alpha 1.0.0
If promotion fails:
# Validate current version
bash scripts/test-prerelease.sh 1.0.0-alpha.3
# Check promotion path
# alpha.N → beta.1 → rc.1 → stable
# Force promotion if needed
bash scripts/promote-prerelease.sh 1.0.0-alpha.3 --force
If GitHub Actions workflow fails:
# Check workflow logs
gh run list --workflow=prerelease.yml
# View specific run
gh run view <run-id>
# Re-run failed jobs
gh run rerun <run-id>
If versions are out of sync:
# Check all version locations
bash scripts/test-prerelease.sh 1.0.0-beta.1
# Manual sync if needed
# Update VERSION file
echo '{"version": "1.0.0-beta.1"}' > VERSION
# Update package.json
npm version 1.0.0-beta.1 --no-git-tag-version
# Update pyproject.toml
sed -i 's/version = .*/version = "1.0.0-beta.1"/' pyproject.toml
npx claudepluginhub vanman2024/dev-lifecycle-marketplace --plugin versioningConfigures Google's release-please for automated versioning, changelog generation, and publishing via GitHub Actions using Conventional Commits.
Automates GitHub releases with gh CLI including semantic versioning, changelog generation from PRs, tagging, and asset management. Use for creating, editing, or verifying releases.
Manages git project releases: creates milestones, generates roadmaps, executes 9-stage pipeline with submodule support, closes releases. Yolo mode enables autonomous runs.