Rulesync release-dry-run
Dry run for release: summarize changes since last release and suggest version bump.
install
source · Clone the upstream repo
git clone https://github.com/dyoshikawa/rulesync
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/dyoshikawa/rulesync "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.rulesync/skills/release-dry-run" ~/.claude/skills/dyoshikawa-rulesync-release-dry-run && rm -rf "$T"
manifest:
.rulesync/skills/release-dry-run/SKILL.mdsource content
This is a dry run command for release. It will summarize the changes since the last release and suggest the appropriate version bump based on semantic versioning.
Steps
-
Get the latest release tag.
- Run
to ensure all tags are available.git fetch --tags - Run
to get the latest tag.git describe --tags --abbrev=0 - Assign the result to $latest_tag.
- Run
-
Compare code changes between the latest tag and the current HEAD.
- Run
to get the commit list.git log ${latest_tag}..HEAD --oneline - Run
to get the file change statistics.git diff ${latest_tag}..HEAD --stat
- Run
-
Analyze the changes and create a summary in the following format:
## Changes Summary ### Commits since ${latest_tag} - List of commits with their messages ### Changed Files - Summary of file changes (added, modified, deleted) ### Change Categories - **Breaking Changes**: List any breaking changes (API changes, removed features, etc.) - **New Features**: List new features added - **Bug Fixes**: List bug fixes - **Other Changes**: List other changes (refactoring, documentation, tests, etc.) -
Based on the analysis, suggest the appropriate version bump following semantic versioning rules:
- MAJOR (X.0.0): Breaking changes that are not backward compatible
- Removed or renamed public APIs
- Changed behavior of existing features
- Dropped support for older Node.js versions
- MINOR (x.Y.0): New features that are backward compatible
- New CLI commands or options
- New configuration options
- New tool support
- PATCH (x.y.Z): Bug fixes and minor improvements
- Bug fixes
- Documentation updates
- Internal refactoring without API changes
- Dependency updates (unless they cause breaking changes)
- MAJOR (X.0.0): Breaking changes that are not backward compatible
-
Output the final recommendation in the following format:
## Version Bump Recommendation Current version: ${latest_tag} Recommended bump: MAJOR / MINOR / PATCH Suggested new version: vX.Y.Z ### Reasoning - Explain why this version bump is recommended based on the changes.
Note: This is a dry run only. No files will be modified and no commits will be made.