Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/moasq/ios-dev-agent/app-store-preflightnpx skills add moasq/ios-dev-agent --skill app-store-preflightgit clone --depth 1 https://github.com/moasq/ios-dev-agentWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/moasq/ios-dev-agent/app-store-preflight)<a href="https://agentmods.dev/skills/moasq/ios-dev-agent/app-store-preflight"><img src="https://agentmods.dev/badge/skills/moasq/ios-dev-agent/app-store-preflight.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00065 | $0.01232 |
| Opus 5 | $0.00032 | $0.00616 |
| Sonnet 5 | $0.00013 | $0.00246 |
| Haiku 4.5 | $0.00006 | $0.00123 |
Grade A, and why
app-store-preflight scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 141 lines — stays where its author put it; the contents beside it link to each section on GitHub.
App Store Preflight
Run a two-layer preflight:
- Canonical ASC validation with
asc validate. - Local rejection-risk audit using metadata, entitlements, privacy files, screenshots, subscription copy, and rule references.
This skill produces a ship/no-ship report with an ordered remediation plan.
Inputs
Resolve these from .agents/config/product.md, .asc/, metadata/, the Xcode project, or live asc reads before asking the user:
- App ID
- Bundle ID
- Platform: usually
IOS - Primary locale:
en-US - Version: read from
metadata/version.yaml,project.yml, or the user’s release target - Build ID: resolve with
asc builds list --app <APP_ID> --output jsonif needed
Step 1: Tool Health
asc --version
asc doctor
asc auth status
Expected CLI: asc 1.4.0 or newer. If auth is broken, stop and route to asc-cli-usage or apple-developer-auth.
Step 2: Canonical ASC Validation
Run the canonical readiness checks first:
ASC_TIMEOUT=90s asc validate --app "<APP_ID>" --version "<VERSION>" --platform IOS --output markdown
asc validate subscriptions --app "<APP_ID>" --output markdown
asc validate iap --app "<APP_ID>" --output markdown
If a TestFlight build is part of the release:
asc validate testflight --app "<APP_ID>" --build "<BUILD_ID>" --output markdown
For CI/gating checks, rerun with --strict --output json --pretty and preserve the JSON findings.
Use ASC_TIMEOUT=90s for full app validation because screenshot-set fetches can exceed the default timeout. asc validate checks metadata length limits, required fields/localizations, review details, primary category, attached/processed build, encryption declaration, content rights, pricing/territory availability, screenshot presence and dimensions, subscription review readiness, promotional image guidance, and age rating completeness.
Step 3: Local App Store Rule Audit
Load applicable checklists from references/guidelines/by-app-type/:
What ships with it
24 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/guidelines/by-app-type/ai_apps.md 2.5 KB
- references/guidelines/by-app-type/all_apps.md 2.6 KB
- references/guidelines/by-app-type/crypto_finance.md 1.9 KB
- references/guidelines/by-app-type/games.md 1.8 KB
- references/guidelines/by-app-type/health_fitness.md 1.8 KB
- references/guidelines/by-app-type/kids.md 1.4 KB
- references/guidelines/by-app-type/macos.md 2.2 KB
- references/guidelines/by-app-type/social_ugc.md 1.8 KB
- references/guidelines/by-app-type/subscription_iap.md 2.0 KB
- references/guidelines/by-app-type/vpn.md 818 B
- references/guidelines/README.md 9.6 KB
- references/rules/design/minimum_functionality.md 3.9 KB
- references/rules/design/sign_in_with_apple.md 2.8 KB
- references/rules/entitlements/unused_entitlements.md 3.3 KB
- references/rules/metadata/accurate_metadata.md 2.5 KB
- references/rules/metadata/apple_trademark.md 4.0 KB
- references/rules/metadata/china_storefront.md 3.4 KB
- references/rules/metadata/competitor_terms.md 1.9 KB
- references/rules/metadata/subscription_metadata.md 3.0 KB
- references/rules/privacy/permission_preprompt_wording.md 2.8 KB
- references/rules/privacy/privacy_manifest.md 3.3 KB
- references/rules/privacy/unnecessary_data.md 2.5 KB
- references/rules/subscription/misleading_pricing.md 3.0 KB
- references/rules/subscription/missing_tos_pp.md 2.4 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 141 lines · 65 tokens per session scan A 5e1b5aaf9dbc
app-store-preflight is a skill published in the GitHub repository moasq/ios-dev-agent (4 stars, last pushed 3mo ago), licensed MIT. It adds 65 tokens to every session and 1,232 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
play-policy-insights
Automated auditor designed to verify Android applications against Google Play Policy domains. It cross-references static code analysis with Play Store declarations to generate deterministic compliance reports, identifying undeclared data collection, architectural risks, and missing disclosures across Permissions and…
ios-hig-design
Design native iOS interfaces following Apple Human Interface Guidelines. Use when the user mentions "iPhone app", "iPad layout", "SwiftUI", "UIKit", "Dynamic Island", "safe areas", "HIG compliance", "SF Symbols", "haptic feedback", "iOS accessibility", "make my app feel native", or "follow Apple design guidelines".…
app-store-preflight-compliance
Pre-submission compliance scanner workflow for Apple App Store apps. Use when reviewing iOS, macOS, tvOS, watchOS, or visionOS projects (Swift, Objective-C, React Native, Expo) for App Store rejection risks, submission readiness, privacy compliance, or guideline violations.
app-store-review
Evaluates code against Apple's App Store Review Guidelines. Use this skill when reviewing iOS, macOS, tvOS, watchOS, or visionOS app code (Swift, Objective-C, React Native, or Expo) to identify potential App Store rejection issues before submission. Triggers on tasks involving app review preparation, compliance…
asc-privacy-nutrition-labels
Set up App Store privacy nutrition labels (data collection declarations) for an app. Use when the user needs to declare what data their app collects, how it's used, and whether it's linked to the user. Handles both "no data collected" and full data collection declarations.
gplay-submission-checks
Pre-submission validation for Google Play releases covering metadata, screenshots, bundle integrity, data safety, and policy compliance. Use when preparing a release to avoid rejections and catch issues before submitting.