Android Beta - NowStack Mobile

SkillDev tools

Build a NowStack Mobile Android app and upload it to a Play testing track. Always check OS first: macOS may build locally; Windows/Linux must run ns-setup-expo and use EAS cloud.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Android Beta - NowStack Mobile skill

What this skill tells your AI

The instructions your AI receives, as published by melvynx/saveit.now in .agents/skills/ns-android-beta/SKILL.md and read by ahel’s review.

Take a NowStack Mobile app from local dev to an installable build on a Play testing track (internal first, then closed). This is the Android beta surface — the equivalent of iOS TestFlight. For the production release (promote to the production track + listing + staged rollout) use ns-android-distribute. The deep Google Play Console (gpc) tool reference is .agents/skills/ns-deploy-android-app/SKILL.md — read it for the upload/track commands. Run the steps here in order.

<platform_build_routing> Before choosing a build command, detect the OS:

uname -s || node -p "process.platform"
  • Darwin / darwin: local Android production builds are allowed if Android Studio/SDK/Gradle signing are ready. Prefer the local build path when available; EAS cloud is still allowed if the user explicitly wants it.
  • Linux, win32, or Windows PowerShell: do not attempt local Android production builds. Load/follow .agents/skills/ns-setup-expo/SKILL.md; verify eas-cli, eas whoami, a real easProjectId in site-config.ts, and cd mobile-app && npx expo-doctor. Then use EAS cloud to produce the signed .aab.
  • If Expo/EAS setup is incomplete on Windows/Linux, stop after fixing ns-setup-expo; do not continue to Play upload until the account and project link are green. </platform_build_routing>
cd mobile-app
npx eas-cli@latest build --platform android --profile production --non-interactive

On macOS, local builds are allowed when the Android SDK/toolchain is ready. Prefer the repo's local EAS build when avoiding cloud credits but still using EAS-managed Android signing:

cd mobile-app
npx eas-cli@latest build --platform android --profile production \
  --local --non-interactive --output /tmp/{slug}.aab

EAS manages the Android keystore (first build prompts to generate one; let EAS keep it). Download the .aab artifact when a cloud build reaches FINISHED, or use the explicit /tmp/{slug}.aab path from the local build. Do not use local Gradle production builds on Windows/Linux for this workflow.

<failure_modes>

  • Upload rejected: package name mismatch → the AAB package ≠ androidPackage in site-config.ts/Play listing.
  • App opens but can't reach backend → AAB built before eas.json had prod Convex URLs; rebuild.
  • Purchases fail in review → the Google managed product id doesn't match payment.productIds.google, or isn't activated.
  • Signing/keystore confusion → let EAS own the keystore; don't mix locally-generated and EAS keystores across builds.
  • Windows/Linux local build request → run ns-setup-expo and use EAS cloud; do not try to install Android Studio/Gradle signing for production release builds. </failure_modes>

<success_metrics>

  • Signed .aab for the correct package, pointing at the prod Convex deployment.
  • Uploaded to the internal track and installable by testers; purchase flow tested.
  • Hands off to ns-android-distribute for the production release (listing, Data safety, content rating, staged rollout). </success_metrics>

Signals

GitHub stars
31
Forks
5
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
ns-android-beta
Source
github.com/melvynx/saveit.now