Use when reviewing iOS or iPadOS apps for App Store submission, TestFlight readiness, rejection recovery, Resolution Center replies, Guideline 4.3 similarity, or product craft. Includes iOS 27 compatibility, SDK and deployment gates, scene lifecycle, iPhone Duo, Apple Intelligence, Foundation Models, Siri/App Intents, privacy, subscriptions, accessibility, new App Store assets, and Apple design and Human Interface Guidelines audits of native interaction, motion, gestures, materials, haptics, and iPad adaptation. Applies to Xcode, Expo, React Native, and Flutter projects, supplied rejections or metadata, and requests such as "review my app" or "will Apple approve this".
98
97%
Does it follow best practices?
Impact
99%
1.39xAverage score across 7 eval scenarios
Passed
No findings from the security scan
The evidence-first preflight for iOS apps. Audit before submission, recover from rejection, and find the product details that still feel generic or unfinished.
Product page · Star on GitHub · Open the complete sample report · Inspect its source JSON
npx skills add ElxMaj/app-store-review-skillThen ask your agent:
Audit this iOS app before submission. Report first and do not edit files.The skill works with Codex and Claude Code, detects Xcode, Expo, React Native, and Flutter projects, and changes zero files on its first pass. See every install method, including Tessl and the Claude Code marketplace.
A build can work perfectly on your phone and still give App Review a broken path. A widget may have no privacy manifest. A camera call may not match its purpose string. Account deletion may stop inside the app. Review notes may omit the only usable test account. A polished interface may still look like an interchangeable template.
The skill collects those signals before offering advice. Every finding answers four questions:
| Evidence contract | What you get |
|---|---|
| What was found | A confirmed repository signal, warning, or explicit manual check |
| Where it lives | A target, file, metadata field, or real-build checkpoint |
| Why it matters | Published guidance, labeled evidence, or a clearly stated inference |
| How to verify | A repeatable command, device check, or App Store Connect check |
Unknowns stay unknown. The report arrives before any proposed fix group.
Checks native targets, purpose strings, privacy manifests, Required Reason APIs, purchases, restore paths, account deletion, Sign in with Apple, ATT, third-party AI consent, typed metadata, placeholders, shipped internal files, reviewer access, iPad behavior, and release paths.
Preserves Apple’s exact message and classifies the next move as FIX, CLARIFY, APPEAL, or REQUEST INTERPRETATION. It traces the likely cause, keeps published rules separate from community evidence, and drafts a Resolution Center reply with exact navigation and build details.
Reviews product distinction, provenance, visual identity, microcopy, missing states, accessibility, motion, and App Store product-page specificity. Grades are DISTINCT, CREDIBLE, GENERIC, HIGH RISK, or UNVERIFIED.
The reviewed JSON becomes a self-contained editorial report, not a fake dashboard. It includes the release verdict, evidence confidence, reviewer checklist, App Review Notes draft, and approval-required fix groups. The same evidence is available as stable JSON for CI, issue reports, and later audits.
/app-store-review Audit this Expo app before submission. Report first and do not edit files.
/app-store-review Check this release archive for iOS 27 engineering, design, and product-page readiness.
/app-store-review Apple rejected build 42 under 4.3(a). Find the cause and draft my reply.
/app-store-review Run the human-craft audit. Show what feels generic or unfinished.
/app-store-review Audit this iPad app's Apple design quality, including motion and gestures.For deterministic scanning outside an agent:
python3 scripts/app_store_review_scan.py <project-path> --format all --output-dir <report-directory>Add typed metadata with --metadata FIELD[:LOCALE]=PATH, Fastlane trees with --metadata-root PATH, and an IPA, ZIP or .xcarchive with --archive PATH.
| Guideline family | What is reviewed |
|---|---|
| 1.2 | UGC filtering, reporting, blocking, contact details, moderation, and anonymous chat |
| 2.1 | Crashes, placeholders, demo access, broken paths, network behavior, and iPad reviewability |
| 2.3 | Build-to-metadata accuracy, localizations, fallback assets, screenshots, keywords, age rating, and purchase claims |
| 3.1 | Digital purchases, paywall terms, StoreKit pricing, trials, and restoration |
| 4.2 / 4.3 | Minimum functionality, templates, portfolio duplication, provenance, and distinct value |
| 5.1 | Purpose strings, privacy manifests, deletion, ATT, labels, and third-party AI consent |
Apple’s published guidelines do not name AI-written code as a rejection category. They do assess the product that ships. Read the source-based guide to Guidelines 4.2.6 and 4.3.
Version 2.0.0 adds engineering, design and product-page review across 23 technology families. The readiness guide and Apple source register cover Foundation Models/PCC, Core AI, Siri/search, native interfaces, widgets, background assets, media, games, health, identity, tracking and commerce.
The scanner reads each app/extension plist from an IPA, ZIP or .xcarchive, checks dated SDK/Xcode/deployment gates and SDK 27 launch-screen declarations, and routes runtime, scenes, accessibility, adaptive/Duo layouts and store assets to manual verification. Optional API adoption is not a submission requirement.
JSON schema 1.2 adds platform_review and dated release_watchlist context; earlier reports remain readable. All formats preserve beta/future scope and print coverage. No project code, build, app or network request is executed; static evidence cannot prove runtime compatibility, signing or asset approval.
references/research-prompt.md is a quarterly research prompt for checking official policy changes and refreshing rejection evidence. New cases must include the guideline, Apple’s wording when available, the response, outcome, date, and source URL.
SKILL.md Workflow and review rules
references/ Policy, recovery, craft, and framework guidance
scripts/app_store_review_scan.py Read-only deterministic scanner
scripts/ios_platform_review.py Archive gates and iOS 27 evidence routing
scripts/render_app_store_report.py Self-contained report renderer
scripts/tests/ Regression tests
evals/ Behavior and trigger cases
.claude-plugin/ · .codex-plugin/ Claude Code and Codex manifestsAfter changing canonical resources, run python3 .github/scripts/package_skill.py
to refresh the Copilot package and portable archive, then run the test suite.
The packaging step is deterministic and does not publish a release.
Real rejection cases and false-positive reports are welcome. Read CONTRIBUTING.md first, and never publish credentials, signing material, personal data, or private app details.
Built by Elie Majorel · Published by Maj Labs · MIT licensed
This project checks public Apple guidance and clearly labeled community evidence. It cannot guarantee approval, does not contact Apple, and is not affiliated with or endorsed by Apple Inc.