v0: the code-generation agent that opens its own app, uses it, and ships through your protected branch
v0-dev
Vercel's v0 has the most complete agent loop among closed full-stack generators: web search with clickable citations, a browser that actually uses the app it built and sends back screenshots, terminal and unit tests inside a sandbox, bring-your-own MCP for external tools, and since Sep 2026 a one-step Publish that walks PR to merge to deploy for GitHub projects. Its boundaries are equally clear: the default stack is Next.js + shadcn, the shortest path is locked to Vercel, credits scale with iteration rounds, and there is no public correctness benchmark.
- CONFIDENCE
- Vendor Claim
- Official model card or keynote only, no independent re-test
- KEY METRIC
- GitHub 项目发布链路
- Vendor Claim · 2026-09
- MATURITY
- Product
- research → demo → product → production
Our take<p>In full-stack generation, being able to generate stopped being the differentiator long ago. The differentiator is <strong>who verifies the result afterwards</strong>. v0 puts verification inside the agent itself: it opens the app it wrote, clicks through the flow, critiques the design from its own screenshots, and goes back to fix it. That closed loop is something most open harnesses only get after you wire up Playwright yourself, and v0 makes it the default path. That is the core reason we list it at the top of the code-domain ladder.</p> <p>The second point is its stance on existing engineering process. The Sep 2026 one-step Publish looks like letting the AI merge code, but the docs state plainly that required checks, reviews and merge restrictions still apply, and when a rule needs a human, v0 pauses and links to the pull request rather than bypassing it. <strong>In a team with compliance requirements, whether it bypasses review matters an order of magnitude more than whether generation is fast</strong>; that behaviour is the practical gate for entering an enterprise pipeline.</p> <p>Three honest caveats. First, <strong>there is no public benchmark</strong>: the docs give a capability list and role scenarios, no SWE-bench-style readable number, so the card carries grade C (vendor claim). Second, <strong>both the stack and the infrastructure have an opinion</strong> — Next.js + Tailwind + shadcn/ui by default, with zero-config AI Gateway and one-click deploy pointing at Vercel; teams on heterogeneous stacks get less out of it. Third, <strong>cost tracks iteration count</strong>, and the agent's own self-verification is many rounds of calls; the free Fix with v0 allowance additionally requires unedited code, so once a human has intervened, fixing starts billing too. We have not measured unit cost ourselves.</p>
What it actually ships
v0's own definition is one sentence: "an AI agent that helps anyone create real code and full-stack apps and agents." What separates it from screenshot-style prototyping tools is that the deliverable is Next.js code that runs in Vercel production — the default stack is Next.js + Tailwind + shadcn/ui, with backend capability supplied through integrations: Neon / Supabase / Upstash / Blob for data and storage, Stripe for payments, Vercel AI Gateway for model calls.
One structural change landed on 2026-08-28: apps v0 generates now connect to AI features through Vercel AI Gateway with zero-config authentication, covering text, structured output, embeddings, reranking, images, video, speech and transcription, instead of asking for provider or Gateway keys. That moves "the generated app has working AI features" from boilerplate someone must wire up to the default state.
Agent capability boundaries (checked item by item against the docs)
| Capability | Actual behaviour | Verifiable point |
|---|---|---|
| Web search | Real-time search, results inline with clickable source links | Citations are clickable and checkable, not a black-box summary |
| Browser use | Opens the apps it builds, uses them, critiques designs, debugs complex flows and fixes proactively, sending screenshots while it works; can also visit external URLs for visual reference | A closed self-verification loop: generate → use → critique → fix |
| Automatic error fixing | Missing files and dependencies, syntax and formatting, runtime errors and bugs, import/export problems | Triggered inside the generation loop |
| Fix with v0 | Button appears when a deployment errors; sends logs to v0 to diagnose and fix | 10 free uses/day on paid plans, free only for unedited code |
| Terminal commands | Shell inside the sandbox: test interactions, inspect the repo, run unit tests, call Vercel/GitHub CLIs | Three permission modes — Ask / Auto / Full — under user control |
| External tools | Marketplace integrations plus bring-your-own MCP servers (Linear, Notion, Sentry and others) | Per-scope MCP limit raised from 10 to 100 in Aug 2026 |
Browser use is the real gap versus most open-source coding agents. Most open harnesses need you to bolt on Playwright yourself before a "generate → open → look → fix" loop exists at all; v0 makes that loop the default path and shows you the screenshots it saw.
Shipping: the September 2026 collapse
GitHub-backed projects now have a unified branch-and-Publish flow: select Publish, and v0 creates or reuses the pull request, merges it into the base branch and deploys the merged result to production. The normal path no longer bounces between separate branch, pull request, merge and deployment actions. Each change is committed to an isolated working branch with a preview deployment, so the app can be validated before anything reaches the base branch.
What matters more is its stance on existing engineering constraints: the repository stays the source of truth. Required checks, reviews, merge restrictions and other branch protections still apply, and when a rule needs human attention v0 pauses the flow and links straight to the pull request instead of bypassing it. That single behaviour is the practical gate on whether a vibe-coding tool can enter a team with review policy — a tool that bypasses is fast and unusable.
Also since 2026-08-28: a new chat started inside a project begins from that project's own source (GitHub branch, managed repository or production deployment), so the first message already carries code context; and when a paid chat's sandbox runs out of CPU or memory it is moved up a VM tier and restarted in the background rather than timing out.
Boundaries and failure modes
- The stack has an opinion: output defaults to Next.js + Tailwind + shadcn/ui. Teams on a non-React stack, or required to land on their own Kubernetes, get much less out of it.
- The shortest path is locked to Vercel: zero-config AI Gateway and one-click Publish both point at Vercel infrastructure. Git sync exists, but the path of least resistance does not pass through your own datacenter.
- Cost tracks iteration count: credits billing, and the agent's own multi-round self-verification is itself many model calls. The free Fix with v0 allowance additionally requires unedited code — once a human has intervened, error fixing starts burning credits too.
- No public correctness benchmark: the docs offer a capability list and role-based scenarios (PM, design, engineering, data, marketing, support, founders), with no SWE-bench-style readable number. Every "generates production-grade code" claim is currently vendor-side only.
- Permission tiers are yours to judge: of Ask / Auto / Full, Full effectively hands over shell inside the sandbox. Sandbox isolation is a vendor statement; we have not independently probed its escape surface.
Our reproduction plan
Moving this from grade C (vendor claim) to grade A (confirmed) needs three things: run the same PRD through v0 and an open harness and compare runnable-code rate and rework; verify on a protected branch that it genuinely pauses rather than bypasses when a rule needs a human; and measure credits consumed against iteration rounds to produce a real unit cost. Until those three are done, read the numbers on the card as "what the vendor says".