npx skills add ...
npx skills add rorkai/app-store-connect-cli-skills --skill asc-shots-pipeline
Orchestrate iOS screenshot automation with xcodebuild/simctl for build-run, AXe for UI actions, JSON settings and plan files, Koubou-based framing (`asc screenshots frame`), and screenshot upload (`asc screenshots upload`). Use when users ask for automated screenshot capture, AXe-driven simulator flows, frame composition, or screenshot-to-upload pipelines.
npx skills add rorkai/app-store-connect-cli-skills --skill asc-shots-pipeline
Use this skill for agent-driven screenshot workflows where the app is built and launched with Xcode CLI tools, UI is driven with AXe, and screenshots are uploaded with asc.
asc screenshots list-frame-devices.0.18.1 for deterministic output..asc/shots.settings.json.asc/screenshots.json./screenshots/raw./screenshots/framediphone-airCreate or update .asc/shots.settings.json:
If you intentionally skip framing, set:
"frame_enabled": false"upload.source_dir": "./screenshots/raw"Use Xcode CLI for build/install/launch:
Use xcodebuild -showBuildSettings if the app bundle path differs from the default location.
asc screenshots run)Prefer plan-driven capture:
Useful AXe primitives during plan authoring:
Minimal .asc/screenshots.json example:
asc screenshots frameThe asc CLI pins framing to Koubou 0.18.1.
Install and verify before running framing steps:
List supported frame device values first:
Frame one screenshot (defaults to iphone-air):
Supported --device values:
iphone-air (default)iphone-17-proiphone-17-pro-maxiphone-16eiphone-17macGenerate and review artifacts before upload:
For reviewed multi-locale sets, prefer the plan/apply flow so existing remote screenshot counts are included before upload:
Upload from the configured source directory (default ./screenshots/framed when framing is enabled):
List or validate before upload when needed:
--help before running commands.asc screenshots --help because screenshot commands are evolving quickly.asc screenshots list-frame-devices --output json before selecting a frame device.--app, --output, --version-localization, etc.).asc screenshots plan / asc screenshots apply for reviewed batches when you need append-limit guardrails across existing remote screenshots.pip install koubou==0.18.1.kou setup-frames once with network access.Do not use xcrun simctl launch ... -e AppleLanguages for localization.
-e is an environment variable pattern and does not reliably switch app language.
For this pipeline, use simulator-wide locale defaults per UDID. This works with
asc screenshots capture, which relaunches the app internally.
If you launch manually (outside asc screenshots capture), use app launch arguments:
Run one locale per simulator UDID in parallel:
Or use xargs with locale:udid pairs: