app-store-submission
App Store Submission
Shipping an iOS app from the command line: archive → export → upload → TestFlight → App Store review. The full CLI pipeline, ExportOptions.plist, signing approaches, App Store Connect API key auth, the pre-submission checklist, and a categorized rejection-reason checklist live in references/guide.md. This file is the decision and discipline layer — read it first, open the guide for exact flags and commands.
Scope: the automatable / CLI parts. Clicking through the App Store Connect web portal (typing metadata, picking a build, "Submit for Review") is noted where it matters but is not what this skill drives.
Dials
Set these explicitly at the start; they change what "correct" means.
SIGNING—automatic(default; Xcode-managed certs/profiles, needs-allowProvisioningUpdates+ API key on CI) ·manual(you install the Apple Distribution cert and name each profile in ExportOptions; required for shared CI signing infra / Fastlane match).UPLOAD—xcode-organizer(one-off manual ship via Xcode/Transporter) ·cli-api-key(default for CI;xcrun altool+ App Store Connect API key).STAGE—testflight(upload + processing + beta testers, no full review for internal) ·app-store(the version is also submitted to App Review with metadata + screenshots).
When to use
Building or reviewing any archive/export/upload pipeline, an ExportOptions.plist, a CI signing setup, or diagnosing why a build won't upload or got rejected by App Review. If the question is specifically about the privacy manifest, use privacy-manifest. If it's about generating release notes text, use ios-release-notes.