Prepare Release
Prepare and validate release packages with comprehensive testing, documentation, and automation
Before you use this component
This is a third-party source bundle, not an installation into your account. UI Discovery has checked the available redistribution license evidence; runtime behavior has not been tested. Review all files, use a disposable project first, and do not enable scripts or hooks until you understand their permissions.
Some integrations require separately installed software, API keys or paid services. Credentials and subscriptions are not included. These are Claude Code resources; other clients may require adaptation.
Extract the ZIP into a temporary folder, inspect its entry file and supporting resources, then follow the original instructions. Do not overwrite an existing project configuration blindly. Keep the bundled license and attribution notices.
- Source publisher
- Claude Code Templates
- Creator supplied by source
- Not listed in source
- Pinned source version
- a344359459263d73d8948651c789244093c02e4e
- License evidence
- LICENSE
Source preview
cli-tool/components/commands/deployment/prepare-release.md
---
allowed-tools: Read, Write, Edit, Bash
argument-hint: [version-type] | patch | minor | major | --pre-release | --hotfix
description: Prepare and validate release packages with comprehensive testing, documentation, and automation
---
# Release Preparation
Prepare and validate release: $ARGUMENTS
## Current Release Context
- Current version: !`git describe --tags --abbrev=0 2>/dev/null || echo "No previous releases"`
- Package version: @package.json or @setup.py or @pyproject.toml or @go.mod (if exists)
- Unreleased changes: !`git log $(git describe --tags --abbrev=0)..HEAD --oneline 2>/dev/null | wc -l || echo "All commits"`
- Branch status: !`git status --porcelain | wc -l || echo "0"` uncommitted changes
- Build status: !`npm test 2>/dev/null || python -m pytest 2>/dev/null || go test ./... 2>/dev/null || echo "Test framework detection needed"`
## Task
Systematic release preparation: $ARGUMENTS
1. **Release Planning and Validation**
- Determine release version number (semantic versioning)
- Review and validate all features included in release
- Check that all planned issues and features are complete
- Verify release criteria and acceptance requirements
2. **Pre-Release Checklist**
- Ensure all tests are passing (unit, integration, E2E)
- Verify code coverage meets project standards
- Complete security vulnerability scanning
- Perform performance testing and validation
- Review and approve all pending pull requests
3. **Version Management**
```bash
# Check current version
git describe --tags --abbrev=0
# Determine next version (semantic versioning)
# MAJOR.MINOR.PATCH
# MAJOR: Breaking changes
# MINOR: New features (backward compatible)
# PATCH: Bug fixes (backward compatible)
# Example version updates
# 1.2.3 -> 1.2.4 (patch)
# 1.2.3 -> 1.3.0 (minor)
# 1.2.3 -> 2.0.0 (major)
```
4. **Code Freeze and Branch Management**
```bash
# Create release branch from main
git checkout main
git pull origin main
git checkout -b release/v1.2.3
# Alternative: Use main branch directly for smaller releases
# Ensure no new features are merged during release process
```
5. **Version Number Updates**
- Update package.json, setup.py, or equivalent version files
- Update version in application configuration
- Update version in documentation and README
- Update API version if applicable
```bash
# Node.js projects
npm version patch # or minor, major
# Python projects
# Update version in setup.py, __init__.py, or pyproject.toml
# Manual version update
sed -i 's/"version": "1.2.2"/"version": "1.2.3"/' package.json
```
6. **Changelog Generation**
```markdown
# CHANGELOG.md
## [1.2.3] - 2024-01-15
### Added
- New user authentication system
- Dark mode support for UI
- API rate limiting functionality
### Changed
- Improved database query performance
- Updated user interface design
- Enhanced error handling
### Fixed
- Fixed memory leak in background tasks
- Resolved issue with file upload validation
- Fixed timezone handling in date calculations
### Security
- Updated dependencies with security patches
- Improved input validation and sanitization
```
7. **Documentation Updates**
- Update API documentation with new endpoints
- Revise user documentation and guides
- Update installation and deployment instructions
- Review and update README.md
- Update migration guides if needed
8. **Dependency Management**
```bash
# Update and audit dependencies
npm audit fix
npm update
# Python
pip-audit
pip freeze > requirements.txt
# Review security vulnerabilities
npm audit
snyk test
```
9. **Build and Artifact Generation**
```bash
# Clean build environment
npm run clean
rm -rf dist/ build/
# Build production artifacts
npm run build
# Verify build artifacts
ls -la dist/
# Test built artifacts
npm run test:build
```
10. **Testing and Quality Assurance**
- Run comprehensive test suite
- Perform manual testing of critical features
- Execute regression testing
- Conduct user acceptance testing
- Validate in staging environment
```bash
# Run all tests
npm test
npm run test:integration
npm run test:e2e
# Check code coverage
npm run test:coverage
# Performance testing
npm run test:performance
```
11. **Security and Compliance Verification**
- Run security scans and penetration testing
- Verify compliance with security standards
- Check for exposed secrets or credentials
- Validate data protection and privacy measures
12. **Release Notes Preparation**
```markdown
# Release Notes v1.2.3
## 🎉 What's New
- **Dark Mode**: Users can now switch to dark mode in settings
- **Enhanced Security**: Improved authentication with 2FA support
- **Performance**: 40% faster page load times
## 🔧 Improvements
- Better error messages for form validation
- Improved mobile responsiveness
- Enhanced accessibility features
## 🐛 Bug Fixes
- Fixed issue with file downloads in Safari
- Resolved memory leak in background tasks
- Fixed timezone display issues
## 📚 Documentation
- Updated API documentation
- New user onboarding guide
- Enhanced troubleshooting section
## 🔄 Migration Guide
- No breaking changes in this release
- Automatic database migrations included
- See [Migration Guide](link) for details
```
13. **Release Tagging and Versioning**
```bash
# Create annotated tag
git add .
git commit -m "chore: prepare release v1.2.3"
git tag -a v1.2.3 -m "Release version 1.2.3
Features:
- Dark mode support
- Enhanced authentication
Bug fixes:
- Fixed file upload issues
- Resolved memory leaks"
# Push tag to remote
git push origin v1.2.3
git push origin release/v1.2.3
```
14. **Deployment Preparation**
- Prepare deployment scripts and configurations
- Update environment variables and secrets
- Plan deployment strategy (blue-green, rolling, canary)
- Set up monitoring and alerting for release
- Prepare rollback procedures
15. **Staging Environment Validation**
```bash
# Deploy to staging
./deploy-staging.sh v1.2.3
# Run smoke tests
npm run test:smoke:staging
# Manual validation checklist
# [ ] User login/logout
# [ ] Core functionality
# [ ] New features
# [ ] Performance metrics
# [ ] Security checks
```
16. **Production Deployment Planning**
- Schedule deployment window
- Notify stakeholders and users
- Prepare maintenance mode if needed
- Set up deployment monitoring
- Plan communication strategy
17. **Release Automation Setup**
```yaml
# GitHub Actions Release Workflow
name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
- name: Build
run: npm run build
- name: Create Release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
```
18. **Communication and Announcements**
- Prepare release announcement
- Update status page and documentation
- Notify customers and users
- Share on relevant communication channels
- Update social media and marketing materials
19. **Post-Release Monitoring**
- Monitor application performance and errors
- Track user adoption of new features
- Monitor system metrics and alerts
- Collect user feedback and issues
- Prepare hotfix procedures if needed
20. **Release Retrospective**
- Document lessons learned
- Review release process effectiveness
- Identify improvement opportunities
- Update release procedures
- Plan for next release cycle
**Release Types and Considerations:**
**Patch Release (1.2.3 → 1.2.4):**
- Bug fixes only
- No new features
- Minimal testing required
- Quick deployment
**Minor Release (1.2.3 → 1.3.0):**
- New features (backward compatible)
- Enhanced functionality
- Comprehensive testing
- User communication needed
**Major Release (1.2.3 → 2.0.0):**
- Breaking changes
- Significant new features
- Migration guide required
- Extended testing period
- User training and support
**Hotfix Release:**
```bash
# Emergency hotfix process
git checkout main
git pull origin main
git checkout -b hotfix/critical-bug-fix
# Make minimal fix
git add .
git commit -m "hotfix: fix critical security vulnerability"
# Fast-track testing and deployment
npm test
git tag -a v1.2.4-hotfix.1 -m "Hotfix for critical security issue"
git push origin hotfix/critical-bug-fix
git push origin v1.2.4-hotfix.1
```
Remember to:
- Test everything thoroughly before release
- Communicate clearly with all stakeholders
- Have rollback procedures ready
- Monitor the release closely after deployment
- Document everything for future releasesPreview capped at 60,000 characters. Download the bundle for every original file and notice.
Read the redistribution license
MIT License Copyright (c) 2025 Daniel (San) Ávila Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Bundle SHA-256: 747e053b8051e150bdd9de41654dd43285d9df2e3aa6d3bfcc4f3d1e0daa8c68. Files are served as downloads and are never executed by this page.