# App Store Preflight Skills

Scan an iOS/macOS Xcode project for common App Store rejection patterns before submission.

- Repository: https://github.com/truongduy2611/app-store-preflight-skills (1407 stars)
- Category: Design
- License: MIT
- Last updated: 2026-10-17
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -g -a claude-code -y`
Codex: `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -g -a codex -y`
Cursor: `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -g -a cursor -y`
Gemini CLI: `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -g -a gemini-cli -y`

## Description

Scan an iOS/macOS Xcode project for common App Store rejection patterns before submission. Use when preparing an app for App Store review, after receiving a rejection from Apple, or when auditing metadata, subscriptions, privacy manifests, entitlements, or design compliance. Integrates with the asc CLI for metadata inspection.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# App Store Preflight Skill

Run pre-submission checks on your iOS/macOS project to catch common App Store rejection patterns.

## Prerequisites

- **asc CLI**, Install via Homebrew: `brew install asc` ([App-Store-Connect-CLI](https://github.com/rudrankriyam/App-Store-Connect-CLI))
- **ASC CLI Skills**, [app-store-connect-cli-skills](https://github.com/rudrankriyam/app-store-connect-cli-skills) for `asc` usage patterns
- **jq**, Optional, but used by some JSON-inspection examples in the rule docs

## Step 1: Identify App Type → Load Checklist

Determine which guidelines apply by loading the relevant checklist from `references/guidelines/by-app-type/`. Always start with `all_apps.md`, then add the app-type-specific one:

| App Type | Checklist |
|----------|-----------|
| Every app | `references/guidelines/by-app-type/all_apps.md` |
| Subscriptions / IAP | `references/guidelines/by-app-type/subscription_iap.md` |
| Social / UGC | `references/guidelines/by-app-type/social_ugc.md` |
| Kids Category | `references/guidelines/by-app-type/kids.md` |
| Health & Fitness | `references/guidelines/by-app-type/health_fitness.md` |
| Games | `references/guidelines/by-app-type/games.md` |
| macOS | `references/guidelines/by-app-type/macos.md` |
| AI / Generative AI | `references/guidelines/by-app-type/ai_apps.md` |
| Crypto & Finance | `references/guidelines/by-app-type/crypto_finance.md` |
| VPN | `references/guidelines/by-app-type/vpn.md` |

Full guideline index: `references/guidelines/README.md`

## Step 2: Pull Metadata for Inspection

Pull the latest App Store metadata using the `asc` CLI:

```bash
# Pull canonical metadata JSON for the version you want to review
asc metadata pull --app "<APP_ID>" --version "<VERSION>" --dir ./metadata
```

`asc metadata pull` writes app info files to `./metadata/app-info/*.json` and
version-localization files to `./metadata/version/<VERSION>/*.json`.

The rest: https://github.com/truongduy2611/app-store-preflight-skills/blob/HEAD//SKILL.md
