From rudrankriyam-app-store-connect-cli-skills-17
Builds, archives, exports Xcode projects to iOS IPAs or macOS PKGs using xcodebuild and asc CLI, manages version/build numbers, and uploads to App Store Connect.
npx claudepluginhub ilderaj/agent-plugin-marketplace --plugin community--asc-cli-skillsThis skill uses the workspace's default tool permissions.
Use this skill when you need to build an app from source and prepare it for upload to App Store Connect.
Manages App Store Connect build lifecycle with asc CLI: find latest/next builds, track processing, publish to TestFlight/App Store, and expire old builds. Use for build retention or waiting on processing.
Automates iOS/macOS app deployment to App Store Connect using asc CLI: TestFlight builds, App Store submissions, metadata/screenshots uploads, certificates/profiles management, review status checks, and Xcode Cloud workflows.
Builds, tests, archives, and deploys Swift packages and Xcode projects for Apple platforms including iOS, macOS, tvOS. Manages simulators, physical devices, code signing, profiling, and distribution.
Share bugs, ideas, or general feedback.
Use this skill when you need to build an app from source and prepare it for upload to App Store Connect.
ascBefore archiving, prefer asc xcode version ... over manual pbxproj edits when you need to inspect or bump app versions.
asc xcode version view
asc xcode version edit --version "1.3.0" --build-number "42"
asc xcode version bump --type build
asc xcode version bump --type patch
Notes:
--project-dir "./MyApp" when you are not running from the project root.--target "App" for deterministic reads in multi-target projects.agvtool projects and modern MARKETING_VERSION / CURRENT_PROJECT_VERSION setups.xcodebuild clean archive \
-scheme "YourScheme" \
-configuration Release \
-archivePath /tmp/YourApp.xcarchive \
-destination "generic/platform=iOS"
xcodebuild -exportArchive \
-archivePath /tmp/YourApp.xcarchive \
-exportPath /tmp/YourAppExport \
-exportOptionsPlist ExportOptions.plist \
-allowProvisioningUpdates
A minimal ExportOptions.plist for App Store distribution:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>method</key>
<string>app-store-connect</string>
<key>teamID</key>
<string>YOUR_TEAM_ID</string>
</dict>
</plist>
asc builds upload --app "APP_ID" --ipa "/tmp/YourAppExport/YourApp.ipa"
xcodebuild archive \
-scheme "YourMacScheme" \
-configuration Release \
-archivePath /tmp/YourMacApp.xcarchive \
-destination "generic/platform=macOS"
xcodebuild -exportArchive \
-archivePath /tmp/YourMacApp.xcarchive \
-exportPath /tmp/YourMacAppExport \
-exportOptionsPlist ExportOptions.plist \
-allowProvisioningUpdates
macOS apps export as .pkg files. Upload with asc:
asc builds upload \
--app "APP_ID" \
--pkg "/tmp/YourMacAppExport/YourApp.pkg" \
--version "1.0.0" \
--build-number "123"
Notes:
--pkg automatically sets platform to MAC_OS..pkg uploads, --version and --build-number are required (they are not auto-extracted like IPA uploads).--wait if you want to wait for build processing to complete.Each upload requires a unique build number higher than previously uploaded builds.
In Xcode project settings:
CURRENT_PROJECT_VERSION - build number (e.g., "316")MARKETING_VERSION - version string (e.g., "2.2.0")Check existing builds:
asc builds list --app "APP_ID" --platform IOS --limit 5
-allowProvisioningUpdates flagmacOS requires ICNS format icons with all sizes:
The build number must be higher than any previously uploaded build. Increment it with asc xcode version bump --type build, or resolve a remote-safe number with asc builds next-build-number --app "APP_ID" --version "2.2.0" --platform IOS and then apply it with asc xcode version edit --build-number "NEXT_BUILD" before rebuilding.
xcodebuild -showBuildSettings to verify configurationasc-submission-health skill