Expo App Clip Builder
Configure an iOS App Clip for an Expo app and launch it from web URLs.
The document discloses Apple Developer, EAS-plan, HTTPS AASA, credential, and associated-domain dependencies and shows permission configuration. However, it instructs the agent to log in, configure credentials, deploy a website, and submit to TestFlight without stepwise confirmation, least-privilege boundaries, rollback guidance, or sensitive-data handling, so points are deducted.
The workflow is generally internally consistent across target creation, AASA setup, building, and submission. However, this is a static review with no key-path tests or execution evidence, and CLI-version assumptions, account-permission failures, configuration errors, and abnormal-input diagnostics are thin; the score is conservatively limited by the static cap.
Trigger terms, intended audience, and App Clip scenarios are clear, covering AASA, Smart App Banners, and TestFlight. Fit is narrower because it assumes iOS, Expo Router, Bun/EAS, and Apple services, while non-fit boundaries, version boundaries, and Chinese-language support are not specified; the core flow also depends on Apple/EAS reachability, so points are deducted.
The skill uses a progressive numbered workflow with requirements, examples, references, a repository license, and repository-level CI signals. It lacks skill-specific versioning, changelog, explicit maintenance ownership, dependency versions, and systematic troubleshooting, with important assumptions left in commands and placeholders, so points are deducted.
The material covers the intended path from target creation through AASA, metadata, deployment, TestFlight, and store configuration and could serve as a usable checklist. Static review cannot verify that the commands and configuration work with the assessed revision, and the user must still supply account, domain, identifier, image, and project-specific details; the score is therefore limited to the static maximum.
The skill links to Apple, Expo, EAS, and related tool documentation, and repository CI checks skill limits and plugin versions. It contains no skill-specific tests, successful build records, or independent reproduction evidence, so key claims remain primarily documentary and the score is conservative.
- Running bunx setup-safari, bunx testflight, eas deploy, and eas metadata:push may create or modify Apple/EAS resources; confirm the account, project, bundle IDs, domain, and release environment at each step and prepare rollback options.
- AASA, associated domains, Bundle ID, Team ID, iTunes ID, and Smart App Banner values must all replace placeholders; the skill provides no failure-validation matrix or compatibility table.
- The workflow depends on Apple Developer, App Store Connect, EAS, and an HTTPS host; core steps may be unreachable from mainland-China networks or unusable without the required Apple account and EAS plan.
What does this skill do, and when should you use it?
This open-source skill from the Expo Skills collection helps add an iOS App Clip target to an Expo application. It covers parent and Clip bundle identifiers, associated domains, the Apple App Site Association file, Smart App Banners, EAS deployment, TestFlight, and App Store metadata. The Clip lives in targets/clip/ and can be invoked from a URL on the app’s domain. Shipping requires Apple Developer Program membership, App Store review, and an AASA file served over HTTPS.
Guides configuration of bundleIdentifier, appleTeamId, and associatedDomains in app.json; runs bun create target clip to add the App Clip target and configuration files; uses bunx setup-safari to register bundle IDs, create an App Store Connect entry, and print setup values; creates and hosts .well-known/apple-app-site-association; updates the Expo Router HTML shell with a Smart App Banner; inspects the parent app configuration to mirror permissions; runs bunx testflight to configure credentials, build, upload, and schedule a TestFlight submission; uses eas metadata:pull and eas metadata:push for App Clip store metadata; and optionally creates a local Expo module to detect App Clip context.
- An Expo developer wants a lightweight iOS App Clip launched from a URL and shipped alongside the full app.
- A team needs to configure applinks, appclips, associated domains, and an AASA file for an Expo project.
- A project needs a guided path from App Clip target creation through EAS build, TestFlight, and store metadata submission.
- A developer needs to mirror parent-app permissions or request temporary notifications and location confirmation in the Clip.
What are this skill's strengths and limitations?
- Covers the workflow from Clip target creation and domain association through TestFlight and store metadata.
- Includes concrete Expo, Swift, Info.plist, HTML, and JSON examples.
- States important prerequisites including Apple Developer membership, App Store review, HTTPS hosting, and EAS build-minute usage.
- Includes an optional native detection module for prompting users to install the full app.
- It is specifically for iOS App Clips and does not cover Android or general Expo development.
- Shipping requires Apple Developer Program membership and App Store review.
- The AASA file must be available over HTTPS, and EAS builds or bunx testflight may consume plan build minutes.
- The source does not describe an automated test suite or a verified platform compatibility matrix.
How do you install this skill?
This skill is located at plugins/expo/skills/expo-app-clip/SKILL.md in the expo/skills repository. The README documents installing the entire collection with npx skills@latest add expo/skills --skill '*' or installing the Codex plugin with codex plugin add expo@openai-curated. The source does not document a standalone installation command for only expo-app-clip.
How do you use this skill?
After installation, ask an agent something like: “Add an iOS App Clip to this Expo app, including AASA and Smart App Banner configuration.” Depending on the project, the documented workflow uses commands such as bun create target clip, bunx setup-safari, bunx expo customize src/app/+html.tsx, bunx expo export -p web, eas deploy --prod, bunx testflight, eas metadata:pull, and eas metadata:push.
How does this skill compare with similar options?
The README identifies Expo documentation, Expo CLI, and EAS CLI as the sources of truth. This skill helps an agent apply that guidance; it does not replace the official documentation or CLI tools.