← ClaudeAtlas

release-macos-dmglisted

Release a macOS desktop app version through GitHub Releases, watch the GitHub Actions build until completion, download the macOS DMG asset, mount it, copy the app into /Applications, detach the image, launch the installed app, and verify the installed version. Use when the user asks to release a version, ship a beta, watch CI, download a DMG from GitHub Releases, install a macOS app artifact, or continue a release/install workflow.
AkaraChen/2code · ★ 24 · AI & Automation · score 64
Install: claude install-skill AkaraChen/2code
# Release macOS DMG ## Overview Run an end-to-end macOS app release/install loop: verify the intended version, create or use the release/tag, watch GitHub Actions, download the correct DMG, install it safely, and confirm the app launched. Prefer `gh` for GitHub operations. Do not rewrite unrelated local changes. Do not use destructive git commands. ## Inputs To Determine - Version/tag to release, for example `v2.4.1-beta5`. - Release workflow/run ID, if already known. - DMG asset pattern, usually `*aarch64.dmg` on Apple Silicon or `*x64.dmg` on Intel. - Installed app bundle name, for example `2code.app`. - Whether the user wants a new tag/release or only wants to continue watching/installing an existing release. Ask only if a required input cannot be inferred from repo files, recent commits, tags, release assets, or conversation history. ## Release Workflow 1. Inspect state before changing anything. ```bash git status --short git log --oneline -10 gh repo view --json nameWithOwner --jq .nameWithOwner ``` 2. Verify the app version file already matches the intended version. If changing a version is required, edit the project-specific version file minimally, run the project’s required checks, commit only intended files if the user asked to commit, then push/tag according to repo conventions. 3. Create or push the tag only when the release should be started and the user has asked for release/publish behavior. ```bash git tag vX.Y.Z-betaN git push origin vX.Y.Z-betaN `