
Asc Release Flow
- 2.7k installs
- 934 repo stars
- Updated July 21, 2026
- rudrankriyam/app-store-connect-cli-skills
asc-release-flow is an agent skill that checks App Store submission readiness and runs asc validate, stage, review submit, and publish commands for iOS releases.
About
asc-release-flow is an agent skill for answering whether an iOS app can be submitted now and executing the current App Store Connect CLI workflow with asc. It starts by resolving APP_ID, version, VERSION_ID, and BUILD_ID, confirming auth via asc auth login or ASC environment variables, and separating API-fixable blockers from web-session or manual fixes. Readiness begins with asc validate for the target version, optional strict mode, and product checks such as asc validate iap and asc validate subscriptions when selling digital goods. Staging uses asc release stage with metadata directories or copy-metadata-from, dry-run planning, then --confirm mutations. Submission paths include asc review submit for prepared versions, asc publish appstore for upload-plus-submit flows, and status monitoring via asc status and asc submit status. First-time blockers cover initial pricing availability bootstrap, subscription attachment for first review, IAP review screenshots, Game Center version items, and App Privacy publish steps through documented asc web escape hatches when the public API is insufficient.
- Readiness-first flow: state if the app can submit now, list blockers, then give the next asc command.
- Canonical path uses asc validate, release stage, review submit, and publish appstore with dry-run support.
- Separates API-fixable issues from web-session fixes for availability, subscriptions, and App Privacy.
- Documents IAP, subscription, and Game Center validation plus review item attachment patterns.
- Includes first-time submission blockers such as pricing availability bootstrap and IAP version selection gaps.
Asc Release Flow by the numbers
- 2,719 all-time installs (skills.sh)
- +64 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #15 of 257 Release Management skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
asc-release-flow capabilities & compatibility
- Capabilities
- submission readiness assessment with blocker tax · asc validate and strict validation orchestration · metadata staging via release stage dry run and c · review submit and publish appstore one command f · first time availability and subscription web ses · game center and app privacy gap handling guidanc
- Works with
- github
- Use cases
- ci cd · project management · testing
- Platforms
- macOS
- Runs
- Runs locally
- Pricing
- Free
npx skills add https://github.com/rudrankriyam/app-store-connect-cli-skills --skill asc-release-flowAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2.7k |
|---|---|
| repo stars | ★ 934 |
| Security audit | 3 / 3 scanners passed |
| Last updated | July 21, 2026 |
| Repository | rudrankriyam/app-store-connect-cli-skills ↗ |
How do I know if my app version is ready for App Store review and which asc command fixes each blocker?
Drive App Store Connect release readiness and submission with asc validate, release stage, review submit, and first-time blocker fixes.
Who is it for?
iOS teams using the asc CLI to automate App Store Connect validation, metadata staging, and review submission.
Skip if: Android Play Console releases, server-side deploys, or teams without asc authentication configured.
When should I use this skill?
User asks if the app can be submitted now or wants to prepare and submit an App Store version with asc.
What you get
A clear ready-or-not verdict, categorized blockers, and the exact asc CLI command sequence to stage and submit.
- Submission readiness assessment
- Staged App Store version
- Review submission execution
Files
Release flow (readiness-first)
Use this skill when the question is "Can my app be submitted now?" or when the user wants to prepare and submit an App Store version with the current asc command surface.
Preconditions
- Resolve
APP_ID, version string,VERSION_IDwhen needed, andBUILD_IDup front. - Ensure auth is configured with
asc auth loginorASC_*environment variables. - Have canonical metadata in
./metadatawhen using metadata-driven staging. - Treat
asc web ...commands as optional experimental escape hatches for flows not covered by the public API.
Answer order
1. Say whether the app is ready right now. 2. Name the blocking issues. 3. Separate public-API fixes from web-session or manual fixes. 4. Give the next exact command to run.
Blockers usually fall into:
- API-fixable: build validity, metadata, screenshots, review details, content rights, encryption, version/build attachment, IAP readiness, Game Center version and review-submission items.
- Web-session-fixable: initial app availability bootstrap, first-review subscription attachment, App Privacy publish state.
- Manual fallback: first-time IAP selection on the app-version page when no CLI attach flow exists, or any flow the user does not want to run through experimental web-session commands.
Canonical current path
1. Readiness check
Use asc validate; the old submit-preflight shortcut is not part of the current CLI.
asc validate --app "APP_ID" --version "1.2.3" --platform IOS --output tableUse strict mode when warnings should block automation:
asc validate --app "APP_ID" --version "1.2.3" --platform IOS --strict --output tableFor apps selling digital goods, run the product readiness checks too:
asc validate iap --app "APP_ID" --output table
asc validate subscriptions --app "APP_ID" --output table2. Stage without submitting
Use asc release stage when the user wants to prepare the version, apply/copy metadata, attach the build, and validate, while stopping before review submission.
asc release stage \
--app "APP_ID" \
--version "1.2.3" \
--build "BUILD_ID" \
--metadata-dir "./metadata/version/1.2.3" \
--dry-run \
--output tableApply the staging mutations after the plan looks correct:
asc release stage \
--app "APP_ID" \
--version "1.2.3" \
--build "BUILD_ID" \
--metadata-dir "./metadata/version/1.2.3" \
--confirmUse --copy-metadata-from "1.2.2" instead of --metadata-dir when carrying metadata forward from an existing version.
3. Submit an already prepared version
Use asc review submit for explicit App Store review submission. It wraps build attachment plus review submission creation.
asc review submit --app "APP_ID" --version "1.2.3" --build "BUILD_ID" --dry-run --output table
asc review submit --app "APP_ID" --version "1.2.3" --build "BUILD_ID" --confirmUse --version-id "VERSION_ID" instead of --version when you already resolved the exact version ID.
4. One-command upload and submit
Use asc publish appstore when upload/build/local-build and submission should be one high-level flow.
asc publish appstore --app "APP_ID" --ipa "./App.ipa" --version "1.2.3" --submit --dry-run --output table
asc publish appstore --app "APP_ID" --ipa "./App.ipa" --version "1.2.3" --submit --confirmAdd --wait when the command should wait for build processing before attaching/submitting.
5. Monitor and cancel
asc status --app "APP_ID"
asc submit status --version-id "VERSION_ID"
asc submit status --id "SUBMISSION_ID"
asc submit cancel --id "SUBMISSION_ID" --confirmFirst-time submission blockers
Initial app availability does not exist
Symptoms:
asc pricing availability view --app "APP_ID"reports no availability.asc pricing availability edit ...cannot update because there is no existing availability record.
Check:
asc pricing availability view --app "APP_ID"Bootstrap the first availability record with the experimental web-session flow:
asc web apps availability create \
--app "APP_ID" \
--territory "USA,GBR" \
--available-in-new-territories trueAfter bootstrap, use the public API for ongoing changes:
asc pricing availability edit \
--app "APP_ID" \
--territory "USA,GBR" \
--available true \
--available-in-new-territories trueSubscriptions are ready but not attached to first review
Check subscription readiness first:
asc validate subscriptions --app "APP_ID" --output tableIf diagnostics report missing metadata, fix those prerequisites before attaching. Common misses are broad pricing coverage, review screenshots, promotional images, and app/build evidence.
List first-review subscription state:
asc web review subscriptions list --app "APP_ID"Attach a group for first review:
asc web review subscriptions attach-group \
--app "APP_ID" \
--group-id "GROUP_ID" \
--confirmAttach one subscription instead:
asc web review subscriptions attach \
--app "APP_ID" \
--subscription-id "SUB_ID" \
--confirmFor later reviews, submit subscriptions through the public review path:
asc subscriptions review submit --subscription-id "SUB_ID" --confirmIn-app purchases need review readiness or first-version inclusion
asc validate iap --app "APP_ID" --output tableUpload missing review screenshots:
asc iap review-screenshots create --iap-id "IAP_ID" --file "./review.png"For IAPs on a published app:
asc iap submit --iap-id "IAP_ID" --confirmFor the first IAP on an app, or the first time adding a new IAP type, Apple may require selecting the IAP from the app version's "In-App Purchases and Subscriptions" section before submitting the app version. Prepare the IAP with localization, pricing, and review screenshot data first.
For non-renewing IAPs that must be attached to the next app version review, the public API may reject the review item path. The CLI exposes an experimental web-session escape hatch that mirrors the App Store Connect web flow:
asc web review iaps attach --app "APP_ID" --iap-id "IAP_ID" --confirmUse this only for the web-only first-version selection gap, and call out that it uses unofficial Apple web-session endpoints.
Game Center needs app-version and review-submission items
asc game-center app-versions list --app "APP_ID"
asc game-center app-versions create --app-store-version-id "VERSION_ID"If Game Center component versions must ship with the app version, use the explicit review-submission API so all items can be added before submission:
asc review submissions-create --app "APP_ID" --platform IOS
asc review items add --submission "SUBMISSION_ID" --item-type appStoreVersions --item-id "VERSION_ID"
asc review items add --submission "SUBMISSION_ID" --item-type gameCenterLeaderboardVersions --item-id "GC_LEADERBOARD_VERSION_ID"
asc review submissions-submit --id "SUBMISSION_ID" --confirmasc review items add also supports gameCenterAchievementVersions, gameCenterActivityVersions, gameCenterChallengeVersions, and gameCenterLeaderboardSetVersions.
App Privacy is still unpublished
The public API can surface privacy advisories, but it cannot fully verify App Privacy publish state.
asc web privacy pull --app "APP_ID" --out "./privacy.json"
asc web privacy plan --app "APP_ID" --file "./privacy.json"
asc web privacy apply --app "APP_ID" --file "./privacy.json"
asc web privacy publish --app "APP_ID" --confirmIf the user avoids experimental web-session commands, confirm App Privacy manually in App Store Connect:
https://appstoreconnect.apple.com/apps/APP_ID/appPrivacyReview details are incomplete
asc review details-for-version --version-id "VERSION_ID"Create or update details:
asc review details-create \
--version-id "VERSION_ID" \
--contact-first-name "Dev" \
--contact-last-name "Support" \
--contact-email "dev@example.com" \
--contact-phone "+1 555 0100" \
--notes "Explain the reviewer access path here."
asc review details-update \
--id "DETAIL_ID" \
--notes "Updated reviewer instructions."Only set demo-account fields when App Review truly needs demo credentials.
Ready checklist
An app is effectively ready when:
asc validate --app "APP_ID" --version "VERSION" --platform IOShas no blocking issues.asc release stage --dry-runproduces the expected plan, orasc release stage --confirmhas successfully prepared the target version.- The build is
VALIDand attached to the target version. - Metadata, screenshots, app info, content rights, encryption, age rating, and review details are complete.
- App availability exists.
- Digital goods have localization, pricing, review screenshots, and any first-review attachments or manual selections handled.
- Game Center app-version and component review items are included when needed.
- App Privacy is confirmed or published.
Notes
- Do not use the legacy submit-preflight, submit-create, or release-run shortcuts; they are not part of the current CLI.
- Use
asc validatefor readiness. - Use
asc release stagefor pre-submit preparation. - Use
asc review submitfor explicit App Store review submission. - Use
asc publish appstore --submit --confirmfor high-level upload plus submission. - Use
asc statusandasc submit statusafter submission.
Related skills
Forks & variants (3)
Asc Release Flow has 3 known copies in the catalog totaling 3.5k installs. They canonicalize to this original listing.
- rorkai - 2.2k installs
- rudrankriyam - 1.3k installs
- ehmo - 1 installs
FAQ
What should I run first for readiness?
Run asc validate for the app and version, then product validators for IAP or subscriptions if you sell digital goods.
How do I stage without submitting?
Use asc release stage with --dry-run, review the plan, then rerun with --confirm after metadata and build attachment look correct.
When are asc web commands needed?
For first-time availability bootstrap, first-review subscription attachment, or App Privacy publish when the public API cannot complete the step.
Is Asc Release Flow safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.