rorkai/app-store-connect-cli-skills is a community-maintained collection of Agent Skills for using the asc command-line tool with Apple App Store Connect and Apple Ads. It helps coding agents automate builds, TestFlight, metadata, submissions, signing, and advertising workflows.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add rorkai/app-store-connect-cli-skills --skill asc-screenshot-resizegit clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rorkai/app-store-connect-cli-skills/asc-screenshot-resize)<a href="https://agentmods.dev/skills/rorkai/app-store-connect-cli-skills/asc-screenshot-resize"><img src="https://agentmods.dev/badge/skills/rorkai/app-store-connect-cli-skills/asc-screenshot-resize/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rorkai/app-store-connect-cli-skills/asc-screenshot-resize"><img src="https://agentmods.dev/badge/skills/rorkai/app-store-connect-cli-skills/asc-screenshot-resize.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Tool Misuse · line 62 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
- high Tool Misuse · line 72 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00036 | $0.00967 |
| Opus 5 | $0.00018 | $0.00483 |
| Sonnet 5 | $0.00007 | $0.00193 |
| Haiku 4.5 | $0.00004 | $0.00097 |
Grade A, and why
asc-screenshot-resize scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
Copies of this mod
2 near-identical copies found in the catalogue:
- asc-screenshot-resize — 100% identical, 0 lines differ
- asc-screenshot-resize — 94% identical, 2 lines differ
How it starts
The opening of the file, as written. The whole thing — 123 lines — stays where its author put it; the contents beside it link to each section on GitHub.
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_65for the common 6.5-inch iPhone screenshot set.IPAD_PRO_3GEN_129for 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
done
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 123 lines · 36 tokens per session scan A 311b549c07d9
asc-screenshot-resize is a skill published in the GitHub repository rorkai/app-store-connect-cli-skills (1,024 stars, last pushed 3d ago), licensed MIT. It adds 36 tokens to every session and 967 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
app-rejection-recovery
Diagnoses App Store rejections, drafts Resolution Center responses, and plans the fix for resubmission. Use when the user says "my app was rejected", "Apple rejected my app", "App Review rejection", "guideline violation", "Resolution Center response", "guideline 2.1", "guideline 4.3", "guideline 5.1.1", "binary…
asc-submission
Prepare an app for App Store submission or TestFlight distribution using the App Store Connect MCP server. Use when user says "prepare submission", "submit to app store", "prepare for review", "update metadata", "set what's new", "check submission readiness", "distribute to testflight", or wants to manage App Store…
asc-build-check
Check the latest CI build status and debug failures using the App Store Connect MCP server. Use when user says "check build", "what broke", "CI status", "build failing", or asks about recent build failures. Also use for signing issues, provisioning profiles, bundle ID capabilities, or Developer Portal queries.
review-management
Pull, cluster, triage, and respond to App Store reviews via the App Store Connect MCP. Use when you need to fetch recent reviews, analyze sentiment, draft developer responses, track recurring themes as product signals, or close the loop on a rating recovery campaign. Trigger phrases: "triage reviews", "respond to…
asc-audit
Read-only drift check between live App Store Connect state, the repo, and whatever launch/submission docs claim. Use before quoting any build/version/TestFlight number back to the user, before trusting a canonical "where we stand" doc block, and as the required first step of submission-preflight before any submit.…
submission-preflight
Pre-submission risk audit for App Store review — catch the rejection triggers (metadata, privacy, IAP, design, account, legal) BEFORE you submit, by app type. Use when the user says "preflight", "will this get rejected", "check before submitting", "review readiness", "submission checklist", "App Review guidelines"…