Auto Version Bump: - Automatically bumps version when PRs are merged to main - Detects version bump type from commit message: - feat: → minor bump (v0.1.0 → v0.2.0) - fix: → patch bump (v0.1.0 → v0.1.1) - feat!: → major bump (v0.1.0 → v1.0.0) - [alpha] → alpha bump (v0.1.0-alpha.1 → v0.1.0-alpha.2) - [beta] → beta bump - [rc] → rc bump - default → minor bump (if no type specified) Automatic Actions: - Updates VERSION file - Updates package.json version - Updates CHANGELOG.md with commit message - Creates git tag (e.g., v0.2.0) - Pushes changes back to main - Adds [skip ci] to prevent infinite loop Documentation: - Added VERSION_BUMP_GUIDE.md with examples - Clear commit message format guidelines - Manual override instructions Benefits: - No manual version bumping needed - Consistent versioning across the project - Automatic changelog updates - Git tags for every release - Follows semantic versioning conventions
2.1 KiB
2.1 KiB
Version Bump Guide
This workflow automatically bumps versions when PRs are merged to main.
How It Works
When you merge a PR to main, the version is automatically bumped based on your commit message:
Commit Message Format
Use conventional commits to control version bumping:
| Commit Message | Version Bump | Example |
|---|---|---|
feat: add feature |
Minor | v0.1.0 → v0.2.0 |
feat!: breaking change |
Major | v0.1.0 → v1.0.0 |
fix: bug fix |
Patch | v0.1.0 → v0.1.1 |
[alpha] message |
Alpha | v0.1.0-alpha.1 → v0.1.0-alpha.2 |
[beta] message |
Beta | v0.1.0-beta.1 → v0.1.0-beta.2 |
[rc] message |
RC | v0.1.0-rc.1 → v0.1.0-rc.2 |
| Any other message | Minor (default) | v0.1.0 → v0.2.0 |
Examples
# Feature (minor bump)
git commit -m "feat: add new agent capability"
# Result: v0.1.0 → v0.2.0
# Bug fix (patch bump)
git commit -m "fix: correct context loading"
# Result: v0.1.0 → v0.1.1
# Breaking change (major bump)
git commit -m "feat!: redesign agent API"
# Result: v0.1.0 → v1.0.0
# Alpha release
git commit -m "[alpha] improve prompt"
# Result: v0.1.0-alpha.1 → v0.1.0-alpha.2
# Default (minor bump)
git commit -m "improve documentation"
# Result: v0.1.0 → v0.2.0
What Happens Automatically
- ✅ Tests run (smoke tests for both agents)
- ✅ Version is bumped based on commit message
- ✅ CHANGELOG.md is updated with changes
- ✅ Git tag is created (e.g., v0.2.0)
- ✅ Changes are pushed back to main
- ✅ GitHub release can be created (optional)
Manual Override
If you want to bump version manually:
# Bump specific version type
npm run version:bump alpha
npm run version:bump beta
npm run version:bump rc
npm run version:bump patch
npm run version:bump minor
npm run version:bump major
# Commit and push
git add VERSION package.json CHANGELOG.md
git commit -m "chore: bump version to vX.Y.Z"
git tag vX.Y.Z
git push origin main --tags
Skipping Auto-Bump
Add [skip ci] to your commit message:
git commit -m "docs: update README [skip ci]"
This will skip both tests and version bumping.