tddworks/asc-cli-skills

asc-testflight

Manage TestFlight beta groups and testers using the `asc` CLI tool. Use this skill when: (1) Listing beta groups for an app (`asc testflight groups list`) (2) Creating internal or external beta groups (`asc testflight groups create --internal`) (3) Listing testers in a group (`asc testflight testers list --group-id <id>`) (3) Adding a single tester by email (`asc testflight testers add`) (4) Removing a tester from a group (`asc testflight testers remove`) (5) Bulk-importing testers from a CSV f…

First seen Mar 14, 2026

Installation

$ npx skills add tddworks/asc-cli-skills --skill asc-testflight

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from tddworks/asc-cli-skills · top by installs.

npx skills add tddworks/asc-cli-skills

Browse all from tddworks/asc-cli-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 3
License MIT
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,716 B
  • docs SUMMARY.md 796 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 67 installs

SKILL.md

TestFlight Beta Tester Management with asc

Manage beta groups and testers for your TestFlight distribution.

Authentication

Set up credentials before any TestFlight commands:

asc auth login --key-id <id> --issuer-id <id> --private-key-path ~/.asc/AuthKey.p8

CAEOAS — Affordances Guide Next Steps

Every JSON response includes "affordances" with ready-to-run commands:

BetaGroup affordances:

{
  "id": "g-abc123",
  "appId": "6450406024",
  "name": "External Beta",
  "affordances": {
    "listTesters":   "asc testflight testers list   --group-id g-abc123",
    "importTesters": "asc testflight testers import --group-id g-abc123 --file testers.csv",
    "exportTesters": "asc testflight testers export --group-id g-abc123"
  }
}

BetaTester affordances:

{
  "id": "t-xyz789",
  "groupId": "g-abc123",
  "email": "[email protected]",
  "affordances": {
    "listSiblings": "asc testflight testers list   --group-id g-abc123",
    "remove":       "asc testflight testers remove --group-id g-abc123 --tester-id t-xyz789"
  }
}

Copy affordance commands directly — no need to look up IDs.

Resolve App ID

See [project-context.md](../shared/project-context.md) — check .asc/project.json before asking the user or running asc apps list.

Typical Workflow

APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')
# If empty: ask user or run `asc apps list | jq -r '.data[0].id'`

# 1. Find beta groups for an app
asc testflight groups list --app-id "$APP_ID" --pretty

# 2. List testers in a group (copy affordance "listTesters" from step 1)
asc testflight testers list --group-id g-abc123 --pretty

# 3. Add a single tester
asc testflight testers add \
  --group-id g-abc123 \
  --email [email protected] \
  --first-name Jane \
  --last-name Doe

# 4. Remove a tester (copy affordance "remove" from tester JSON)
asc testflight testers remove --group-id g-abc123 --tester-id t-xyz789

# 5. Bulk import from CSV (header row required: email,firstName,lastName)
asc testflight testers import --group-id g-abc123 --file testers.csv

# 6. Export to CSV (pipe to file or use redirect)
asc testflight testers export --group-id g-abc123 > testers.csv

# 7. Clone a group's testers to a new group
asc testflight testers export --group-id g-abc123 > testers.csv
asc testflight testers import --group-id g-new456 --file testers.csv

CSV Format

Import/export CSV — header row required, firstName and lastName are optional:

email,firstName,lastName
[email protected],Jane,Doe
[email protected],John,Smith
[email protected],,

Output Flags

--pretty          # Pretty-print JSON
--output table    # Table format
--output markdown # Markdown table

Full Command Reference

See [commands.md](references/commands.md) for all flags, filters, and examples.