Release mac app
macOS app release: Sparkle autoupdate, notarization, GitHub Release, Homebrew cask, closeout.From its SKILL.md
npx -y skills add mouadja02/skills --skill release-mac-appAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 9 stars9 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.2 KB, 507 tokens by cl100k_base, as published. Nobody here has run it
Mac App Release
Attribution: Sourced from steipete/agent-scripts by Peter Steinberger.
Use for Sparkle-updated macOS apps (menu bar apps, utilities, etc.).
Rules
- Work from the app repo.
- Read
.mac-release.env; it is the repo-owned release manifest. - Never print private key material.
- Prefer Keychain Sparkle signing.
SPARKLE_PRIVATE_KEY_FILEis an explicit override only.
Release Manifest (.mac-release.env)
Required fields:
MAC_RELEASE_APP_NAME- app nameMAC_RELEASE_REPO-owner/repoMAC_RELEASE_BUNDLE_ID- bundle identifierMAC_RELEASE_VERSION_FILE- path to version fileMAC_RELEASE_APPCAST- path to appcast XMLMAC_RELEASE_FEED_URL- public appcast feed URLMAC_RELEASE_DOWNLOAD_URL_PREFIX- download base URLMAC_RELEASE_APP_ZIP- app zip artifact nameMAC_RELEASE_PACKAGE_CMD- build/package command
Release Checklist
- appcast entry has URL, length, Sparkle signature
- downloaded enclosure verifies with Sparkle
- extracted app passes
codesign,spctl, andstapler validate - GitHub release has app zip + dSYM zip
- release notes match the changelog section
- after verified release, bump changelog to next patch
Unreleased
Key Commands
# Check app code signing
codesign -dv --verbose=4 /path/to/App.app
# Verify notarization
spctl -a -vv /path/to/App.app
# Verify stapling
xcrun stapler validate /path/to/App.app
# Check zip contents
unzip -l App.zip
# Sign appcast entry (Sparkle)
sign_update App.zip private_key.pem
1Password Integration
If the release requires secrets via 1Password:
- Set
MAC_RELEASE_OP_ITEM+MAC_RELEASE_OP_FIELDSin.mac-release.env - Secrets are read once via
opinside one persistent tmux session - Never expose or echo secret values
- Follow the
one-passwordskill for tmux session rules
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.