On 2026-10-05 the Nuxt team shipped Nuxt 4.6 (v4.6.0; npm 4x → 4.6.0) with @nuxt/cli v4. Highlights: the nuxt/server surface, a rebuilt typed $fetch (no more TS2589), appSecret sealed cookie sessions, Vue Vapor, new dev error pages; the CLI lock file lets a second nuxt dev (including one started by an agent) take over, and errors copy as agent-ready prompts.

Key Takeaways

  • ✓Scope: one of the biggest minors since v4.5.2 (362+ commits); upgrade with npx nuxt upgrade --dedupe; Node ^22.22.3 || ^24.15.0 || >=26
  • ✓nuxt/server: portable server imports; Nitro remains default; groundwork for Nuxt 5 / Nitro v3 / experimental @nuxt/vite-server
  • ✓Typed $fetch rebuilt on fetchdts: ~5.8M→~52k instantiations at 300 routes; peak mem 946→140 MB; opt-in on Nuxt 4 via experimental.routeTypedFetch
  • ✓CLI v4: install 13.1→3.5 MB (-73%), nuxt dev first paint 330→50 ms (~6.6×); .nuxt/ lock lets an agent-started second nuxt dev take over
  • ✓Official benches: starter build 4.4→3.6 s (-18%); SSR page with 300 NuxtLinks 110→140 req/s (+26%)
Nuxt 4.6 ships with Nuxt CLI v4: nuxt/server for a server-agnostic core, rebuilt typed $fetch, and agent-friendlier DX
🖼️Official Media
Click to view high-res
🧭

Turn your technical choice into a development budget

Compare 29+ dev plans & simulate token costs vs $20/mo subscriptions

🔬

In-Depth Technical Analysis

Core Background & Industry Pain Points

AICoder itself runs on Nuxt, so framework minors hit build, SSR, and local agent workflows directly. On 2026-10-05 @nuxt_js and the Nuxt 4.6 blog announced Nuxt 4.6 alongside @nuxt/cli v4. Server typing had been tightly coupled to h3/Nitro, large route graphs hit TS2589 on typed $fetch, and a second nuxt dev (often from an agent) fought over ports. 4.6 targets those pain points and prepares Nuxt 5.

Architecture Highlights & Internals

  • nuxt/server: portable server import surface on a web-standard RequestEvent; Nitro remains the default implementation.
  • Typed $fetch: rebuilt on fetchdts so type cost scales with call sites, not route count; carries validated body/query/headers.
  • appSecret + sessions: NUXT_APP_SECRET / deriveSecret; iron-sealed cookie sessions via useSession.
  • Vue Vapor: interop mode with per-component vapor (Vue ^3.6.0-rc.2+).
  • CLI v4: interactive TUI, request-attributed logs, .nuxt/ lock for agent takeover, nuxt curl/task/docs, my-bad errors with copy-as-agent-prompt.

Authoritative Benchmarks & Measured Scores

Vendor-reported on their arm64 Linux / Node 24.15 machine (medians of five): CLI install 13.1→3.5 MB, deps 70→31, nuxt dev first paint 330→50 ms, port bind 338→104 ms, idle RAM 630→440 MB; kit install 6.4→2.1 MB; starter build 4.4→3.6 s (-18%), 200-page app 11.6→10.3 s (-11%); SSR page with 300 NuxtLinks 110→140 req/s (+26%). Typed $fetch at 300 routes: ~5.8M instantiations / 3.49 s (TS2589) → ~52k / 0.16 s; peak memory 946→140 MB. Not independently reproduced here.

Developer Hands-on Guide

Upgrade with npx nuxt upgrade --dedupe. Node ^22.22.3 || ^24.15.0 || >=26.0.0. Opt into rebuilt typed fetch with experimental.routeTypedFetch: true. Prefer import { defineEventHandler } from 'nuxt/server' (mixing with h3 auto-imports yields NUXT_E8012). Preview Nuxt 5 defaults via future.compatibilityVersion: 5. See the blog, GitHub release, and server imports guide. npm 4x already resolves to 4.6.0 (latest may briefly lag on 4.5.2).

Action HubReady to adopt this in production?

Benchmark side-by-side against alternatives, or calculate monthly token cost vs subscription break-even.