| name | release |
| description | Use when preparing a new version release - generates changelog, updates version, creates tags and GitHub release |
Create release notes and prepare for a new version release.
$ARGUMENTS
Step 1: Review Changes
Review git history since last release to understand what changed:
git log v<last-version>..HEAD --oneline
git diff v<last-version>..HEAD --stat
Step 2: Determine Version Bump
Follow semantic versioning (MAJOR.MINOR.PATCH):
- MAJOR: Breaking changes to API or core behavior
- MINOR: New features, backward-compatible
- PATCH: Bug fixes, documentation updates
Step 3: Update Version
Update version in pyproject.toml:
[project]
version = "X.Y.Z"
Step 4: Generate Release Notes
Create a summary of changes organized by category:
Added
- New features and capabilities
Changed
- Changes to existing functionality
Fixed
Deprecated
- Features marked for removal
Removed
Step 5: Update CHANGELOG.md
Add new section at the top:
## [X.Y.Z] - YYYY-MM-DD
### Added
- Feature 1
- Feature 2
### Changed
- Change 1
### Fixed
- Fix 1
Step 6: Commit Version Changes
git add pyproject.toml CHANGELOG.md
git commit -m "chore: bump version to X.Y.Z"
Step 7: Create Git Tag
git tag -a vX.Y.Z -m "Release version X.Y.Z"
git push origin main --tags
Step 8: Create GitHub Release
- Go to GitHub repository
- Click "Releases" → "Draft a new release"
- Select tag: vX.Y.Z
- Title: "Release X.Y.Z"
- Copy content from CHANGELOG.md for this version
- Publish release
Checklist