tddworks/asc-cli-skills

asc-app-clips

Manage App Clips and App Clip default experiences using the `asc` CLI tool. Use this skill when: (1) Listing App Clips for an app: "asc app-clips list --app-id ID" (2) Listing default experiences for an App Clip: "asc app-clip-experiences list --app-clip-id ID" (3) Creating a default experience: "asc app-clip-experiences create --app-clip-id ID [--action OPEN|VIEW|PLAY]" (4) Deleting a default experience: "asc app-clip-experiences delete --experience-id ID" (5) Listing experience localizations:…

First seen Mar 14, 2026

Installation

$ npx skills add tddworks/asc-cli-skills --skill asc-app-clips

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 6,902 B
  • docs SUMMARY.md 1,017 B

History

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

SKILL.md

App Clips with asc

Manage App Clips, their default experiences, and locale-specific card content through the App Store Connect API.

Authentication

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

How to Navigate (CAEOAS Affordances)

Every JSON response contains an "affordances" field with ready-to-run commands — IDs already filled in. Start from the App Clip and navigate to experiences and localizations.

{
  "id": "clip-abc",
  "appId": "6443417124",
  "bundleId": "com.example.MyApp.Clip",
  "affordances": {
    "listAppClips": "asc app-clips list --app-id 6443417124",
    "listExperiences": "asc app-clip-experiences list --app-clip-id clip-abc"
  }
}

Typical Workflow

Set up an App Clip experience with localizations

# 1. Find the App Clip for your app
asc app-clips list --app-id 6443417124 --pretty

# 2. Create a default experience (copy --app-clip-id from the listExperiences affordance)
asc app-clip-experiences create \
  --app-clip-id clip-abc \
  --action OPEN \
  --pretty

# 3. Add an English localization (copy --experience-id from the listLocalizations affordance)
asc app-clip-experience-localizations create \
  --experience-id exp-xyz \
  --locale en-US \
  --subtitle "Order faster with your loyalty card" \
  --pretty

# 4. Add a French localization
asc app-clip-experience-localizations create \
  --experience-id exp-xyz \
  --locale fr-FR \
  --subtitle "Commandez plus vite avec votre carte" \
  --pretty

# 5. Review all localizations
asc app-clip-experience-localizations list --experience-id exp-xyz --output table

View all App Clip content at a glance

CLIP_ID=$(asc app-clips list --app-id APP_ID | jq -r '.data[0].id')
asc app-clip-experiences list --app-clip-id "$CLIP_ID" --output table

EXP_ID=$(asc app-clip-experiences list --app-clip-id "$CLIP_ID" | jq -r '.data[0].id')
asc app-clip-experience-localizations list --experience-id "$EXP_ID" --output table

Commands

asc app-clips list

List all App Clips for an app.

Flag Required Description
--app-id yes App Store Connect app ID
`--output table\ json` no Output format (default: json)
--pretty no Pretty-print JSON
asc app-clips list --app-id 6443417124 --pretty
asc app-clips list --app-id 6443417124 --output table

asc app-clip-experiences list

List default experiences for an App Clip.

Flag Required Description
--app-clip-id yes App Clip ID
`--output table\ json` no Output format
--pretty no Pretty-print JSON
asc app-clip-experiences list --app-clip-id clip-abc --pretty

asc app-clip-experiences create

Create a default experience for an App Clip.

Flag Required Description
--app-clip-id yes App Clip ID
--action no OPEN, VIEW, or PLAY
`--output table\ json` no Output format
--pretty no Pretty-print JSON
asc app-clip-experiences create --app-clip-id clip-abc --action OPEN --pretty
asc app-clip-experiences create --app-clip-id clip-abc  # no action

asc app-clip-experiences delete

Delete a default experience.

Flag Required Description
--experience-id yes Experience ID to delete
asc app-clip-experiences delete --experience-id exp-xyz

asc app-clip-experience-localizations list

List localizations for a default experience.

Flag Required Description
--experience-id yes Experience ID
`--output table\ json` no Output format
--pretty no Pretty-print JSON
asc app-clip-experience-localizations list --experience-id exp-xyz --pretty

asc app-clip-experience-localizations create

Create a localization for a default experience. Each locale gets its own subtitle shown in the App Clip card.

Flag Required Description
--experience-id yes Experience ID
--locale yes Locale code (e.g. en-US, fr-FR, zh-Hans)
--subtitle no Subtitle shown in the App Clip card
`--output table\ json` no Output format
--pretty no Pretty-print JSON
asc app-clip-experience-localizations create \
  --experience-id exp-xyz \
  --locale en-US \
  --subtitle "Order faster with your loyalty card"

asc app-clip-experience-localizations delete

Delete a localization.

Flag Required Description
--localization-id yes Localization ID to delete
asc app-clip-experience-localizations delete --localization-id loc-abc

Domain Models

AppClip — An App Clip linked to an app

  • id — App Clip ID
  • appId — parent App ID (injected from request, not returned by API)
  • bundleId — App Clip bundle identifier (omitted from JSON if nil)
  • Affordances: listAppClips, listExperiences

AppClipDefaultExperience — How an App Clip is invoked

  • id — experience ID
  • appClipId — parent App Clip ID (injected)
  • action — OPEN, VIEW, or PLAY (omitted from JSON if nil)
  • Affordances: delete, listExperiences, listLocalizations

AppClipDefaultExperienceLocalization — Locale-specific App Clip card content

  • id — localization ID
  • experienceId — parent experience ID (injected)
  • locale — locale code (e.g. en-US)
  • subtitle — subtitle shown in the App Clip card (omitted from JSON if nil)
  • Affordances: delete, listLocalizations

Full Command Reference

See [commands.md](../asc-cli/references/commands.md) for all flags and examples.