con un clic
release-engineering
// Manage the full software release process, including version bumps, changelogs, Git tags, and GitHub releases.
// Manage the full software release process, including version bumps, changelogs, Git tags, and GitHub releases.
| name | release-engineering |
| description | Manage the full software release process, including version bumps, changelogs, Git tags, and GitHub releases. |
When performing release engineering, always follow these steps:
Verify the build is clean — run the project's standard build command from a clean state to confirm everything compiles and passes CI checks before tagging.
Determine the release type — review all unreleased commits since the last tag and classify the release as major, minor, or patch following Semantic Versioning. Present the recommendation to the user and confirm before proceeding.
Update the version — bump the version in the project's version manifest(s) (e.g. Cargo.toml, package.json, or equivalent) to match the new release version.
Update CHANGELOG.md — add a new version entry at the top following the Keep a Changelog format. Group changes under Added, Changed, Fixed, Removed, or Security as appropriate. Include all notable changes since the previous release.
Commit the release — stage the version manifest(s) and CHANGELOG.md together and commit with the message chore: release vX.Y.Z.
Tag the release — create an annotated Git tag (e.g., git tag -a v1.2.3 -m "v1.2.3") and push both the commit and the tag to the remote (git push && git push --tags).
Create a GitHub release — use gh release create vX.Y.Z --title "vX.Y.Z" --notes "..." with the corresponding CHANGELOG.md section as the release notes. Note: use --notes (not --body) for the release description.