/asc-screenshot-resize
Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
$ npx -y skills add rudrankriyam/asc-skills --skill asc-screenshot-resize --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/asc-screenshot-resize
Context preview
The summary Claude sees to decide when to auto-load this skill.
Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
SKILL.md
asc-screenshot-resize.SKILL.mdname: asc-screenshot-resize
description: Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
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:
asc screenshots sizes --output table
asc screenshots sizes --all --output table
For local validation before upload:
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:
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
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:
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:
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
done3. 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:
# Example: portrait IPHONE_65 1284 x 2778
sips -z 2778 1284 input.png --out output.png
Batch resize to a chosen target:
mkdir -p resized
for f in *.png; do
sips -z 2778 1284 "$f" --out "resized/$f"
done
4. Validate outputs with asc
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
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:
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.
Read more
name: asc-screenshot-resize description: Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
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:
asc screenshots sizes --output table asc screenshots sizes --all --output table
For local validation before upload:
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:
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
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:
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:
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
done3. 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:
# Example: portrait IPHONE_65 1284 x 2778 sips -z 2778 1284 input.png --out output.png
Batch resize to a chosen target:
mkdir -p resized for f in *.png; do sips -z 2778 1284 "$f" --out "resized/$f" done
4. Validate outputs with asc
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
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:
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.
A collection of Agent Skills for shipping with the asc cli (asc). These skills help agents run builds, TestFlight, metadata, submissions, signing, and Apple Ads workflows. This is a community-maintained, unofficial skill pack and is not affiliated with Apple.
Other skills on asc.
- /asc-app-create-ui
Create a new App Store Connect app record via browser automation. Use when there is no public API for app creation and you need an agent to drive the New App form.
Open skill - /asc-apple-ads
Use when managing Apple Ads with asc, including auth, org lookup, campaigns, ad groups, ads, keywords, reports, raw API calls, and safe live testing.
Open skill - /asc-aso-audit
Run an offline ASO audit on canonical App Store metadata under `./metadata` and surface keyword gaps using Astro MCP. Use after pulling metadata with `asc metadata pull`.
Open skill - /asc-build-lifecycle
Track build processing, find latest builds, and clean up old builds with asc. Use when managing build retention or waiting on processing.
Open skill - /asc-cli-usage
Guidance for using asc cli in this repo (flags, output formats, pagination, auth, and discovery). Use when asked to run or design asc commands or interact with App Store Connect via the CLI.
Open skill - /asc-crash-triage
Triage TestFlight crashes, beta feedback, and performance diagnostics using asc. Use when the user asks about TF crashes, TestFlight crash reports, beta tester feedback, app hangs, disk writes, launch diagnostics, or wants a crash summary for a build or app.
Open skill

