Install any skill in seconds. Free to start, no credit card required.
Get Started Free →vercel/flags
How to add or modify Next.js experimental feature flags end-to-end.
Passed 22 of 22 test cases with the skill, and 9 of 22 without it.
and 13 more in the full report
13 fixed9 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 13 test cases the skill fixed. Same model, same prompt, with and without the skill.
Which bundler compiler is used by next-runtime.webpack-config.js when taskfile.js builds the pre-compiled runtime bundles?
| Checked | Without skill | With skill |
|---|---|---|
| Identifies rspack as the compiler running next-runtime.webpack-config.js. | Missed | Passed |
The instructions your model reads when the skill loads.
Use this skill when adding or changing framework feature flags in Next.js internals.
All flags need: config-shared.ts (type) → config-schema.ts (zod). If the flag is consumed in user-bundled code (client components, edge routes, app-page.ts template), also add it to define-env.ts for build-time injection. Runtime-only flags consumed exclusively in pre-compiled bundles can skip define-env.ts.
Client/bundled code only (e.g. __NEXT_PPR in client components): define-env.ts is sufficient. Webpack/Turbopack replaces process.env.X at the user's build time.
Pre-compiled runtime bundles (e.g. code in app-render.tsx): The flag must also be set as a real process.env var at runtime, because app-render.tsx runs from pre-compiled bundles where define-env.ts doesn't reach. Two approaches:
next-server.ts + export/worker.ts. Both code paths stay in one bundle. Simple but increases bundle size.next-runtime.webpack-config.js (scoped to bundleType === 'app'), new taskfile tasks, update module.compiled.js selector, and still set env var in next-server.ts + export/worker.ts for bundle selection. Eliminates dead code but adds build complexity.For runtime flags, also add the field to the NextConfigRuntime Pick type in config-shared.ts.
next-runtime.webpack-config.js (rspack) via taskfile.js bundle tasks.src/server/route-modules/app-page/module.compiled.js based on process.env vars.{turbo/webpack} × {experimental/stable/nodestreams/experimental-nodestreams} × {dev/prod} = up to 16 bundles per route type.define-env.ts affects user bundling, not pre-compiled runtime internals.process.env.X checks in app-render.tsx are either replaced by DefinePlugin at runtime-bundle-build time, or read as actual env vars at server startup. They are NOT affected by the user's defines from define-env.ts.next-runtime.webpack-config.js must be scoped to the correct bundleType (e.g. app only, not server) to avoid replacing assignment targets in next-server.ts.$dce-edge - DCE-safe require patterns and edge constraints$react-vendoring - entry-base boundaries and vendored React$runtime-debug - reproduction and verification workflowtest cases passed, vs 9 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.