Agent skill · software engineering · sickn33
macos-spm-app-packaging
Scaffold, build, sign, and package SwiftPM macOS apps without Xcode projects.
Why this skill is useful
Adds specific scripts and workflows for packaging and notarizing SwiftPM macOS apps that are not commonly documented.
What it needs
Requires swift installed locally. About 3k tokens when loaded. Last updated 2026-08-07. 44,571 stars on the source repository.
What this skill does
macOS SwiftPM App Packaging (No Xcode) Overview Bootstrap a complete SwiftPM macOS app folder, then build, package, and run it without Xcode. Use assets/templates/bootstrap/ for the starter layout and references/packaging.md + references/release.md for packaging and release details. When to Use When the user needs a SwiftPM-based macOS app without relying on an Xcode project. When you need packaging, signing, notarization, or appcast guidance for a SwiftPM app. Two-Step Workflow 1) Bootstrap the project folder Copy assets/templates/bootstrap/ into a new repo. Rename MyApp in Package.swift, Sources/MyApp/, and version.env. Customize APPNAME, BUNDLEID, and versions. 2) Build, package, and run the bootstrapped app Copy scripts from assets/templates/ into your repo (for example, Scripts/). Build/tests: swift build and swift test. Package: Scripts/packageapp.sh. Run: Scripts/compileandrun.sh (preferred) or Scripts/launch.sh. Release (optional): Scripts/sign-and-notarize.sh and Scripts/makeappcast.sh. Tag + GitHub release (optional): create a git tag, upload the zip/appcast to the GitHub release, and publish. Minimum End-to-End Example Shortest path from bootstrap to a running app: Validation Checkpoints Run these after key steps to catch failures early before proceeding to the next stage. After packaging (Scripts/packageapp.sh): After signing (Scripts/sign-and-notarize.sh or ad-hoc dev signing): After notarization and stapling: Common Notarization Failures Symptom Likely Cause Recovery --- --- --- The software asset has already been uploaded Duplicate submission for same version Bump BUILDNUMBER in version.env and repackage. Package Invalid: Invalid Code Signing Entitlements Entitlements in .entitlements file don't match provisioning Audit entitlements against Apple's allowed set; remove unsupported keys. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills sickn33/macos-spm-app-packaging--270977