Other

/eas-prebuild-check

Validate Expo iOS/Android sync before first EAS build. Triggers: eas build, prebuild, credentials.

$ golems-cli skills install eas-prebuild-check

Updated 2 weeks ago

Mission: catch the 9 pain points that wasted 2+ hours on MeHayom Sprint 2 (April 8, 2026) BEFORE they waste any more time on future builds.

What it does

Runs 9 discrete checks against an Expo project, each reporting PASS / FAIL / WARN / SKIP / INFO with specific remediation commands.

#CheckPrevents
1.easignore exists and excludes node_modules, .expo, build dirs2.1GB archive upload (real: MeHayom first attempt)
2Archive size estimate < 100MBConcurrency waste, slow uploads
3eas-cli is latestWarnings + compat bugs
4Bundle ID not a suspicious default (e.g., com.yourname.fromtoday)Building under wrong App Store ID
5version, ios.buildNumber, android.versionCode present and consistentApple Connect conflicts, re-submit blockers
6At least 1 iOS device registered (for preview ad-hoc builds)"No registered devices" blocker
7iOS credentials (cert + provisioning profile) pre-syncedMid-build Apple 2FA surprises
8Android keystore ready (or EAS-managed configured)Mid-build keystore prompt
9Concurrency awareness (free vs paid tier)Surprise serial queue

Bonus warnings: P8 APNs key presence (if push enabled), active eas whoami matches app.json owner, managed vs bare workflow detection.

When to use

  • Before the first EAS build on any new Expo project
  • After major dependency changes (new native modules, Expo SDK bumps)
  • When switching branches that touch app.json or native projects
  • When inheriting someone else's Expo project
  • Before a production build (to catch version drift)

Do NOT use for: debugging an in-progress build (use eas build:inspect), post-build validation, or issues unrelated to EAS submission.

Usage

# Run all checks for both platforms, preview profile (default)
/eas-prebuild-check
 
# Scope to iOS or Android
/eas-prebuild-check --platform ios
/eas-prebuild-check --platform android
 
# Auto-fix safe items (writes .easignore, prompts for eas-cli upgrade)
/eas-prebuild-check --fix
 
# Production profile (skips device-registration check)
/eas-prebuild-check --profile production
 
# Machine-readable JSON output for CI/CD
/eas-prebuild-check --json

Exit codes:

  • 0 — all checks pass (or only WARN/INFO)
  • 1 — at least one FAIL (do NOT run eas build)
  • 2 — script error (missing eas-cli, not in an Expo project)