ai/ios-skills/ios-asc-release-flow/SKILL.md
End-to-end release workflows for TestFlight and App Store using asc publish, builds, versions, and submit commands. Use when asked to upload a build, distribute to TestFlight, or submit to App Store.
npx skillsauth add kurko/dotfiles asc-release-flowInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when you need to get a new build into TestFlight or submit to the App Store.
asc auth login or ASC_* env vars).ASC_APP_ID or pass --app explicitly.asc publish testflight --app <APP_ID> --ipa <PATH> --group <GROUP_ID>[,<GROUP_ID>]--wait, --notify, --platform, --poll-interval, --timeoutasc publish appstore --app <APP_ID> --ipa <PATH> --version <VERSION>--wait, --submit --confirm, --platform, --poll-interval, --timeoutasc builds upload --app <APP_ID> --ipa <PATH>asc builds latest --app <APP_ID> [--version <VERSION>] [--platform <PLATFORM>]asc builds add-groups --build <BUILD_ID> --group <GROUP_ID>[,<GROUP_ID>]asc versions attach-build --version-id <VERSION_ID> --build <BUILD_ID>asc submit create --app <APP_ID> --version <VERSION> --build <BUILD_ID> --confirmasc submit status --id <SUBMISSION_ID> or --version-id <VERSION_ID>asc submit cancel --id <SUBMISSION_ID> --confirmmacOS apps are distributed as .pkg files, not .ipa.
See asc-xcode-build skill for full build/archive/export workflow.
Upload the exported .pkg using asc:
asc builds upload \
--app <APP_ID> \
--pkg <PATH_TO_PKG> \
--version <VERSION> \
--build-number <BUILD_NUMBER> \
--wait
Notes:
--pkg automatically sets platform to MAC_OS.asc publish appstore currently supports --ipa workflows; for macOS .pkg, use asc builds upload --pkg + attach/submit steps below.Same as iOS, but use --platform MAC_OS:
# Wait for build to process
asc builds list --app <APP_ID> --platform MAC_OS --limit 5
# Attach to version
asc versions attach-build --version-id <VERSION_ID> --build <BUILD_ID>
# Create submission
asc review submissions-create --app <APP_ID> --platform MAC_OS
# Add version item
asc review items-add \
--submission <SUBMISSION_ID> \
--item-type appStoreVersions \
--item-id <VERSION_ID>
# Submit
asc review submissions-submit --id <SUBMISSION_ID> --confirm
Same as iOS flow, use appropriate --platform:
VISION_OSTV_OSWhen releasing the same version across platforms:
Before submitting, verify:
VALID (not processing)See asc-submission-health skill for detailed preflight checks.
--help to verify flags for the exact command.--output table / --output markdown for human-readable output; default is JSON.ITSAppUsesNonExemptEncryption in Info.plist to avoid encryption issues.data-ai
Merge the current worktree branch into main and sync main back. Use when the user says "merge to main", "ship it", "merge and continue", or after completing a task in a worktree and wanting to continue with the next one.
tools
Synchronize AI agent skills, commands, configs, permissions, hooks, and instructions across Claude Code, Codex CLI, and other Agent Skills-compatible tools. Use when the user asks to pull skills from Claude into Codex, sync Codex work back to Claude, migrate agent commands, reconcile frontmatter, update permissions, or keep agent setup files in parity.
testing
Write or update UI-independent use cases for QA. Use when the user says "write use cases", "add use cases", "QA use cases", "update use cases", "compose use cases", or when starting implementation of a new feature (after plan approval). Also activates for "what should we test", "regression cases", or "use cases for QA".
documentation
Skill on how to write a task. Use when user asks you to write a task (for Asana, Linear, Jira, Notion and equivalent). Also activates when user says "create task", "write task", or similar task creation workflow requests.