Agent skill

App Store Preflight Skills

by truongduy2611 in truongduy2611/app-store-preflight-skills

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

MITAuto-check passedMobile

Install App Store Preflight Skills

skills CLI
$ npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install truongduy2611/app-store-preflight-skills app-store-preflight-skills --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
app-store-preflight-skills
GitHub stars
1.4k
Token cost
~1.4k tokens
SKILL.md length
463 words
Files
32 (incl. references)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

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

  • Works in 5 steps: Identify App Type → Load Checklist → Pull Metadata for Inspection → Run Rejection Rule Checks → …
  • Preparing an app for App Store review
  • SKILL.md covers Prerequisites, Step 1: Identify App Type →…, Step 2: Pull Metadata for… and Step 3: Run Rejection Rule…, plus 4 more sections
  • Calls brew; needs ASC_KEY_ID and ASC_PRIVATE_KEY

What it does

App Store Preflight Skills is an agent skill from truongduy2611/app-store-preflight-skills. 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.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 36 other files, including reference files (for example `README.md`, `references/guidelines/README.md` and `references/guidelines/by-app-type/ai_apps.md`).

It sits in Mobile, covering App store release. It works with App Store Connect, macOS, iOS and Xcode. The repository describes itself as: AI agent skill to scan iOS/macOS projects for App Store rejection patterns before submission. The licence is MIT.

When your agent uses it

  • Preparing an app for App Store review
  • After receiving a rejection from Apple
  • Auditing metadata
  • Privacy manifests

Example prompts

  • “/app-store-preflight-skills”

Requirements

  • A credential in ASC_PRIVATE_KEY

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Identify App Type → Load Checklist
  2. Pull Metadata for Inspection
  3. Run Rejection Rule Checks
  4. Report Findings
  5. Autofix + Validate

What it can do on your machine

Read from SKILL.md and the folder at commit e52e007. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • brew

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • ASC_KEY_ID
    • ASC_PRIVATE_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

App Store Preflight Skills loads about 1.4k tokens when it runs, and up to ~20k if it reads all its reference files. Until then it costs about 89 tokens; SKILL.md has 463 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~89
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~20k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from truongduy2611/app-store-preflight-skills at commit e52e007, republished under its MIT licence (© truongduy2611). 463 words, ~1,385 tokens.

Download SKILL.mdSave it as .claude/skills/app-store-preflight-skills/SKILL.md (or your agent's skills folder). This skill also uses 31 other files; get the full folder from GitHub.
name
app-store-preflight-skills
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.
metadata.author
truongduy2611
metadata.version
1.0

App Store Preflight Skill

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

Prerequisites

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 TypeChecklist
Every appreferences/guidelines/by-app-type/all_apps.md
Subscriptions / IAPreferences/guidelines/by-app-type/subscription_iap.md
Social / UGCreferences/guidelines/by-app-type/social_ugc.md
Kids Categoryreferences/guidelines/by-app-type/kids.md
Health & Fitnessreferences/guidelines/by-app-type/health_fitness.md
Gamesreferences/guidelines/by-app-type/games.md
macOSreferences/guidelines/by-app-type/macos.md
AI / Generative AIreferences/guidelines/by-app-type/ai_apps.md
Crypto & Financereferences/guidelines/by-app-type/crypto_finance.md
VPNreferences/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.

Most rule examples below assume the canonical JSON layout written by asc metadata pull.

If you already have metadata in another layout (for example fastlane metadata/), either adapt the file-path examples to that structure or pull the canonical asc layout first.

Step 3: Run Rejection Rule Checks

For each category, load the relevant rule files from references/rules/ and inspect. Each rule contains: What to Check, How to Detect, Resolution, and Example Rejection.

CategoryRule Files
Metadatareferences/rules/metadata/*.md
Subscriptionreferences/rules/subscription/*.md
Privacyreferences/rules/privacy/*.md
Designreferences/rules/design/*.md
Entitlementsreferences/rules/entitlements/*.md

Step 4: Report Findings

Produce a summary report using this template:

markdown
## Preflight Report

### ❌ Rejections Found (N)
- [GUIDELINE X.X.X] Description of issue
  - File: path/to/offending/file
  - Fix: What to do

### ⚠️ Warnings (N)
- [GUIDELINE X.X.X] Potential issue

### ✅ Passed (N)
- [Category] All checks passed

Order by severity: rejections first, then warnings, then passed.

Show full SKILL.md (218 more words)Show less

Step 5: Autofix + Validate

Some issues can be auto-fixed:

  • Competitor terms → Suggest replacement text with competitor names removed
  • Metadata character limits → Show current vs. max length
  • Missing links → Generate template ToS/PP URLs

After applying any auto-fix, re-run the affected checks to confirm the fix resolved the violation. Only mark as resolved once the re-scan passes.

For issues requiring manual intervention (screenshots, UI redesign), provide clear instructions but do not auto-fix.

Gotchas

  • China storefront — Banned AI terms (ChatGPT, Gemini, etc.) are checked across ALL locales, not just zh-Hans. Apple checks every locale visible in the China storefront.
  • Privacy manifests — PrivacyInfo.xcprivacy is required even if your app doesn't call Required Reason APIs directly. Third-party SDKs (Firebase, Amplitude, etc.) that use UserDefaults or NSFileManager trigger this requirement transitively.
  • asc auth — asc metadata pull requires App Store Connect authentication. Run asc auth login first, or set ASC_KEY_ID, ASC_ISSUER_ID, and one of ASC_PRIVATE_KEY_PATH / ASC_PRIVATE_KEY / ASC_PRIVATE_KEY_B64. If you're unsure what asc is picking up, run asc auth doctor.
  • Subscription metadata — Apple requires ToS/PP links in BOTH the App Store description AND the in-app subscription purchase screen. Missing either one is a separate rejection.
  • macOS entitlements — Apple will ask you to justify every temporary exception entitlement (com.apple.security.temporary-exception.*). Remove entitlements you don't actively use.

Adding New Rules

Create a .md file in the appropriate references/rules/ subdirectory:

markdown
# Rule: [Short Title]
- **Guideline**: [Apple Guideline Number]
- **Severity**: REJECTION | WARNING
- **Category**: metadata | subscription | privacy | design | entitlements

## What to Check
## How to Detect
## Resolution
## Example Rejection

© truongduy2611, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 31 other files (references) in the repository root of truongduy2611/app-store-preflight-skills.

  • SKILL.md
  • LICENSE
  • README.md
  • references/guidelines/README.md
  • references/guidelines/by-app-type/ai_apps.md
  • references/guidelines/by-app-type/all_apps.md
  • references/guidelines/by-app-type/crypto_finance.md
  • references/guidelines/by-app-type/games.md
  • references/guidelines/by-app-type/health_fitness.md
  • references/guidelines/by-app-type/kids.md
  • references/guidelines/by-app-type/macos.md
  • references/guidelines/by-app-type/social_ugc.md
  • references/guidelines/by-app-type/subscription_iap.md
  • references/guidelines/by-app-type/vpn.md
  • references/rules/design/minimum_functionality.md
  • references/rules/design/sign_in_with_apple.md
  • … and 16 more

Open the folder on GitHubat commit e52e007

Compare with similar skills

App Store Preflight Skills next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

App Store Preflight Skills compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
App Store Preflight Skills this skilltruongduy2611/app-store-preflight-skills1.4k—~1.4kAutomated safety check: PassMIT
OdevioOdevio/Odevio-CLI423—~7.6kAutomated safety check: PassMIT
Asc Xcode Buildrorkai/app-store-connect-cli-skills1.1k2 repos~2.1kAutomated safety check: PassMIT
App Releaseglebis/claude-skills391—~1.4kAutomated safety check: PassMIT
CI CD Setuprshankras/claude-code-apple-skills787—~1.5kAutomated safety check: NotesMIT
iOS App Store SubmitZestfulPulse/ios-app-store-submit142—~4.7kAutomated safety check: PassMIT

Similar skills

  • Odevio

    Odevio/Odevio-CLI

    Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode.

    423 GitHub stars~7.6k tokensUpdated 17 days ago
    MobileAuto-check passed
  • Asc Xcode Build

    rorkai/app-store-connect-cli-skills

    Build, archive, generate export options, export, upload, and manage Xcode version/build numbers with the current asc xcode helpers.

    1.1k GitHub starsUsed in 2 repos~2.1k tokens
    MobileAuto-check passed
  • App Release

    glebis/claude-skills

    End-to-end pipeline for releasing an iOS / watchOS app to TestFlight and the App Store.

    391 GitHub stars~1.4k tokensUpdated 3 days ago
    MobileAuto-check passed
  • CI CD Setup

    rshankras/claude-code-apple-skills

    Generate CI/CD configuration for automated builds, tests, and distribution of iOS/macOS apps.

    787 GitHub stars~1.5k tokensUpdated 2 mo ago
    DevOps & CloudAuto-check: notes
  • iOS App Store Submit

    ZestfulPulse/ios-app-store-submit

    Build, sign, and submit a Flutter/iOS app to the App Store Connect — covers Xcode archive/export, code signing (including headless-Mac keychain workarounds), the asc CLI for App Store Connect…

    142 GitHub stars~4.7k tokensUpdated 10 days ago
    MobileAuto-check passed
  • Remote Installer

    icodesign/remote-installer

    Put an iOS or Android build on a real phone or tablet over the air with the remote-installer CLI — it validates the build, opens a temporary HTTPS tunnel, and prints one or more install URLs plus QR…

    107 GitHub stars~4k tokensUpdated 11 days ago
    MobileAuto-check passed

Categories

Questions about App Store Preflight Skills

What does App Store Preflight Skills do?

Scan an iOS/macOS Xcode project for common App Store rejection patterns before submission. App Store Preflight Skills is an agent skill from truongduy2611/app-store-preflight-skills. Scan an iOS/macOS Xcode project for common App Store rejection patterns before submission.

When should I use App Store Preflight Skills?

App Store Preflight Skills fits situations like: preparing an app for App Store review; after receiving a rejection from Apple; auditing metadata; privacy manifests.

How do I install App Store Preflight Skills in Claude Code?

Run `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -a claude-code`. Or copy the skill folder (the truongduy2611/app-store-preflight-skills repository) into .claude/skills/app-store-preflight-skills in your project. Claude Code loads it when a task matches its description.

How do I install App Store Preflight Skills in Codex?

Run `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -a codex`. Or copy the skill folder (the truongduy2611/app-store-preflight-skills repository) into .agents/skills/app-store-preflight-skills in your project. Codex loads it when a task matches its description.

Can I use App Store Preflight Skills in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add truongduy2611/app-store-preflight-skills --skill app-store-preflight-skills -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/app-store-preflight-skills, .gemini/skills/app-store-preflight-skills, .github/skills/app-store-preflight-skills and .opencode/skills/app-store-preflight-skills in your project.

What does App Store Preflight Skills need to run?

Going by SKILL.md and its folder, App Store Preflight Skills needs the command-line tools its instructions call (brew) and credentials named ASC_KEY_ID and ASC_PRIVATE_KEY. Our summary lists: A credential in ASC_PRIVATE_KEY.

Does App Store Preflight Skills access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is App Store Preflight Skills safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does App Store Preflight Skills use?

App Store Preflight Skills is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does App Store Preflight Skills use?

About 1.4k tokens (SKILL.md is roughly 5.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 18k tokens, read only when the agent opens those files.

What are the alternatives to App Store Preflight Skills?

Skills that share tags, products or a category with App Store Preflight Skills: Odevio (Odevio/Odevio-CLI, 423 stars), Asc Xcode Build (rorkai/app-store-connect-cli-skills, 1.1k stars), App Release (glebis/claude-skills, 391 stars) and CI CD Setup (rshankras/claude-code-apple-skills, 787 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains App Store Preflight Skills?

truongduy2611 (a GitHub user) maintains it in truongduy2611/app-store-preflight-skills, which has 1,384 GitHub stars. The repository was last updated on May 29, 2026.

Source: truongduy2611/app-store-preflight-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.