subwave-app-ios-release

Builds and submits iOS binaries to TestFlight via EAS with App Store promotion guidance.

1.3k|113|Updated May 11, 2026
One-click install
npx skills add https://github.com/perminder-klair/subwave --skill subwave-app-ios-release
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: subwave-app-ios-release
Source: https://github.com/perminder-klair/subwave/tree/main/.claude/skills/subwave-app-ios-release
Command: npx skills add https://github.com/perminder-klair/subwave --skill subwave-app-ios-release

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires eas-cli.

What problem does it solve?

Releasing a new iOS build of the SUB/WAVE Expo app involves knowing when a binary is actually needed versus an OTA update, running the correct EAS commands from the right directory, and handling the manual App Store promotion step. This Skill encodes that entire release procedure so a fresh build reaches TestFlight with one command and no re-setup.

Core Features & Use Cases

  • One-command release: Runs eas build --platform ios --profile production --auto-submit --non-interactive from the app/ directory to build in the cloud and submit to TestFlight.
  • OTA vs. binary decision logic: Distinguishes JS-only changes (ship via eas update on the production channel) from native changes (dependency upgrades, patches/, config plugins) that require a new binary, using the fingerprint runtime version policy.
  • App Store promotion workflow: Guides the manual App Store Connect step of attaching the processed build to a new version, including the mandatory expo.version bump for public releases of the live app.
  • Use Case: After merging a fix that touched a native dependency, ask the assistant to cut a new iOS release; it bumps expo.version in app.json, runs the EAS build with auto-submit, and tells you when to promote the processed build in App Store Connect.

Quick Start

Ask the assistant to cut a new iOS release and push it to TestFlight using the EAS production profile.

Frequently Asked Questions about subwave-app-ios-release

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

FAQPage Schema
How do I submit a new iOS build to TestFlight with EAS?

Run eas build --platform ios --profile production --auto-submit --non-interactive from the directory containing eas.json. EAS increments the build number, builds the .ipa in the cloud, and submits it to App Store Connect automatically.

When do I need a new iOS binary instead of an EAS OTA update?

JS-only changes like components, styles, and logic ship via eas update on the production channel. A new binary is required only when native inputs change, such as dependency upgrades, patches, config plugins, or app.json ios sections.

Does EAS auto-submit release the app to the public App Store?

No, --auto-submit only delivers the build to TestFlight. Releasing to the public App Store is a manual App Store Connect step: create a new version, attach the processed build, and submit for review.

Why does EAS submit fail with 'already submitted this version'?

Apple rejects submissions when the CFBundleShortVersionString matches an already-released App Store version. Bump expo.version in app.json, commit, and rebuild; the build number still auto-increments remotely.

Can I run eas build without blocking my terminal session?

Yes, add --no-wait to queue the build and return immediately, then monitor with eas build:view <BUILD_ID>. Note that --no-wait skips auto-submit, so submit afterwards with eas submit --id <BUILD_ID>.