Screenshots
Capture, frame, review, and upload App Store screenshotsManage the full screenshot workflow from local capture to App Store upload.
Overview
Thescreenshots command provides both local automation for capturing and framing screenshots, and App Store operations for uploading and managing screenshots in your app listings.
Local Workflow (Experimental)
The local screenshot automation features are experimental. If you encounter issues, please file feedback.Capture Screenshots
Capture screenshots from running simulators or applications:axe- Screenshot provider for iOS simulatorsmacos- Screenshot provider for macOS applications
--bundle-id- Application bundle identifier--name- Screenshot name (without extension)--output-dir- Output directory for raw PNG files--provider- Capture provider (axe or macos)--udid- Simulator UDID or “booted”
Frame Screenshots
Add device frames and backgrounds to raw screenshots:iphone-air- iPhone Air (6.9”)iphone-17-pro- iPhone 17 Pro (6.7”)iphone-17-pro-max- iPhone 17 Pro Max (6.9”)iphone-16e- iPhone 16e (6.1”)iphone-17- iPhone 17 (6.7”)mac- macOS desktop
--input- Path to raw screenshot PNG--device- Frame device profile--output- Output path for framed image--title- Overlay title text--subtitle- Overlay subtitle text--title-color- Title text color (hex format)--subtitle-color- Subtitle text color (hex format)
- Koubou CLI tool (version 0.14.0 or higher)
- Install via:
brew install koubouor download from releases
Review Workflow
Generate, review, and approve framed screenshots:Plan and Apply Approved Artifacts
Turn approved review artifacts into a deterministic upload plan before mutating remote screenshot state:--app- App Store Connect app ID--version- App Store version string--version-id- App Store version ID (alternative to--version)--review-output-dir- Directory containingmanifest.jsonandapproved.json--skip-existing- Skip files whose checksum already exists remotely--replace- Delete existing screenshots in each target set before uploading--confirm- Required forapply
Run from Plan
Execute the full capture and framing workflow from a JSON plan:List Frame Devices
Show all supported frame device profiles:App Store Workflow
List Screenshots
List all screenshots for a version localization:Check Screenshot Sizes
Display supported screenshot dimensions and device types:APP_IPHONE_65- iPhone 6.5” (required for most iOS submissions)APP_IPAD_PRO_3GEN_129- iPad Pro 12.9” (required for iPad submissions)APP_IPHONE_67- iPhone 6.7”APP_IPHONE_61- iPhone 6.1”
Upload Screenshots
Upload screenshots to App Store Connect:--path with locale directories such as
./screenshots/en-US/iphone/*.png and ./screenshots/fr-FR/iphone/*.png.
Each locale directory is matched against the remote App Store version
localizations, and only files matching the selected --device-type are
uploaded from each locale subtree. A device-rooted layout such as
./screenshots/iphone/en-US/*.png also works when --path points at
./screenshots/iphone.
File Requirements:
- Format: PNG or JPEG
- Exact dimensions must match the device type specification
- Use
asc screenshots sizesto verify required dimensions - Partial failures write a retry artifact under
.asc/reports/screenshots-upload/
Download Screenshots
Download existing screenshots from App Store Connect:Delete Screenshots
Remove screenshots from a version localization:Complete Example Workflow
Related Commands
- Video Previews - Manage app preview videos
- Apps - Manage app metadata and versions