Skip to main content

react-sync

Build local React changes in the bundle variants consumed by Next.js, sync them into a local Next.js checkout, and test the resulting integration. Use when working on React changes that need validation in Next.js, or when asked to run buildForNext, pnpm sync-react, or synchronize a React checkout with Next.js.

Source facts

Repository
vercel/next.js
Last source activity
July 14, 2026 at 10:49
Detected SKILL.md language
English
Stars
143,193
Forks
34,872

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
react-sync
description
Build local React changes in the bundle variants consumed by Next.js, sync them into a local Next.js checkout, and test the resulting integration. Use when working on React changes that need validation in Next.js, or when asked to run buildForNext, pnpm sync-react, or synchronize a React checkout with Next.js.
metadata
{"internal":true}
# Sync React to Next.js Use this skill when syncing a local React checkout into this Next.js checkout. ## Build and sync 1. Build React from its own checkout. Pass this skill's script by its absolute path, because the working directory must be the React repository. ```bash cd <react-repo> bash <next-repo>/.agents/skills/react-sync/scripts/build-for-next.sh ``` This creates `build/oss-stable` and `build/oss-experimental` with the bundle variants that Next.js consumes. 2. Sync the build into Next.js: ```bash cd <next-repo> PATH="$(dirname "$(command -v corepack)"):$PATH" \ pnpm sync-react --version <react-repo> ``` Work around a Codex `PATH`-precedence bug by keeping the directory containing the active Corepack shim first on `PATH`. Codex injects a separate bundled `pnpm` executable ahead of the user's Corepack shim, and command lookup happens before Corepack reads the repository's `packageManager` field. The prefix makes both this command and `sync-react`'s nested `pnpm install` resolve through Corepack to the repository-pinned pnpm version. Invoking only the outer command with `corepack pnpm` is insufficient because the nested command still resolves `pnpm` from `PATH`. 3. Inspect the sync result before testing. Preserve unrelated changes in both checkouts. Rebuild Next.js when required, then run the focused test command matching the changed behavior. ## Related Skills - `$react-vendoring` - vendored React runtime and type boundaries after syncing.
View on GitHub