Agent skill · Audited from source
asc-shots-pipeline
skill · rorkai/app-store-connect-cli-skillsMIT licenceAudited 31 Oct 2026 · source 2b8a88b29324
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 2b8a88b29324 and found no filesystem, network or shell access and no hard-coded secrets. What it does: 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…
Cite
Cite this page
ModelsAtlas. “asc-shots-pipeline (rorkai/app-store-connect-cli-skills)”. Retrieved 31 Oct 2026. https://modelsatlas.com/skills/rorkai/asc-shots-pipeline
2 skills are called “asc-shots-pipeline”. You are viewing rorkai/app-store-connect-cli-skills.
- rorkai/app-store-connect-cli-skills★ 1.1k✓SAFE
- rudrankriyam/app-store-connect-cli-skills★ 1.1k✓SAFE
Trust audit
Audit 0.4.1 · source read 31 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 16,667 of 17,602 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 0 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (0)
No findings at any severity. We re-audit when the source changes.
Audit 0.4.1 · source sha 2b8a88b29324 · 31 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publisherrorkai GitHub organizationOwner of the repository this skill is read from
- Source folderrorkai/app-store-connect-cli-skills/skills/asc-shots-pipelineThe exact folder we audited
- LicenceMITAs the repository states it
- Commit pinned for this verdict2b8a88b29324A new audit runs when the source changes
- Repository statusNot archivedLast push 4 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: 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…
---
name: asc-shots-pipeline
description: 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.
---
# asc screenshots pipeline (xcodebuild -> AXe -> frame -> asc)
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`.
## Current scope
- Implemented now: build/run, AXe plan capture, frame composition, and upload.
- Device discovery is built-in via `asc screenshots list-frame-devices`.
- Local screenshot automation commands are experimental in asc cli.
- Framing is pinned to Koubou `0.20.0` for deterministic output.
- Feedback/issues: https://github.com/rorkai/App-Store-Connect-CLI/issues/new/choose
## Defaults
- Settings file: `.asc/shots.settings.json`
- Capture plan: `.asc/screenshots.json`
- Raw screenshots dir: `./screenshots/raw`
- Framed screenshots dir: `./screenshots/framed`
- Default frame device: `iphone-air`
## 1) Create settings JSON first
Create or update `.asc/shots.settings.json`:
```json
{
"version": 1,
"app": {
"bundle_id": "com.example.app",
"project": "MyApp.xcodeproj",
"scheme": "MyApp",
"simulator_udid": "booted"
},
"paths": {
"plan": ".asc/screenshots.json",
"raw_dir": "./screenshots/raw",
"framed_dir": "./screenshots/framed"
},
"pipeline": {
"frame_enabled": true,
"upload_enabled": false
},
"upload": {
"version_localization_id": "",
"device_type": "IPHONE_65",
"source_dir": "./screenshots/framed"
}
}
```
If you intentionally skip framing, set:
- `"frame_enabled": false`
- `"upload.source_dir": "./screenshots/raw"`
## 2) Build and run app on simulator
Use Xcode CLI for build/install/launch:
```bash
xcrun simctl boot "$UDID" || true
xcodebuild \
-project "MyApp.xcodeproj" \
-scheme "MyApp" \
-configuration Debug \
-destination "platform=iOS Simulator,id=$UDID" \
-derivedDataPath ".build/DerivedData" \
build
xcrun simctl install "$UDID" ".build/DerivedData/Build/Products/Debug-iphonesimulator/MyApp.app"
xcrun simctl launch "$UDID" "com.example.app"
```
Use `xcodebuild -showBuildSettings` if the app bundle path differs from the default location.
## 3) Capture screenshots with AXe (or `asc screenshots run`)
Prefer plan-driven capture:
```bash
asc screenshots run --plan ".asc/screenshots.json" --udid "$UDID" --output json
```
Useful AXe primitives during plan authoring:
```bash
axe describe-ui --udid "$UDID"
axe tap --id "search_field" --udid "$UDID"
axe type "wwdc" --udid "$UDID"
axe screenshot --output "./screenshots/raw/home.png" --udid "$UDID"
```
Minimal `.asc/screenshots.json` example:
```json
{
"version": 1,
"app": {
"bundle_id": "com.example.app",
"udid": "booted",
"output_dir": "./screenshots/raw"
},
"steps": [
{ "action": "launch" },
{ "action": "wait", "duration_ms": 800 },
{ "action": "screenshot", "name": "home" }
]
}
```
## 4) Frame screenshots with `asc screenshots frame`
The asc CLI pins framing to Koubou `0.20.0`.
Install and verify before running framing steps:
```bash
pip install koubou==0.20.0
kou --version # expect 0.20.0
# After upgrading from 0.18.x, or if Koubou reports missing device frames,
# run once with network access:
kou setup-frames
```
List supported frame device values first:
```bash
asc screenshots list-frame-devices --output json
```
Frame one screenshot (defaults to `iphone-air`):
```bash
asc screenshots frame \
--input "./screenshots/raw/home.png" \
--output-dir "./screenshots/framed" \
--device "iphone-air" \
--output json
```
Supported `--device` values:
- iPhone: `iphone-air` (default), `iphone-17-pro`, `iphone-17-pro-max`, `iphone-16e`, `iphone-17`
- iPad: `ipad-pro-13`, `ipad-pro-11`, `ipad-air-13`, `ipad-air-11`, `ipad-mini`
- Other: `mac`, `watch-series-11`, `watch-ultra-3`, `apple-tv`
## 5) Upload screenshots with asc
Generate and review artifacts before upload:
```bash
asc screenshots review-generate --framed-dir "./screenshots/framed" --output-dir "./screenshots/review"
asc screenshots review-open --output-dir "./screenshots/review"
asc screenshots review-approve --all-ready --output-dir "./screenshots/review"
```
For reviewed multi-locale sets, prefer the plan/apply flow so existing remote screenshot counts are included before upload:
```bash
asc screenshots plan --app "APP_ID" --version "1.2.3" --review-output-dir "./screenshots/review" --output json
asc screenshots apply --app "APP_ID" --version "1.2.3" --review-output-dir "./screenshots/review" --confirm --output json
```
Upload from the configured source directory (default `./screenshots/framed` when framing is enabled):
```bash
asc screenshots upload \
--version-localization "LOC_ID" \
--path "./screenshots/framed" \
--device-type "IPHONE_65" \
--output json
```
List or validate before upload when needed:
```bash
asc screenshots sizes --output table
asc screenshots list --version-localization "LOC_ID" --output table
```
Change the order of an uploaded set without re-uploading. `--ids` must list every screenshot in the set exactly once, in the new order. If a screenshot is added after the command reads the set, App Store Connect rejects the update and keeps the order it had before the update; list the set again and re-run. An order-only change made by someone else is not detected and is overwritten.
```bash
asc localizations screenshot-sets list --localization-id "LOC_ID" --include appScreenshots
asc screenshots list --set-id "SET_ID" --output table
asc screenshots reorder --set-id "SET_ID" --ids "THIRD_ID,FIRST_ID,SECOND_ID"
```
## Agent behavior
- Always confirm exact flags with `--heExcerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 2b8a88b
pip install koubou==0.20.0
git clone https://github.com/rorkai/app-store-connect-cli-skills git -C app-store-connect-cli-skills checkout 2b8a88b29324
Commands as the repository documents them: shown, never run by us. Our verdict covers commit 2b8a88b29324 only.
Works in
The author has not said which agents this skill supports, and we have not tested it in any.
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
2b8a88b29324
README badge
For maintainers · shows the latest audit
[](https://modelsatlas.com/skills/rorkai/asc-shots-pipeline/)
The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.
Similar skills
All automation skills →rorkai/app-store-connect-cli-skills
Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources. Use when filling or updating subscription/IAP names…
rorkai/app-store-connect-cli-skills
Orchestrate TestFlight distribution, groups, testers, and What to Test notes using asc. Use when rolling out betas.
rudrankriyam/app-store-connect-cli-skills
Orchestrate TestFlight distribution, groups, testers, and What to Test notes using asc. Use when rolling out betas.
rudrankriyam/app-store-connect-cli-skills
Submit or update a Wall of Apps entry in the App-Store-Connect-CLI repository using `asc apps wall submit`. Use when the user says "submit to wall of apps", "add my app to the wall", or "wall-of-apps".
rorkai/app-store-connect-cli-skills
Reconcile App Store Connect subscriptions and in-app purchases with RevenueCat products, entitlements, offerings, and packages using asc and RevenueCat MCP. Use when setting up or syncing subscription catalogs across…
rorkai/app-store-connect-cli-skills
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.
Add this badge to your README
[](https://modelsatlas.com/skills/rorkai/asc-shots-pipeline/)
<a href="https://modelsatlas.com/skills/rorkai/asc-shots-pipeline/"><img src="https://modelsatlas.com/skills/rorkai/asc-shots-pipeline/badge.svg" alt="ModelsAtlas: SAFE B"></a>
Questions about asc-shots-pipeline
What does the asc-shots-pipeline skill do?
Is asc-shots-pipeline safe to install?
What can asc-shots-pipeline access on my machine?
How current is this page?
Sources
- github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/ — the audited source at commit 2b8a88b29324 and every finding aboveObserved · 31 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the asc-shots-pipeline skill do?
- Is asc-shots-pipeline safe to install?
- What can asc-shots-pipeline access on my machine?