PluginBench
Skill
Pass
Audit score 90

asc-build-lifecycle

rorkai/app-store-connect-cli-skills

Track, find, and clean up iOS/macOS builds in App Store Connect.

What is asc-build-lifecycle?

Manage build lifecycle in App Store Connect using the asc CLI. Track build processing state, locate the latest or next safe build number, and automate cleanup of old builds based on retention policies.

  • Find the latest build for a specific app version and platform
  • Determine the next safe build number by scanning processed builds and in-flight uploads
  • List recent builds sorted by upload date or other criteria
  • Inspect build processing state and details
  • Preview and apply build expiration policies based on age
  • Publish builds directly to TestFlight or App Store with optional waiting

How to install asc-build-lifecycle

npx skills add https://github.com/rorkai/app-store-connect-cli-skills --skill asc-build-lifecycle
Prerequisites
  • asc CLI installed and configured with App Store Connect credentials
  • Valid APP_ID for the target application
  • For build operations: BUILD_ID or combination of APP_ID, version, and platform
Claude Code
Cursor
Windsurf
Cline

How to use asc-build-lifecycle

  1. 1.Install the skill using the provided npx command
  2. 2.Authenticate asc with your App Store Connect credentials
  3. 3.Use `asc builds info --app APP_ID --latest` to find the latest build
  4. 4.Use `asc builds next-build-number` to determine the next safe build number before uploading
  5. 5.Use `asc builds list` to review recent builds and their upload dates
  6. 6.Use `asc builds expire-all --dry-run` to preview which builds will expire
  7. 7.Use `asc builds expire-all --confirm` to apply expiration policies
  8. 8.Use `asc publish testflight` or `asc publish appstore` for end-to-end distribution workflows

Use cases

Good for
  • Retrieve the latest build ID before submitting to TestFlight or App Store
  • Determine the correct next build number to avoid conflicts with existing builds
  • List and review recent builds to find a specific version for testing or distribution
  • Check if a build has finished processing before proceeding with distribution
  • Clean up builds older than 90 days to manage storage and compliance
Who it's for
  • iOS/macOS app developers managing builds in App Store Connect
  • DevOps engineers automating app release pipelines
  • QA teams tracking build processing and availability
  • Release managers implementing build retention policies

asc-build-lifecycle FAQ

What's the difference between `asc builds upload` and `asc publish`?

`asc builds upload` only uploads and commits an IPA or PKG file. Use `asc publish` when you need to also distribute to TestFlight or stage an App Store release in the same workflow.

How does `next-build-number` work?

It scans all processed builds and in-flight uploads, finds the highest numeric build number, and returns one greater. Non-numeric or blank build numbers are skipped; if no usable number exists, it falls back to the `--initial-build-number` value.

Can I preview which builds will be deleted before applying expiration?

Yes, use `asc builds expire-all --app APP_ID --older-than 90d --dry-run` to see which builds match the expiration criteria without deleting them.

How do I wait for a build to finish processing?

Use the `--wait` flag with supported commands like `asc publish testflight --wait`. You can also customize polling with `--poll-interval` and `--timeout`.

Can I expire a single build instead of all old builds?

Yes, use `asc builds expire --build-id BUILD_ID --confirm` to expire a specific build by its ID.

Full instructions (SKILL.md)

Source of truth, from rorkai/app-store-connect-cli-skills.


name: asc-build-lifecycle description: Track build processing, find latest builds, and clean up old builds with asc. Use when managing build retention or waiting on processing.

asc build lifecycle

Use this skill to manage build state, processing, and retention.

Find the right build

  • Latest build:
    • asc builds info --app "APP_ID" --latest --version "1.2.3" --platform IOS
  • Next safe build number:
    • asc builds next-build-number --app "APP_ID" --version "1.2.3" --platform IOS
    • The command scans the full processed-build history and in-flight uploads, then returns one greater than the highest positive numeric build number. Blank or non-numeric processed build numbers are skipped with a warning; if no usable number remains, it falls back to --initial-build-number.
  • Recent builds:
    • asc builds list --app "APP_ID" --sort -uploadedDate --limit 10

Inspect processing state

  • asc builds info --build-id "BUILD_ID"

Distribution flows

  • Prefer end-to-end:
    • asc publish testflight --app "APP_ID" --ipa "./app.ipa" --group "GROUP_ID" --wait
    • asc publish appstore --app "APP_ID" --ipa "./app.ipa" --version "1.2.3" --wait --submit --confirm

Cleanup

  • Preview expiration:
    • asc builds expire-all --app "APP_ID" --older-than 90d --dry-run
  • Apply expiration:
    • asc builds expire-all --app "APP_ID" --older-than 90d --confirm
  • Single build:
    • asc builds expire --build-id "BUILD_ID" --confirm

Notes

  • asc builds upload uploads and commits an IPA or PKG. Use asc publish when the workflow must also distribute to TestFlight or stage an App Store release.
  • For long processing times, use --wait, --poll-interval, and --timeout where supported.