Skills

Release Swift

Cut a release of OpenUsage (Swift menu-bar app): pick a version, generate a categorized...

Install

npx skills add robinebers/openusage --skill release-swift -g -a claude-code -y
Repository
robinebers/openusage4.5k
Category
Mobile
Updated
3d ago
License
MIT
Context cost
Mediumabout 1,570 tokens
Runs scripts
No, instructions only

What it does

Cut a release of OpenUsage (Swift menu-bar app): pick a version, generate a categorized changelog, tag from `main`, and publish the GitHub Release with notes. Use to ship an Early Access beta or a stable release.

Release Swift

Pushing a v* tag on main runs .github/workflows/release.yml, which builds, signs, notarizes, attaches OpenUsage-<version>.dmg to the GitHub Release, and updates the Sparkle appcast.xml on gh-pages. CI creates the release with an EMPTY body, so this skill generates the changelog, records it in CHANGELOG.md, and publishes the notes onto the release.

Channels

  • Beta (Early Access): suffixed tag like v0.7.1-beta.1. Marked a GitHub pre-release and added to Sparkle's beta channel. Only users with Early Access enabled get it; GitHub "Latest" is untouched.
  • Stable: plain tag like v0.7.1. Marked non-prerelease, becomes GitHub "Latest", and ships to everyone.

The tag IS the version: v0.7.1-beta.1 becomes CFBundleShortVersionString = 0.7.1-beta.1, and CFBundleVersion is the git commit count. There are no version files to bump.

Cutting a release

1. Choose the version

Next number in the current lane (default bump: patch). Beta builds add a -beta.N suffix. Confirm with the owner before proceeding.

2. Generate the changelog

Collect commits since the previous release in the same channel and categorize each:

  • Stable cut: span from the last stable tag to this one (e.g. v0.7.0...v0.7.1), so the notes roll up the entire beta series plus any post-beta commits. Never start a stable changelog at the last beta, that would omit every beta in the lane.
  • Beta cut: span from the previous tag (the prior beta, or the last stable if it's the first beta in a lane) to this one.
Commit prefixCategory
feat, feature, or starts with "Add"New Features
fix or starts with "Fix"Bug Fixes
refactor, enhanceRefactor
chore, style, docs, perf, test, ci, buildChores
UncategorizedBug Fixes

Author attribution (required on every entry):

Read the whole SKILL.md on GitHub

More in Mobile