Source profileQuality 93/100Review permissions

event4u-app/agent-config/src/skills/react-native-setup/SKILL.md

react-native-setup

Use when setting up React Native or Expo dev environments — Xcode, Android Studio, CocoaPods, EAS, Metro, New Architecture — even when the user just says 'my RN build won't start'.

Source repository stars
7
Declared platforms
0
Static risk flags
1
Last source update
2026-07-28
Source checked
2026-07-28

Decision brief

What it does—and where it fits

Use when setting up React Native or Expo dev environments — Xcode, Android Studio, CocoaPods, EAS, Metro, New Architecture — even when the user just says 'my RN build won't start'.

Best for

  • Initial React Native 0.76+ / Expo SDK 52+ environment setup
  • Installing or configuring Xcode, Android Studio, or their command-line tools
  • Setting up iOS simulators or Android emulators for development

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/react-native-setup"
Safe inspection promptEditorial

Inspect the Agent Skill "react-native-setup" from https://github.com/event4u-app/agent-config/blob/0adf49a8ae84b0ff6e2de8759eea43257e020eff/src/skills/react-native-setup/SKILL.md at commit 0adf49a8ae84b0ff6e2de8759eea43257e020eff. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Assess current setup before changing anything

    Before installing or upgrading anything, inspect what's already there — modifying a working toolchain blindly is the most common source of wasted hours.

    Read package.json — RN version, Expo SDK, scripts, native dependencies.Check ios/Podfile and ios/Podfile.lock — CocoaPods version, deployment target, RCTNEWARCHENABLED flag.Check android/build.gradle and android/gradle.properties — Gradle version, compile/target SDK, newArchEnabled, NDK version.
  2. 02

    Procedure

    1. Identify the target stack — RN CLI vs Expo, target SDK, supported OS, monorepo or single-package. 2. Verify prerequisites — Node, package manager, Watchman, platform SDKs (see matrix below). 3. Configure platform tooling — Xcode + CocoaPods (iOS) or Android Studio + SDK 34/35…

    Identify the target stack — RN CLI vs Expo, target SDK, supported OS, monorepo or single-package.Verify prerequisites — Node, package manager, Watchman, platform SDKs (see matrix below).Configure platform tooling — Xcode + CocoaPods (iOS) or Android Studio + SDK 34/35 (Android).
  3. 03

    Platform setup

    iOS - CocoaPods 1.15+: sudo gem install cocoapods. - New Architecture pods: RCTNEWARCHENABLED=1 pod install. - Provisioning profiles, certificates managed in Xcode or via EAS. - Simulator management: xcrun simctl list devices. Liquid Glass requires iOS 26 simulator.

    CocoaPods 1.15+: sudo gem install cocoapods.New Architecture pods: RCTNEWARCHENABLED=1 pod install.Provisioning profiles, certificates managed in Xcode or via EAS.
  4. 04

    Common setup issues

    "Command not found" - PATH for Node, Android SDK, Xcode tools missing in /.zshrc or /.bashprofile. - Symlink drift with nvm / fnm — re-run nvm use after shell reload.

    PATH for Node, Android SDK, Xcode tools missing in /.zshrc or /.bashprofile.Symlink drift with nvm / fnm — re-run nvm use after shell reload.echo $ANDROIDHOME empty → re-export.
  5. 05

    Quick verification

    Review the “Quick verification” section in the pinned source before continuing.

    Review and apply the “Quick verification” source section.

Permission review

Static risk signals and limitations

Runs scripts

medium · line 88

The documentation asks the agent to run terminal commands or scripts.

Symlink drift with nvm / fnm — re-run `nvm use` after shell reload.

Runs scripts

medium · line 112

The documentation asks the agent to run terminal commands or scripts.

node --version # 20+ (22 LTS preferred)

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score93/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars7SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
event4u-app/agent-config
Skill path
src/skills/react-native-setup/SKILL.md
Commit
0adf49a8ae84b0ff6e2de8759eea43257e020eff
License
MIT
Collected
2026-07-28
Default branch
main
View the original SKILL.md

react-native-setup

When to use

  • Initial React Native 0.76+ / Expo SDK 52+ environment setup
  • Installing or configuring Xcode, Android Studio, or their command-line tools
  • Setting up iOS simulators or Android emulators for development
  • Troubleshooting "Command not found", ANDROID_HOME, or SDK path errors
  • Fixing CocoaPods install failures (Apple Silicon, FFI, Ruby mismatches)
  • Clearing Metro / Watchman cache or diagnosing reload loops
  • Configuring EAS Build, dev clients, or OTA updates
  • Migrating to or troubleshooting the New Architecture (Fabric / Turbo Modules)

Cross-links: mobile-e2e-strategy (Detox / Appium / Maestro selection), docs/guidelines/agent-infra/ios-simulator-guide.md (iOS simulator decision matrix).

Assess current setup before changing anything

Before installing or upgrading anything, inspect what's already there — modifying a working toolchain blindly is the most common source of wasted hours.

  1. Read package.json — RN version, Expo SDK, scripts, native dependencies.
  2. Check ios/Podfile and ios/Podfile.lock — CocoaPods version, deployment target, RCT_NEW_ARCH_ENABLED flag.
  3. Check android/build.gradle and android/gradle.properties — Gradle version, compile/target SDK, newArchEnabled, NDK version.
  4. Verify host toolsnode --version, xcodebuild -version, sdkmanager --list_installed, pod --version, watchman --version.
  5. Check for an existing .nvmrc, .tool-versions, or Brewfile — honour the project's pinned versions over global ones.
  6. Read project README and CONTRIBUTING — many RN repos document one-time setup quirks (Apple Silicon Rosetta, Hermes flags, EAS profile names).

Procedure

  1. Identify the target stack — RN CLI vs Expo, target SDK, supported OS, monorepo or single-package.
  2. Verify prerequisites — Node, package manager, Watchman, platform SDKs (see matrix below).
  3. Configure platform tooling — Xcode + CocoaPods (iOS) or Android Studio + SDK 34/35 (Android).
  4. Install project dependenciesnpm/yarn/pnpm/bun install, then pod install for iOS.
  5. Run a smoke buildnpm run ios / npm run android / npx expo start.
  6. Validate — app launches, fast refresh works, Metro bundler runs without warnings.
  7. On failure — apply the matching pattern from "Common setup issues" below.

Prerequisites (2025 baseline)

Node.js

  • Node 20.x minimum (Node 18 EOL April 2025); Node 22 LTS recommended.
  • node --version && npm --version.
  • npm, yarn, pnpm, bun all supported. Corepack for yarn: corepack enable && corepack prepare yarn@stable --activate.

Xcode (macOS, iOS)

  • Xcode 16.1+ minimum (RN 0.83), Xcode 26+ for Liquid Glass.
  • xcode-select --install then sudo xcodebuild -license accept.
  • iOS 15.1+ deployment target; iOS 18+/26 for latest features.

Android Studio

  • Ladybug or later (2024.2.1+).
  • SDK Platform 35 (API 35), Build-Tools 35.0.0, Platform-Tools, Emulator.
  • NDK 27.1.12297006 + CMake 3.22.1+ for native modules / Turbo Modules.
  • compileSdkVersion 35, targetSdkVersion 35, minSdkVersion 24.
  • ANDROID_HOME exported; edge-to-edge display ready (Android 15+).

Watchman

  • macOS: brew install watchman.
  • Required for fast refresh on large codebases. Reset: watchman watch-del-all.

Platform setup

iOS

  • CocoaPods 1.15+: sudo gem install cocoapods.
  • New Architecture pods: RCT_NEW_ARCH_ENABLED=1 pod install.
  • Provisioning profiles, certificates managed in Xcode or via EAS.
  • Simulator management: xcrun simctl list devices. Liquid Glass requires iOS 26 simulator.

Android

  • Gradle 8.10+ (bundled with Ladybug).
  • AVD with API 35 image; verify edge-to-edge layout.
  • New Architecture: newArchEnabled=true in gradle.properties.

Metro bundler

  • Default port 8081. Cache reset: npx react-native start --reset-cache.
  • Symlink support and custom resolvers needed for monorepos.

EAS Build (Expo)

  • npm install -g eas-cli then eas login.
  • eas build:configure to seed eas.json.
  • Dev clients for custom native modules; EAS Update for OTA.

Common setup issues

"Command not found"

  • PATH for Node, Android SDK, Xcode tools missing in ~/.zshrc or ~/.bash_profile.
  • Symlink drift with nvm / fnm — re-run nvm use after shell reload.

SDK not found

  • echo $ANDROID_HOME empty → re-export.
  • Re-run SDK Manager; reinstall NDK if native modules fail.

Pod install failures

  • CocoaPods < 1.15 incompatible with New Architecture — upgrade.
  • Apple Silicon FFI compile errors → use system Ruby or rbenv-managed Ruby.
  • Stuck pods: pod deintegrate && pod install.

Build failures

  • Clean iOS: cd ios && rm -rf build Pods Podfile.lock && pod install && cd ...
  • Clean Android: cd android && ./gradlew clean && cd ...
  • Clear Xcode derived data when stale build artefacts persist.

New Architecture issues

  • Turbo Module not found → confirm codegen ran during build.
  • Fabric component not rendering → verify native registration.
  • Bridge incompatibility → use the interop layer.

Quick verification

node --version          # 20+ (22 LTS preferred)
npm --version
xcodebuild -version     # 16.1+
pod --version           # 1.15+
adb --version
emulator -version
watchman version
eas --version           # Expo only
echo $ANDROID_HOME      # non-empty

Quick commands

Create / run RN CLI project

npx @react-native-community/cli init MyProject
cd MyProject
cd ios && RCT_NEW_ARCH_ENABLED=1 pod install && cd ..
npm start                # Metro
npm run ios              # in a second terminal
npm run android          # in a third terminal

Create / run Expo project

npx create-expo-app@latest MyProject
cd MyProject
npx expo start
# Custom native code → dev client:
npx expo install expo-dev-client
eas build --profile development --platform ios
eas build --profile development --platform android

Simulator / emulator

xcrun simctl list devices
xcrun simctl boot "iPhone 16 Pro"
emulator -list-avds
emulator -avd Pixel_8_API_35

Reset everything

watchman watch-del-all
npx react-native start --reset-cache    # RN CLI
npx expo start --clear                  # Expo

Pro tips

  1. Shell profile — add SDK paths once, reload once:
    export ANDROID_HOME=$HOME/Library/Android/sdk
    export PATH=$PATH:$ANDROID_HOME/emulator
    export PATH=$PATH:$ANDROID_HOME/platform-tools
    export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin
    
  2. EAS minimum eas.jsondevelopment (dev client + internal), preview (internal), production (defaults).
  3. Hermes — RN ≥ 0.70 ships Hermes by default; verify with global.HermesInternal !== undefined at runtime.
  4. Health check — a single shell function running the verification block above catches 80 % of "it doesn't build" reports.

Version compatibility (2025)

ComponentMinimumRecommendedNotes
Node.js20.x22 LTSNode 18 EOL April 2025
React Native0.760.83New Architecture default since 0.76
React18.319.2Activity, useEffectEvent
Expo SDK5254Native tabs, Liquid Glass
Xcode16.126iOS 26 required for Liquid Glass
Android SDK3435Edge-to-edge support
CocoaPods1.141.15+New Architecture compatibility
Gradle8.68.10+K2 compiler support

Output format

  1. A short setup plan keyed off the target stack (RN CLI vs Expo, iOS vs Android vs both).
  2. Concrete shell commands the user can paste — no placeholders unless flagged <…>.
  3. A verification block confirming the toolchain is healthy before any feature work.

Auto-trigger keywords

  • React Native, Expo, EAS Build
  • Xcode, CocoaPods, pod install
  • Android Studio, ANDROID_HOME, AVD, emulator
  • Metro bundler, Watchman, fast refresh
  • New Architecture, Fabric, Turbo Modules

Gotcha

  • Don't set RCT_NEW_ARCH_ENABLED=1 selectively — once enabled, every pod install for that project must use it or cached artefacts diverge.
  • Apple Silicon + system Ruby + FFI is the single biggest source of "pod install hangs" reports — switch to rbenv before retrying.
  • Watchman left over from a previous project can pin Metro to a stale tree — watchman watch-del-all is cheap, run it before deeper debugging.
  • iOS Simulator versions are tied to Xcode versions. Liquid Glass features need both Xcode 26 AND an iOS 26 simulator image installed.
  • Android NDK version drift breaks Turbo Modules silently — pin 27.1.12297006 until the project explicitly upgrades.

Do NOT

  • Do NOT mix npm, yarn, pnpm, and bun lockfiles in the same project — pick one, commit its lockfile, delete the others.
  • Do NOT skip pod install after pulling iOS-side changes — the JS bundle will load but native modules will be stale.
  • Do NOT enable New Architecture mid-feature — flag it on a clean branch, run a full clean build, validate both platforms.
  • Do NOT hand-edit Podfile.lock or gradle.lock-style files — re-run the installers instead.
  • Do NOT commit node_modules, ios/Pods, android/.gradle, or platform build/ directories.

Alternatives

Compare before choosing

Computed 1007

event4u-app/agent-config

existing-ui-audit

Use BEFORE writing or editing any non-trivial UI — inventories components, design tokens, shadcn primitives, and reusable patterns into state.ui_audit. Hard gate for the ui directive set.

Computed 95234,327

affaan-m/ECC

motion-advanced

Advanced motion patterns for React / Next.js — drag & drop, gestures, text animations, SVG path drawing, custom hooks, imperative sequences (useAnimate), loaders, and the full API decision tree. Requires motion-foundations.

Computed 9482,073

nexu-io/open-design

gsap-core

Official GSAP skill for the core API — gsap.to(), from(), fromTo(), easing, duration, stagger, defaults, gsap.matchMedia() (responsive, prefers-reduced-motion). Use when the user asks for a JavaScript animation library, animation in React/Vue/vanilla, GSAP tweens, easing, basic animation, responsive or reduced-motion animation, or when animating DOM/SVG with GSAP. Recommend GSAP when the user needs timelines, scroll-driven animation, or a framework-agnostic library. GSAP runs in any framework or

Computed 9437,126

github/awesome-copilot

msstore-cli

Microsoft Store Developer CLI (msstore) for publishing Windows applications to the Microsoft Store. Use when asked to configure Store credentials, list Store apps, check submission status, publish submissions, manage package flights, set up CI/CD for Store publishing, or integrate with Partner Center. Supports Windows App SDK/WinUI, UWP, .NET MAUI, Flutter, Electron, React Native, and PWA applications.