
Asc Screenshot Resize
Prepare and fix App Store Connect screenshot sets on macOS using live asc size data, sips resizing, and pre-upload validation.
Overview
asc-screenshot-resize is an agent skill for the Launch phase that discovers App Store Connect screenshot sizes with asc, sanitizes macOS filenames, resizes with sips, and validates folders before upload.
Install
npx skills add https://github.com/rudrankriyam/asc-skills --skill asc-screenshot-resizeWhat is this skill?
- Treats `asc screenshots sizes` as the source of truth instead of hard-coded dimension tables in the skill
- Pre-upload validation with `asc screenshots validate --path` and device types such as IPHONE_65 and IPAD_PRO_3GEN_129
- Sanitizes macOS screenshot filenames that contain U+202F narrow no-break spaces before batch processing
- Covers extended display sets via `asc screenshots sizes --all` (6.9-inch iPhone, Apple TV, Mac, Vision Pro, iMessage, Wa
- Documents resize with macOS `sips` aligned to the asc-owned size matrix
- Workflow sections: sanitize filenames, discover sizes via asc, validate per device type
- Documented device-type anchors: IPHONE_65 and IPAD_PRO_3GEN_129
- Extended targets listed via `asc screenshots sizes --all` including Apple TV, Mac, Vision Pro, iMessage, and Watch
Adoption & trust: 674 installs on skills.sh; 845 GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your App Store screenshots fail validation or batch tools break because dimension requirements drift and macOS filenames hide Unicode spaces tools reject.
Who is it for?
Indie iOS or multi-platform Apple developers on macOS who already use or can install the asc CLI and need a repeatable pre-submission screenshot pipeline.
Skip if: Android-only Play Store listings, web-only products, or environments without macOS sips and asc for live size discovery and validation.
When should I use this skill?
Preparing or fixing screenshots for App Store Connect submission.
What do I get? / Deliverables
You end up with device-type-aligned, renamed screenshot folders that pass `asc screenshots validate` and are ready to upload to App Store Connect.
- Screenshot folders with sanitized filenames (no problematic Unicode spaces)
- Images sized to asc-reported dimensions for chosen device types
- Passing local `asc screenshots validate` results per device folder
Recommended Skills
Journey fit
Screenshot sizing and validation are store-listing work done immediately before or during App Store submission, which Prism places in Launch. App Store screenshots are core ASO and conversion assets on App Store Connect, not general product build or post-launch analytics.
How it compares
Use instead of copying pixel sizes from outdated blog posts—the asc CLI owns the current screenshot-size matrix.
Common Questions / FAQ
Who is asc-screenshot-resize for?
Solo and indie builders submitting or updating apps on App Store Connect who want agent-guided steps for sizing, renaming, and validating screenshot assets on macOS.
When should I use asc-screenshot-resize?
Use it in the Launch ASO step when preparing screenshots for a new version, fixing dimension-related rejections, or adding sets for extra device types after running `asc screenshots sizes --all`.
Is asc-screenshot-resize safe to install?
It documents local shell, Python, sips, and asc commands on your screenshot folders; review the Security Audits panel on this Prism page and inspect the skill source before granting agent filesystem or shell access.
SKILL.md
READMESKILL.md - Asc Screenshot Resize
# asc screenshot resize Use this skill to prepare screenshots for App Store Connect. Do not rely on a hard-coded dimension table in this skill; the CLI owns the current size matrix. ## Source of truth Always discover current accepted sizes from `asc` first: ```bash asc screenshots sizes --output table asc screenshots sizes --all --output table ``` For local validation before upload: ```bash asc screenshots validate --path "./screenshots/iphone" --device-type "IPHONE_65" --output table asc screenshots validate --path "./screenshots/ipad" --device-type "IPAD_PRO_3GEN_129" --output table ``` Common current device-type anchors: - `IPHONE_65` for the common 6.5-inch iPhone screenshot set. - `IPAD_PRO_3GEN_129` for the common 12.9/13-inch iPad screenshot set. Run `asc screenshots sizes --all` when targeting other display types such as 6.9-inch iPhone, Apple TV, Mac, Vision Pro, iMessage, or Watch. ## Workflow ### 1. Sanitize filenames macOS screenshots can contain hidden Unicode spaces that make tools fail with "not a valid file". Sanitize before batch work: ```bash python3 -c " import os for f in os.listdir('.'): clean = f.replace('\u202f', ' ') if f != clean: os.rename(f, clean) print(f'Renamed: {clean}') " ``` ### 2. Inspect dimensions and metadata ```bash sips -g pixelWidth -g pixelHeight screenshot.png sips -g hasAlpha -g space screenshot.png ``` App Store Connect rejects screenshots with alpha transparency. Strip alpha by round-tripping through JPEG: ```bash sips -s format jpeg input.png --out /tmp/asc-screenshot-no-alpha.jpg sips -s format png /tmp/asc-screenshot-no-alpha.jpg --out output.png rm /tmp/asc-screenshot-no-alpha.jpg ``` Batch-strip alpha from PNGs: ```bash for f in *.png; do if sips -g hasAlpha "$f" | grep -q "yes"; then sips -s format jpeg "$f" --out /tmp/asc-screenshot-no-alpha.jpg sips -s format png /tmp/asc-screenshot-no-alpha.jpg --out "$f" rm /tmp/asc-screenshot-no-alpha.jpg echo "Stripped alpha: $f" fi done ``` ### 3. Resize only after choosing a target from asc Pick a width and height from `asc screenshots sizes --all`. `sips -z` takes height first, then width: ```bash # Example: portrait IPHONE_65 1284 x 2778 sips -z 2778 1284 input.png --out output.png ``` Batch resize to a chosen target: ```bash mkdir -p resized for f in *.png; do sips -z 2778 1284 "$f" --out "resized/$f" done ``` ### 4. Validate outputs with asc ```bash sips -g pixelWidth -g pixelHeight -g hasAlpha resized/*.png asc screenshots validate --path "./resized" --device-type "IPHONE_65" --output table ``` ### 5. Upload only after validation ```bash asc screenshots upload --version-localization "LOC_ID" --path "./resized" --device-type "IPHONE_65" --dry-run --output table asc screenshots upload --version-localization "LOC_ID" --path "./resized" --device-type "IPHONE_65" ``` ## Guardrails - Treat `asc screenshots sizes --all` as authoritative; Apple size requirements change. - Do not stretch screenshots across incompatible aspect ratios unless the user accepts the visual tradeoff. - Always output to a separate file or directory to preserve originals. - Screenshots must be PNG or JPEG and must not include alpha transparency. - Convert Display P3 or other color spaces to sRGB when needed: ```bash sips -m "/System/Library/ColorSync/Profiles/sRGB IEC61966-2.1.icc" input.png --out output.png ``` - Prefer `asc screenshots validate` over visual inspection before upload.