Bring an older Agent-Native app or workspace current. Use when updating @agent-native/core, fixing a broken upgrade, or when tempted to patch or override core/dispatch packages to make an old branch run.
Install
npx skillscat add builderio/agent-native/upgrade-agent-native Install via the SkillsCat registry.
Upgrade Agent-Native
Rule
When an older Agent-Native app/branch needs to run on current packages, useagent-native upgrade. Never "fix" upgrade breakage withpnpm patch, pnpm patch-commit, pnpm.patchedDependencies,pnpm.overrides, patchedDependencies, resolutions, local patch artifacts,
or edits under node_modules/@agent-native/* — especially not against@agent-native/core or @agent-native/dispatch.
Why
Agents often respond to a failed core bump by inventing framework patches and
dispatch behavior overrides. That hides the real app-level break, drifts from
upstream, and makes the next upgrade worse. The supported path is bump →
install → refresh scaffold skills → verify, then fix app code only.
How
Preview migration codemods first
npx @agent-native/core@latest upgrade --codemodsCodemods are preview-by-default: read the diff before applying it. Do not
manually edit imports before running this command; the migration manifest is
the source of truth for renamed specifiers and symbols.Apply the reviewed codemods, then run the upgrade
npx @agent-native/core@latest upgrade --codemods --yes npx @agent-native/core@latest upgradeOr from an already-installed CLI:
pnpm exec agent-native upgrade/agent-native upgrade.What it does:
- Blocks (unless
--force) when@agent-native/*overrides/patches exist - Rewrites non-local
@agent-native/*dependency pins tolatest - Runs the package manager install
- Rewrites those pins to the exact versions the install resolved, so the
committed manifest names one release instead of re-resolving next install - Runs
skills update scaffold --project - Runs
typecheckwhen the project has that script
- Blocks (unless
Pull upstream template changes (optional, separate from the bump)
agent-native upgrademoves package versions. It never touches files that
were copied out of a template at scaffold time, so template fixes and
improvements do not arrive with a bump.agent-native template status # recorded ref vs latest, drift counts agent-native template diff # what upstream changed, read-only agent-native template sync # 3-way merge it into the appsyncdefaults to the ref matching the installed@agent-native/core, so
run it afterupgrade. It merges per file against a pristine baseline
stored inrefs/agent-native/template-baseline/<app-path>; files upstream
did not touch are left alone, and real collisions get conflict markers.
After resolving markers, runagent-native template accept— the baseline
deliberately does not advance past an unresolved merge.Apps scaffolded before provenance existed have no baseline. Create one
withagent-native template baselinebefore the first sync.If upgrade or typecheck fails
- Read the concrete error
- Fix app source, actions, config, or env — not framework packages
- Re-run
agent-native upgradeorpnpm typecheck - Stop and ask the user if you cannot fix the app-level error
Intentional app-level UI customization is a separate workflow. Read
customizing-agent-nativewhen the product needs to own a selectively
copied component; do not use that path to reproduce framework runtime
behavior or hide version skew.Dry-run / partial runs
agent-native upgrade --dry-run agent-native upgrade --skip-verify agent-native upgrade --skip-install # package.json bumps only agent-native doctor --only migration-manifestmigration-manifesthas no opt-out. Run it in CI before upgrading to find
imports that will break, then usenpx @agent-native/core@latest upgrade --codemods
to preview the supported rewrite.
Don't
- Don't add
pnpm.overrides,overrides,resolutions, orpatchedDependenciesfor any@agent-native/*package - Don't run
pnpm patchorpnpm patch-commit, or commit files underpatches/, for any dependency - Don't edit
node_modules/@agent-native/coreornode_modules/@agent-native/dispatch - Don't invent local "dispatch behavior" shims to paper over version skew
- Don't keep iterating with more framework patches after a failed install
- Don't skip
skills update scaffold --projectafter a core bump (the
upgrade command does this for you)
Related Skills
- self-modifying-code — Tier 4: framework packages are off limits
- agent-native-docs — version-matched docs after the bump
- customizing-agent-native — intentional app-owned UI copies, not upgrade patches
- portability — keep app code provider-agnostic across upgrades