App Store Preflight is a skill for AI coding agents that runs pre-submission checks on iOS and macOS projects. It scans the Xcode project, source code, metadata, and configuration files and flags patterns that commonly lead to App Store Review rejections, then reports findings with severity, affected files, and resolution steps.
The skill works with the asc CLI and the ASC CLI Skills to pull App Store Connect metadata in a canonical JSON layout. Its workflow is: identify the app type and load the matching checklist, pull metadata with asc metadata pull, scan against the rejection rules, report, then apply fixes and re-run the affected checks. New rules are added as markdown files that state the guideline, severity, category, detection method, and resolution.
| Rule category | Example checks | Guideline |
|---|---|---|
| Metadata | Incomplete review notes, competitor brand names, Apple trademark misuse, China storefront AI references, device frames in previews, missing ToS/EULA links | 2.1, 2.3.1, 5.2.5, 5, 2.3.4, 3.1.2 |
| Subscriptions | Missing terms or privacy policy, monthly price shown more prominently than the billed amount | 3.1.2 |
| Privacy | Requiring irrelevant personal data, missing PrivacyInfo.xcprivacy | 5.1.1 |
| Design | Asking for name or email after Sign in with Apple, WebView wrappers and apps with fewer than three screens | 4.0, 4.2 |
| Entitlements | Unused entitlements in the Xcode project | 2.4.5(i) |
Features
- Guideline index: a reference of 100+ App Store Review Guidelines
- App-type checklists: ten checklists covering all apps, subscriptions and IAP, social and UGC, kids, health and fitness, games, macOS, AI apps, crypto and finance, and VPN
- Metadata pull: reads App Store Connect metadata through the asc CLI or the asc-metadata-sync skill
- Rule scanning: rules for metadata, subscriptions, privacy, design, and entitlements
- Reporting: findings list severity, affected files, and resolution steps
- Autofix and validate: applies fixes and re-runs the affected checks
- Extensible rules: new rules are markdown files in the rules directory
