Communitygithub.com

rudrankriyam/asc-shots-pipeline

Orquestra la automatización de capturas de pantalla en iOS con xcodebuild/simctl para compilación y ejecución, AXe para acciones de UI, archivos JSON de configuración y planificación, enmarcado basado en Koubou (`asc screenshots frame`) y carga de capturas (`asc screenshots upload`). Útil cuando los usuarios solicitan captura automatizada de pantallas, flujos de simulador con AXe, composición de marcos o pipelines de captura a carga.

¿Qué es asc-shots-pipeline?

Este skill implementa un pipeline completo de automatización de capturas de pantalla para aplicaciones iOS. Utiliza herramientas estándar como `xcodebuild` y `simctl` para compilar y ejecutar la app en simuladores, AXe para automatizar interacciones de UI dentro del simulador y archivos JSON para definir configuraciones y planes de captura. El flujo incluye la generación de capturas, su posterior enmarcado con Koubou (comando `asc screenshots frame`) y la carga a un servidor o servicio de almacenamiento mediante `asc screenshots upload`. Está diseñado para desarrolladores y equipos que necesitan producir capturas de pantalla localizadas y enmarcadas de forma consistente para App Store Connect u otros propósitos de marketing. Soporta flujos personalizables mediante archivos de plan y configuración, lo que permite adaptar el pipeline a diferentes idiomas, dispositivos y orientaciones.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rudrankriyam/app-store-connect-cli-skills/tree/main/skills/asc-shots-pipeline

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace asc-shots-pipeline?

Orquestra la automatización de capturas de pantalla en iOS con xcodebuild/simctl para compilación y ejecución, AXe para acciones de UI, archivos JSON de configuración y planificación, enmarcado basado en Koubou (asc screenshots frame) y carga de capturas (asc screenshots upload). Úsalo cuando los usuarios soliciten captura automatizada de pantallas, flujos de simulador con AXe, composición de marcos o pipelines de captura a carga.

Requisitos previos

  • Xcode 13 o superior instalado
  • Herramientas de línea de comandos de Xcode (xcode-select --install)
  • Ruby (para AXe, si es necesario)
  • Node.js (para Koubou y el script asc)

Instalación

  1. Clona este repositorio:

    git clone https://github.com/rudrankriyam/asc-shots-pipeline.git
    cd asc-shots-pipeline
    
  2. Instala las dependencias:

    npm install
    
  3. Asegúrate de que AXe esté configurado (consulta la documentación de AXe).

Uso

1. Compilar y ejecutar la app

Usa xcodebuild y simctl para compilar y lanzar tu app en un simulador:

xcodebuild -project TuApp.xcodeproj -scheme TuApp -destination 'platform=iOS Simulator,name=iPhone 14' build
xcrun simctl boot "iPhone 14"
xcrun simctl install booted path/to/TuApp.app
xcrun simctl launch booted com.tudominio.tuapp

2. Definir plan de capturas

Crea un archivo plan.json:

[
  {
    "device": "iPhone 14",
    "locale": "es-ES",
    "screenshots": [
      {
        "name": "PantallaPrincipal",
        "action": "wait",
        "duration": 2
      },
      {
        "name": "ListaItems",
        "action": "tap",
        "element": "button[aria-label='ListaItems']",
        "duration": 1
      }
    ]
  }
]

3. Capturar pantallas con AXe

Ejecuta AXe para realizar las acciones y capturar las pantallas:

axe --plan plan.json --output capturas/

4. Enmarcar las capturas

Usa el comando asc screenshots frame para aplicar marcos de dispositivo:

asc screenshots frame --input capturas/ --output enmarcadas/ --frame iPhone14 --locale es-ES

5. Cargar las capturas

Sube las capturas enmarcadas con asc screenshots upload:

asc screenshots upload --input enmarcadas/ --api-key TU_API_KEY_ASC

Archivos de configuración

settings.json

Define la configuración general del pipeline:

{
  "project": "TuApp.xcodeproj",
  "scheme": "TuApp",
  "devices": ["iPhone 14", "iPhone 14 Plus", "iPad Pro 11"],
  "locales": ["en-US", "es-ES", "fr-FR"],
  "outputDir": "capturas",
  "frameDir": "enmarcadas",
  "uploadEnabled": true
}

plan.json

Define los planes detallados de captura por dispositivo y locale (ver ejemplo arriba).

Comandos disponibles

ComandoDescripción
asc screenshots captureCaptura pantallas según el plan
asc screenshots frameAplica marcos de dispositivo a las capturas
asc screenshots uploadCarga las capturas enmarcadas a ASC
asc pipeline runEjecuta el pipeline completo (captura, enmarcado, carga)

Notas

  • Este pipeline asume que tienes configurado AXe con los selectores adecuados para tu app.
  • Los marcos de dispositivo provienen de Koubou; asegúrate de tener los recursos de marcos instalados.
  • La carga requiere una clave API de App Store Connect (API_KEY).
  • Personaliza los archivos JSON según tus necesidades de idiomas, dispositivos y orientaciones.

Solución de problemas

  • Error de compilación: Verifica que el esquema y proyecto existan en Xcode.
  • AXe no encuentra elementos: Asegúrate de que los selectores en el plan coincidan con la UI de tu app.
  • Fallo en enmarcado: Comprueba que el nombre del dispositivo en el plan coincida con los marcos disponibles en Koubou.
  • Error de carga: Verifica que la clave API de ASC sea válida y tenga permisos de subida.

Licencia

Este proyecto está bajo la Licencia MIT.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

rudrankriyam/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.

rudrankriyam/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`.

rudrankriyam/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.

rudrankriyam/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.

rudrankriyam/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.

rudrankriyam/asc-id-resolver

Resolve App Store Connect IDs (apps, builds, versions, groups, testers) from human-friendly names using asc. Use when commands require IDs.

rudrankriyam/asc-localize-metadata

Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI. Use when asked to localize an app's App Store listing, translate app descriptions, or add new languages to App Store Connect.

rudrankriyam/asc-metadata-sync

Sync, validate, and apply App Store metadata with the current asc canonical metadata workflow. Use when updating metadata, localizations, keywords, or migrating legacy fastlane metadata.

rudrankriyam/asc-notarization

Archive, export, and notarize macOS apps using xcodebuild and asc. Use when you need to prepare a macOS app for distribution outside the App Store with Developer ID signing and Apple notarization.

rudrankriyam/asc-ppp-pricing

Set territory-specific pricing for subscriptions and in-app purchases using current asc setup, pricing summary, price import, and price schedule commands. Use when adjusting prices by country or implementing localized PPP strategies.

rudrankriyam/asc-release-flow

Determine whether an app is ready to submit, then drive the current App Store release flow with asc, including validation, staging, review submission, first-time availability, subscriptions, IAP, Game Center, and App Privacy checks.

rudrankriyam/asc-revenuecat-catalog-sync

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 ASC and RevenueCat.

rudrankriyam/asc-signing-setup

Set up bundle IDs, capabilities, signing certificates, provisioning profiles, and encrypted signing sync with the asc cli. Use when onboarding a new app, rotating signing assets, or sharing them across a team.

rudrankriyam/asc-submission-health

Validate App Store submission readiness, submit prepared versions, and monitor review status with current asc commands. Use when shipping or troubleshooting review submissions.

rudrankriyam/asc-subscription-localization

Bulk-localize subscription and in-app purchase display names across all App Store locales using asc. Use when you want to fill in subscription/IAP names for every language without clicking through App Store Connect manually.

rudrankriyam/asc-testflight-orchestration

Orchestrate TestFlight distribution, groups, testers, and What to Test notes using asc. Use when rolling out betas.

rudrankriyam/asc-wall-submit

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".

rudrankriyam/asc-whats-new-writer

Generate engaging, localized App Store release notes (What's New) from git log, bullet points, or free text using canonical metadata under `./metadata`. Optionally pairs with promotional text updates.

rudrankriyam/asc-workflow

Define, validate, run, resume, and audit repo-local multi-step automations with current `asc workflow` and `.asc/workflow.json`, including step outputs and safe release/TestFlight workflows.

rudrankriyam/asc-xcode-build

Build, archive, export, upload, and manage Xcode version/build numbers with the current asc xcode helpers before App Store Connect upload or submission. Use when creating an IPA or PKG for upload.

Skills relacionados