원클릭으로
version-bump
Prepare a new Xamal version locally — bump @version in mix.exs, roll the CHANGELOG.md
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Prepare a new Xamal version locally — bump @version in mix.exs, roll the CHANGELOG.md
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | version-bump |
| description | Prepare a new Xamal version locally — bump @version in mix.exs, roll the CHANGELOG.md |
| metadata | {"version":"1.0.0"} |
Prepare the repository for a new release locally. This skill never commits,
tags, pushes, or publishes — it only edits files and verifies them. Use the
release skill for the privileged steps (those need push rights / HEX_API_KEY).
0.3.3). If the user didn't give one, infer from the
unreleased changes and SemVer, then confirm:
0.3.2 → 0.3.3)0.3.2 → 0.4.0)0.3.2 → 1.0.0), or minor while 0.xmix.exs (@version "...").Confirm the repo is clean and current. Run git fetch and check the
working tree is clean and the local branch is not behind its remote. If the
remote has moved, stop and tell the user to integrate first — tagging a stale
commit is the failure mode this skill exists to prevent.
Bump @version in mix.exs. Change only the @version "..." attribute
(line ~4). Everything else (package(), docs(), source_ref) is derived
from it — do not touch those.
Roll the changelog. In CHANGELOG.md:
## [Unreleased] heading to ## [x.y.z].## [Unreleased] section above it (so contributors always
have a target for the next cycle).[x.y.z]: https://github.com/dmkenney/xamal/releases/tag/vx.y.z### Added/Changed/Fixed/Removed,
no dates). Do not switch formats.## [Unreleased] is empty, draft entries from
git log <prev-tag>..HEAD --oneline and the PR titles, then ask the user to
review them. Never invent user-facing notes for internal/CI-only commits
without flagging them.Verify the wiring is still correct (these are derived, not edited — confirm they didn't drift):
README.md install snippet uses a ~> constraint
(e.g. {:xamal, "~> 0.3", ...}). It should only change on a major/minor
boundary that moves the constraint, never on a patch. Leave it alone unless
the new version crosses that boundary.mix.exs docs() source_ref: "v#{@version}" and package() links still
point at the right places (they're derived — just sanity-check).Run mix ci. It must pass clean (credo, architecture policy, dialyzer 0
errors, all tests). If it fails, stop and report — do not proceed.
Report the two files changed (mix.exs, CHANGELOG.md), the version
delta, and the changelog section that will become the release notes. Then hand
off: tell the user the prep is done and the release skill (or a maintainer)
handles commit → push → tag → publish.
git commit, git tag, git push, or mix hex.publish.package()/docs() directly or add a maintainers: field
(Hex uses package owners via mix hex.owner, not the deprecated field).~> constraint on a patch release.