All skills
callstackincubator avatar

/upgrading-react-native

@fa0bad0 official

Upgrades React Native apps to newer versions by applying rn-diff-purge template diffs, updating package.json dependencies, migrating native iOS and Android configuration, resolving CocoaPods and Gradle changes, and handling breaking API updates. Use when upgrading React Native, bumping RN version, updating from RN 0.x to 0.y, or migrating Expo SDK alongside a React Native upgrade.

Use this Skill: https://skilld.dev/gh/callstackincubator/agent-skills/upgrading-react-native

This session only. Nothing lands on disk.

referencesexpo-sdk-upgrade.md

≈645 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Skill: Expo SDK Upgrade Layer

Expo-specific add-on to the core Upgrade Helper workflow. Use only when expo exists in app package.json.

Quick Commands

npm pkg get dependencies.expo devDependencies.expo --prefix "$APP_DIR"
cd "$APP_DIR" && npx expo install --fix
cd "$APP_DIR" && npx expo-doctor

When to Apply

  • expo or expo-updates is present in the target app package
  • RN upgrade is paired with Expo SDK upgrade

Official Expo Reference

  • Follow Expo's official upgrade skill as a primary guide:
  • Important for this workflow: skip app.json changes, because this is not an Expo Managed project.

Pre-Upgrade Audit (Required)

  • Confirm SDK version and target path.
  • Inventory dependencies and native modules.
  • Review config plugins and prebuild behavior.
  • Review native build setup (Gradle, iOS settings, CI/EAS config).
  • Identify critical app flows for regression testing before changes.

Workflow Additions

  1. Run Expo compatibility alignment.
    • npx expo install --fix (source of truth for SDK-compatible versions).
    • Treat expo-modules package versions as SDK-coupled; align them with Expo recommendations.
  2. Run health checks.
    • npx expo-doctor; resolve blocking issues first.
  3. If native folders are part of workflow, reconcile prebuild output.
    • npx expo prebuild --clean (when applicable).
  4. Handle React 19 pairing.
  5. Run upgrade-verification.md for manual or agent-assisted regression checks and release gates.

Notes

  • Use npx expo ...; do not require global expo-cli.
  • Some package bumps may be optional if not SDK-bound; validate before deferring.
  • Read Expo and React Native release notes deeply before editing code, then map each breaking change to a concrete code/task item.

Related Skills

Source: SKILL.md on GitHub

1 warning16d5 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    The skill provides a standard and reliable workflow for upgrading React Native applications by applying template diffs from the community-maintained Upgrade Helper and rn-diff-purge resources. It includes comprehensive environment checks, dependency risk assessment, and platform-specific build verification steps using established ecosystem tools.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: LOW · No issues

  • Runlayer7mo

    7/9 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at fa0bad0. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 weeks ago.

Activeupdated 2 months ago
  • react-native
  • upgrade
  • upgrade-helper
  • ios
  • android
  • cocoapods
  • gradle
  • expo
  • dependencies

README badge

README badge for callstackincubator/agent-skills/upgrading-react-native

Upgrades React Native apps by fetching and applying rn-diff-purge template diffs, updating package.json and native configurations, and validating builds on iOS and Android. Targets the full upgrade workflow from version detection through CocoaPods and Gradle reconciliation, including Expo SDK migration when needed.

Generated from the current SKILL.md.

Does this skill handle Expo SDK upgrades?
Yes, but only conditionally. The skill includes an Expo SDK upgrade layer (expo-sdk-upgrade.md) that applies alongside React Native upgrades for Expo-managed apps. Non-Expo apps skip this step.
What if the rn-diff-purge diff is not available for my version pair?
The skill fetches diffs from the react-native-community/rn-diff-purge repository. If a diff does not exist for your version pair, you may need to upgrade in smaller increments or manually reconcile template changes.
Does this skill update third-party dependencies automatically?
No. The skill assesses and plans dependency updates via upgrading-dependencies.md but does not apply them automatically. You must review compatibility and decide which packages to bump.
Can this skill handle monorepo apps?
Yes. The skill includes monorepo-singlerepo-targeting.md to scope commands and target the correct app within a monorepo structure.
Does this verify the upgrade was successful?
Yes. The skill includes upgrade-verification.md with a post-upgrade checklist covering build validation on both iOS and Android, and optional agent-assisted regression testing.

Generated from the current SKILL.md. These answers refresh after source changes.