| name | app-store-launch-prep |
| description | Prepare App Store Connect launch materials for an app, including read-only project positioning, product summary, ASO-friendly Chinese and English naming, localized metadata, keywords, privacy configuration, terms/privacy drafts, icon readiness, categories, screenshot/review notes, and launch TODOs. Use when the user asks to prepare App Store/Apple Store Connect listing fields, ASO materials, app naming, launch copy, privacy policy, terms, icon checks/generation, or bilingual store submission assets for any project. |
App Store Launch Prep
Overview
Prepare a project for App Store Connect by auditing the app locally, checking current Apple requirements from official sources, then producing bilingual launch materials and a concise list of user-provided data still needed.
Default to Chinese-first communication when the user writes in Chinese. Produce both Simplified Chinese and English assets unless the user narrows the locale scope.
Workflow
-
Audit the project first
- Read project files before writing copy: README/docs, app config, bundle id, app name, category, icon assets, privacy/legal docs, payment/IAP code, analytics/account/network surfaces, screenshots or design docs.
- Use
rg / rg --files and inspect real files. Do not infer privacy posture from marketing copy alone.
- For existing apps, identify whether the app is iOS, iPadOS, macOS, visionOS, watchOS, tvOS, or multi-platform.
-
Refresh Apple constraints
- If producing publish-ready material, browse official Apple Developer / App Store Connect docs for current field constraints, privacy requirements, category guidance, and icon requirements.
- Prefer official Apple sources. If browsing is unavailable, state that constraints are based on local skill defaults and may need final verification.
-
Position the product
- Write a concise product summary from repo evidence.
- Name the target users and core jobs-to-be-done.
- Evaluate the current name for brandability and ASO. Keep internal app name stable unless the user asks to rename code.
- Recommend localized App Store names that combine brand + one strong search phrase. Avoid stuffing.
-
Prepare App Store Connect metadata
- Create or update a launch metadata document, preferably
docs/release/app-store-connect-metadata.md when the repo uses docs/.
- Include Chinese and English versions of:
- App Name
- Subtitle
- Promotional Text
- Description
- Keywords
- What's New draft
- Support URL / Marketing URL / Privacy Policy URL placeholders
- Include shared fields:
- Bundle ID / SKU suggestion
- Pricing / IAP status
- Primary and secondary categories
- App Privacy recommendation
- Review notes
- Screenshot plan
- Launch TODOs
- Keep all user-facing copy plain and App Store suitable. Avoid unverified superlatives such as "best", "most powerful", or unsupported performance claims.
-
Prepare privacy and terms
- If legal docs are missing and the user asks to prepare launch materials, create privacy and terms drafts in both Chinese and English.
- Use Apple standard EULA as the default recommendation unless the user explicitly needs a custom EULA.
- Clearly mark TODO placeholders for support email, legal operator, URLs, phone, and company/developer name.
- Do not present legal drafts as legal advice. Keep them practical and aligned with observed app behavior.
- Privacy configuration must be evidence-based. Only recommend "No, we do not collect data from this app" when the shipped app has no accounts, analytics upload, ads, server-side user content upload, third-party SDK collection, or other developer/partner collection.
-
Handle icon readiness
- Check whether the app has a valid icon set and a 1024 x 1024 App Store-sized asset.
- If the user provides or requests an icon, update the app icon assets and any in-app icon usage as requested, then verify dimensions.
- Preserve or document the source image path so future regeneration is reproducible.
-
Validate
- Use
scripts/check_metadata_lengths.py to check App Store text length/byte limits for prepared copy.
- Run project-specific checks when files/code changed: tests, build, plist/json validation, icon size checks.
- If checks cannot run, say exactly what was skipped.
Default Field Limits
Use these as defaults, but verify against official Apple docs for publish-ready work:
- App name: 2-30 characters.
- Subtitle: up to 30 characters.
- Promotional text: up to 170 characters.
- Description: up to 4000 characters.
- Keywords: up to 100 bytes per locale.
- Privacy Policy URL: required for App Store apps.
- Support URL: required.
- App icon: include a 1024 x 1024 asset for App Store submission; platform icon requirements vary.
Naming Guidance
- Prefer
Brand + Search Phrase for App Store names, for example Brand: Sticker Cutout or Brand ่ดด็บธๆ ๅพ.
- Keep the in-app display name shorter when the App Store name carries ASO keywords.
- Do not duplicate words already in the app name inside the keyword field.
- Avoid competitors' app names, Apple trademark misuse, irrelevant keywords, or broad spam terms.
- Keep one primary keyword intent per locale: e.g.
remove bg, background eraser, icon maker, ๆ ๅพ, ๅป่ๆฏ, ๅพๆ .
Output Shape
When the user asks for files, create/update project docs. When they only ask for advice, provide concise copy blocks and the remaining TODO list.
For a full file deliverable, read references/output-template.md and adapt it to the project. Do not paste the entire template into chat unless the user asks for it.
Useful Script
Run metadata length checks:
python3 scripts/check_metadata_lengths.py \
--name-en "App Name" \
--subtitle-en "Subtitle" \
--keywords-en "keyword,keyword" \
--promo-en "Promotional text"
The script counts characters for name/subtitle/promo/description and UTF-8 bytes for keywords.