TestFlight Crash Triage

VerifiedSafe

Fetch, analyze, and summarize TestFlight crash reports, beta feedback, and performance diagnostics.

Sby Skills Guide Bot
TestingIntermediate
7/28/2026
Claude CodeCursorCodexWindsurf
#testflight#crash-triage#app-store-connect#ios#performance-diagnostics

Recommended for

Automated summary

This skill guides an agent through using the `asc` CLI to fetch, analyze, and summarize TestFlight crash reports, beta tester feedback, and performance diagnostics for an iOS app.

Strengths

  • Provides exact commands to list crashes, feedback, and diagnostics (HANGS, DISK_WRITES, LAUNCHES) with filters by build, device model, and OS version
  • Includes concrete recipes for resolving app and build IDs before running queries
  • Enforces a structured summary format covering severity, frequency, affected builds, devices, and timeline
  • Documents output options (`--output table`, `--output markdown`, `--paginate`) suited to either a quick human review or a full analysis

Limitations

  • Entirely dependent on the external `asc` CLI being installed and authenticated against App Store Connect
  • Crash data may lag by 24-48 hours, which limits real-time triage
  • Performance diagnostics require a build ID, and the skill does not describe crash log symbolication
When to use it

Use it when a TestFlight build is producing crashes, tester feedback, or performance issues that need to be triaged and prioritized quickly.

When not to use it

Avoid it for analyzing production App Store crashes through Xcode Organizer or for obtaining fully symbolicated stack traces, which this skill does not cover.

Security analysis

Safe
Quality score87/100

The skill is purely a read-only triage workflow: it documents invocations of the `asc` CLI to list crashes, beta feedback, and performance diagnostics, plus a local download to ./metrics.json. There are no destructive commands, no piping of remote content into a shell, no credential/token handling, no obfuscated payloads, and no attempts to disable safety controls. Declared allowed-tools is empty and nothing in the text escalates privileges beyond the user's existing `asc` authentication.

No concerns found

How this analysis is made

Examples

Triage recent TestFlight crashes
My TestFlight build keeps crashing. Pull the 10 most recent crash reports for app ID 1234567890 and summarize them by crash signature, affected build, and device model.
Summarize beta feedback
Fetch the latest TestFlight feedback for com.example.app including screenshots and tell me the top recurring complaints from beta testers.
Check hangs on latest build
Using asc, find the latest iOS build for my app, list its HANGS performance diagnostics, and show me the heaviest signatures with their logs.

name: asc-crash-triage description: 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.

asc crash triage

Use this skill to fetch, analyze, and summarize TestFlight crash reports, beta feedback, and performance diagnostics.

Workflow

  1. Resolve the app ID if not provided (use asc apps list).
  2. Fetch data with the appropriate command.
  3. Parse JSON output and present a human-readable summary.

TestFlight crash reports

List recent crashes (newest first):

  • asc testflight crashes list --app "APP_ID" --sort -createdDate --limit 10
  • Filter by build: asc testflight crashes list --app "APP_ID" --build "BUILD_ID" --sort -createdDate --limit 10
  • Filter by device/OS: asc testflight crashes list --app "APP_ID" --device-model "iPhone16,2" --os-version "18.0"
  • All crashes: asc testflight crashes list --app "APP_ID" --paginate
  • Table view: asc testflight crashes list --app "APP_ID" --sort -createdDate --limit 10 --output table

TestFlight beta feedback

List recent feedback (newest first):

  • asc testflight feedback list --app "APP_ID" --sort -createdDate --limit 10
  • With screenshots: asc testflight feedback list --app "APP_ID" --sort -createdDate --limit 10 --include-screenshots
  • Filter by build: asc testflight feedback list --app "APP_ID" --build "BUILD_ID" --sort -createdDate
  • All feedback: asc testflight feedback list --app "APP_ID" --paginate

Performance diagnostics (hangs, disk writes, launches)

Requires a build ID. Resolve via asc builds info --app "APP_ID" --latest --platform IOS or asc builds list --app "APP_ID" --sort -uploadedDate --limit 5.

  • List diagnostic signatures: asc performance diagnostics list --build "BUILD_ID"
  • Filter by type: asc performance diagnostics list --build "BUILD_ID" --diagnostic-type "HANGS"
    • Types: HANGS, DISK_WRITES, LAUNCHES
  • View logs for a signature: asc performance diagnostics view --id "SIGNATURE_ID"
  • Download all metrics: asc performance download --build "BUILD_ID" --output ./metrics.json

Resolving IDs

  • App ID from name: asc apps list --name "AppName" or asc apps list --bundle-id "com.example.app"
  • Latest build ID: asc builds info --app "APP_ID" --latest --platform IOS
  • Recent builds: asc builds list --app "APP_ID" --sort -uploadedDate --limit 5
  • Set default: export ASC_APP_ID="APP_ID"

Summary format

When presenting results, organize by severity and frequency:

  1. Total count — how many crashes/feedbacks in the result set.
  2. Top crash signatures — group by exception type or crash reason, ranked by count.
  3. Affected builds — which build versions are impacted.
  4. Device & OS breakdown — most affected device models and OS versions.
  5. Timeline — when crashes started or spiked.

For performance diagnostics, highlight the highest-weight signatures first.

Notes

  • Default output is JSON; use --output table or --output markdown for quick human review.
  • Use --paginate to fetch all pages when doing a full analysis.
  • Use --pretty with JSON for debugging command output.
  • Crash data from App Store Connect may have 24-48h delay.

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/testflight-crash-triage-ms47vqjm' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/testflight-crash-triage-ms47vqjm/download' --output '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md.part' && mv '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md.part' '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && test -s '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/asc-crash-triage' && cp -R '.skill-downloads/testflight-crash-triage-ms47vqjm' '.claude/skills/asc-crash-triage'

Cursor
test -f '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && test -s '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/asc-crash-triage' && cp -R '.skill-downloads/testflight-crash-triage-ms47vqjm' '.cursor/skills/asc-crash-triage'

Codex
test -f '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && test -s '.skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/asc-crash-triage' && cp -R '.skill-downloads/testflight-crash-triage-ms47vqjm' '.agents/skills/asc-crash-triage'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/testflight-crash-triage-ms47vqjm'

openskills read 'testflight-crash-triage-ms47vqjm'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/testflight-crash-triage-ms47vqjm/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills