From co-dev
Manage App Store Connect apps, builds, or distribution. Use when the user wants to check builds, manage TestFlight beta groups and testers, read or respond to App Store reviews, manage in-app purchases, subscriptions, pricing, list app versions, check app status, manage certificates, provisioning profiles, screenshots, app metadata, or perform any App Store Connect operation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/co-dev:appstoreThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Manage iOS/macOS apps on App Store Connect.
Manage iOS/macOS apps on App Store Connect.
Use MCP tools (mcp__appstore__*) for all App Store Connect operations. There is no separate CLI. The asc-mcp binary IS the MCP server. If MCP tools are not available, inform the user and stop.
The MCP server provides ~60 tools across these categories:
| Category | Operations |
|---|---|
| Apps | List apps, get app info, get app availability |
| Versions | List versions, get version details, manage version states |
| Builds | List builds, get build details, get build beta details |
| TestFlight | Manage beta groups, beta testers, beta app review submissions |
| Reviews | List customer reviews, get review details, respond to reviews |
| In-App Purchases | List IAPs, get IAP details, manage IAP price schedules |
| Subscriptions | List subscription groups, subscriptions, manage pricing |
Requires asc-mcp installed via Mint and App Store Connect API credentials:
ASC_KEY_ID — API key IDASC_ISSUER_ID — Issuer IDASC_PRIVATE_KEY_PATH — Path to .p8 key fileIf these are not set, the MCP server will fail to start.
mcp__appstore__list_apps if needed.asc-mcp does not expose the Xcode Cloud (ci*) endpoints. A Xcode Cloud build ID is a ciBuildRun UUID, not a TestFlight build ID — passing it to mcp__appstore__getBuild will return 404 NOT_FOUND … type 'builds'. Don't retry; fall back to the API directly.
xcrun xcodebuild -exportArchive does not fetch Xcode Cloud logs — it only re-signs a local .xcarchive into an .ipa. The only programmatic path is the App Store Connect API. Once an .xcresult artifact is downloaded, xcrun xcresulttool can read it.
Prereq: API key must have Admin role (or App Manager with "Access to Xcode Cloud" enabled on the key). Same ASC_KEY_ID / ASC_ISSUER_ID / ASC_PRIVATE_KEY_PATH env vars.
Fallback workflow — mint a JWT, then curl. One-shot bash:
# Mint a 20-min ES256 JWT from the .p8 (requires python3 + cryptography, or use `jwt` CLI)
JWT=$(python3 - <<EOF
import jwt, time, os
print(jwt.encode(
{"iss": os.environ["ASC_ISSUER_ID"], "iat": int(time.time()),
"exp": int(time.time())+1200, "aud": "appstoreconnect-v1"},
open(os.environ["ASC_PRIVATE_KEY_PATH"]).read(),
algorithm="ES256",
headers={"kid": os.environ["ASC_KEY_ID"]}))
EOF
)
API="https://api.appstoreconnect.apple.com/v1"
H="Authorization: Bearer $JWT"
# 1. Get the build actions (build / test / archive / analyze) for a ciBuildRun
curl -s -H "$H" "$API/ciBuildRuns/$RUN_ID/actions" | jq
# 2. For a failing action, fetch its issues (compile errors, test failures)
curl -s -H "$H" "$API/ciBuildActions/$ACTION_ID/issues" | jq
# 3. Fetch the plain-text log bundle URL, then download it
LOG_URL=$(curl -s -H "$H" "$API/ciBuildActions/$ACTION_ID/logs" | jq -r '.data[0].attributes.downloadUrl')
curl -L -o build.log.zip "$LOG_URL"
# 4. For test failures, grab the .xcresult artifact and inspect locally
curl -s -H "$H" "$API/ciBuildActions/$ACTION_ID/artifacts" | jq
# pick the .xcresult bundle's downloadUrl, then:
curl -L -o UnitTests.xcresult.zip "$ARTIFACT_URL"
unzip UnitTests.xcresult.zip
xcrun xcresulttool get --path UnitTests.xcresult --format json | jq '.issues'
jwt is pip install pyjwt[crypto]. If unavailable, the same payload works with ruby -rjwt, node jsonwebtoken, or step crypto jwt sign./logs and /artifacts are pre-signed and short-lived (~30 min). Don't cache them.xcresulttool get --format json is the path to extract failing test names, messages, and stack traces without opening Xcode.npx claudepluginhub cloud-officer/claude-code-plugin-dev --plugin co-devGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.