release
Original:🇨🇳 Chinese
Translated
3 scripts
Automate the version release process of projects, including version number auto-increment, ChangeLog extraction and aggregation, code commit, tagging, and pushing to remote repositories.
1installs
Sourcejustlookatnow/pt_mate
Added on
NPX Install
npx skill4agent add justlookatnow/pt_mate releaseTags
Translated version includes tags in frontmatterSKILL.md Content (Chinese)
View Translation Comparison →Release Skill
This Skill is designed to provide a standardized release process. It automatically handles tedious operations through scripts and uses AI to summarize user-perceivable changes.
Directory Structure
- : Automatically updates the version number in
scripts/bump_version.py.pubspec.yaml - : Extracts Git commit records since the last release.
scripts/get_commits.py - : Formats the release log template.
scripts/format_release.py
Usage Process
-
Preparation Phase
- Check if the current branch is the release branch (usually master/main).
- Ensure the workspace is clean (no uncommitted changes).
-
Version Number Update
- Run .
python3 scripts/bump_version.py - If a version number is provided by the user, use the specified one; otherwise, the script will automatically increment the patch version number based on the current version.
- Run
-
Generate Release Log
- Run to get raw commit records.
python3 scripts/get_commits.py - Provide the records to AI, and summarize user-perceivable changes according to the definition in .
scripts/format_release.py - The change categories should include: ✨New Features, 🐛Bug Fixes, 🔧Performance Optimizations, 📋Others. Architecture optimizations and technical details do not need to be included in the user-facing log.
- Run
-
Commit and Tag
- Commit the changes: .
release: {version number}\n\n{release log content} - Create a tag: .
v{version number}
- Commit the changes:
-
Push
- Push the code and tags to the remote repository: .
git push origin {branch} --tags
- Push the code and tags to the remote repository:
Notes
- Commit messages must use actual line breaks instead of strings.
\n - Confirm the release log content before performing the Commit operation.