eas-app-stores

Build and submit Expo apps to the iOS App Store, Google Play Store, and TestFlight using EAS.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/CYRUS-pinto/pi-bot --skill eas-app-stores-cyrus-pinto
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: eas-app-stores
Source: https://github.com/CYRUS-pinto/pi-bot/tree/main/.agents/skills/eas-app-stores
Command: npx skills add https://github.com/CYRUS-pinto/pi-bot --skill eas-app-stores-cyrus-pinto

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires eas-cli, and includes references (resource) components.

What problem does it solve? Shipping a mobile app to production involves juggling build profiles, store credentials, version numbers, and store listing metadata across Apple and Google. This Skill guides the entire EAS build-and-submit pipeline so Expo apps reach the App Store, Play Store, and TestFlight without manual console work. ## Core Features & Use Cases - Production Builds & Submission: Run eas build and eas submit with production profiles for iOS and Android, including one-command TestFlight releases via npx testflight. - Store Configuration: Configure eas.json build and submit profiles, Apple App Store Connect API keys, Google Play service accounts, release tracks, and staged rollouts. - Version & Metadata Management: Manage remote app versions and build numbers with autoIncrement, and maintain App Store metadata, keywords, and ASO via store.config.json with eas metadata:push. - Use Case: You are ready to ship your Expo app. Use this Skill to configure eas.json, build production binaries for both platforms, submit to TestFlight for beta testing, then promote to the App Store and Play Store with localized metadata. ## Quick Start Ask the assistant to build your Expo app for production and submit it to TestFlight and the Google Play internal track using EAS.

Frequently Asked Questions about eas-app-stores

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I submit an Expo app to the App Store with EAS?

Run eas build -p ios --profile production --submit to build and submit in one step. You need an Apple Developer account, an app record in App Store Connect, and credentials configured via eas credentials or an App Store Connect API key.

How to submit an Expo build to TestFlight?

Run npx testflight to build and submit to TestFlight with a single command. Set EXPO_APPLE_ID and EXPO_APPLE_TEAM_ID environment variables to skip interactive prompts on subsequent runs.

How do I set up Google Play Store submission with EAS?

Create a service account in Google Cloud Console, link it in Play Console API access with release permissions, and add serviceAccountKeyPath to the android submit profile in eas.json. The app must already exist in Play Console before the first submission.

Does EAS handle app version and build numbers automatically?

Yes. Set appVersionSource to remote and autoIncrement to true in eas.json, and EAS manages iOS build numbers and Android version codes automatically. You can inspect or override them with eas build:version:get and eas build:version:set.

Why does EAS submit fail with version code already used?

Google Play rejects uploads when the versionCode was already used in a previous submission. Enable autoIncrement in your eas.json build profile or manually increment versionCode in app.json before rebuilding.

Can I manage App Store metadata and keywords from code?

Yes, EAS Metadata uses a store.config.json file to manage titles, subtitles, keywords, descriptions, age ratings, and release settings. Run eas metadata:pull to fetch existing metadata and eas metadata:push to publish updates.