- Fix skill store cross-root slug lookup: installed skills under registrySlug names (e.g., next-best-practices) now resolve when queried by engine name (e.g., nextjs). Full-body injection rate went from 5% to 78% in evals. - Fix on-demand install: remove dead hooks.json registrations (library module with no entry point), keep inline calls from pretooluse/user-prompt-submit. Non-registry skills now dedup normally instead of wastefully reinjectiing summary-only content that can never upgrade. - Add suppressWhenProjectFacts to engine rules: next-upgrade and turbopack suppressed in greenfield mode (was 12 useless injections per session). - Add deriveRegistryInstallSet to orchestrator-install-plan (was missing export that crashed on-demand-skill-install on every invocation). - Sync all engine rule registries from skills.sh API via build-registry.ts. 22 skills now have registry backing across 11 official Vercel repos. Exclude vercel-labs/vercel-plugin and vercel/vercel-plugin self-references. - Add build:registry to the build pipeline (hooks → registry → manifest). - Create 7 new engine rules: electron, vercel-composition-patterns, vercel-react-native-skills, web-design-guidelines, deploy-to-vercel, vercel-react-view-transitions, workflow-init. - Add .claude/skills/ to .gitignore (installed skill caches). - Add Verification Checklist to CLAUDE.md.
vercel-plugin
Getting Started
Supported Tools
| Tool | Status |
|---|---|
| Claude Code | Supported |
| Cursor | Supported |
| OpenAI Codex | Coming soon |
Prerequisites
- One of the supported AI coding tools listed above
- Node.js 18+
- Bun
Installation
npx plugins add vercel/vercel-plugin
That's it. The plugin activates automatically — no setup, no commands to learn. Just build.
What It Does
This plugin pre-loads AI agents with a relational knowledge graph of the entire Vercel ecosystem — every product, library, CLI, API, and service — showing how they relate, when to use each, and providing deep guidance through bundled skills.
How Do I Use This?
After installing, there's nothing to learn — all Vercel guidance happens automatically. The plugin detects what you're working on from your tool calls, file paths, and project config, then injects the right expertise at the right time. Just use your AI agent as you normally would and the plugin handles the rest.
Components
Ecosystem Graph (vercel.md)
A text-form relational graph covering:
- All Vercel products and their relationships
- Decision matrices for choosing the right tool
- Common cross-product workflows
- Migration awareness for sunset products
Skills (38 skills)
| Skill | Covers |
|---|---|
agent-browser |
Browser automation CLI — dev server verification, page interaction, screenshots, form filling |
agent-browser-verify |
Automated dev-server verification — visual gut-check on page load, console errors, key UI elements |
ai-elements |
Pre-built React components for AI interfaces — chat UIs, tool call rendering, streaming responses |
ai-gateway |
Unified model API, provider routing, failover, cost tracking, 100+ models |
ai-sdk |
AI SDK v6 — text/object generation, streaming, tool calling, agents, MCP, providers, embeddings |
auth |
Authentication integrations — Clerk, Descope, Auth0 setup for Next.js with Marketplace provisioning |
bootstrap |
Project bootstrapping orchestrator — linking, env provisioning, db setup, first-run commands |
chat-sdk |
Multi-platform chat bots — Slack, Telegram, Teams, Discord, Google Chat, GitHub, Linear |
cron-jobs |
Vercel Cron Jobs configuration, scheduling, and best practices |
deployments-cicd |
Deployment and CI/CD — deploy, promote, rollback, --prebuilt, CI workflow files |
env-vars |
Environment variable management — .env files, vercel env commands, OIDC tokens |
investigation-mode |
Orchestrated debugging — runtime logs, workflow status, browser verify, deploy/env triage |
json-render |
AI chat response rendering — UIMessage parts, tool call displays, streaming states |
marketplace |
Integration discovery, installation, auto-provisioned env vars, unified billing |
next-cache-components |
Next.js 16 Cache Components — PPR, use cache, cacheLife, cacheTag, updateTag |
next-forge |
Production SaaS monorepo starter — Turborepo, Clerk, Prisma/Neon, Stripe, shadcn/ui |
next-upgrade |
Next.js version upgrades — codemods, migration guides, dependency updates |
nextjs |
App Router, Server Components, Server Actions, Cache Components, routing, rendering strategies |
observability |
Web Analytics, Speed Insights, runtime logs, Log Drains, OpenTelemetry, monitoring |
react-best-practices |
React/Next.js performance optimization — 64 rules across 8 categories |
routing-middleware |
Request interception before cache, rewrites, redirects, personalization — Edge/Node.js/Bun runtimes |
runtime-cache |
Ephemeral per-region key-value cache, tag-based invalidation, shared across Functions/Middleware/Builds |
shadcn |
shadcn/ui — CLI, component installation, custom registries, theming, Tailwind CSS integration |
sign-in-with-vercel |
OAuth 2.0/OIDC identity provider, user authentication via Vercel accounts |
turbopack |
Next.js bundler, HMR, configuration, Turbopack vs Webpack |
turborepo |
Monorepo orchestration, caching, remote caching, --affected, pruned subsets |
v0-dev |
AI code generation, agentic intelligence, GitHub integration |
vercel-agent |
AI-powered code review, incident investigation, SDK installation, PR analysis |
vercel-api |
Vercel MCP Server and REST API — projects, deployments, env vars, domains, logs |
vercel-cli |
All CLI commands — deploy, env, dev, domains, cache management, MCP integration, marketplace |
vercel-flags |
Feature flags, Flags Explorer, gradual rollouts, A/B testing, provider adapters |
vercel-functions |
Serverless, Edge, Fluid Compute, streaming, Cron Jobs, configuration |
vercel-queues |
Durable event streaming, topics, consumer groups, retries, delayed delivery |
vercel-sandbox |
Ephemeral Firecracker microVMs for running untrusted/AI-generated code safely |
vercel-services |
Multiple services in one project — monorepo backends + frontends on the same domain |
vercel-storage |
Blob, Edge Config, Neon Postgres, Upstash Redis, migration from sunset packages |
verification |
Full-story verification — infers user story, verifies end-to-end browser → API → data → response |
workflow |
Workflow DevKit — durable execution, DurableAgent, steps, Worlds, pause/resume |
Agents (3 specialists)
| Agent | Expertise |
|---|---|
deployment-expert |
CI/CD pipelines, deploy strategies, troubleshooting, environment variables |
performance-optimizer |
Core Web Vitals, rendering strategies, caching, asset optimization |
ai-architect |
AI application design, model selection, streaming architecture, MCP integration |
Commands (5 commands)
| Command | Purpose |
|---|---|
/vercel-plugin:bootstrap |
Bootstrap project — linking, env provisioning, db setup |
/vercel-plugin:deploy |
Deploy to Vercel (preview or production) |
/vercel-plugin:env |
Manage environment variables |
/vercel-plugin:status |
Project status overview |
/vercel-plugin:marketplace |
Discover and install marketplace integrations |
Hooks
Lifecycle hooks that run automatically during your session:
- Session start context injection — Injects
vercel.md(ecosystem graph + conventions) into every session - Session start repo profiler — Scans config files and dependencies to pre-prime skill matching for faster first tool call
- Pre-tool-use skill injection — Matches tool calls to skills and injects relevant guidance with dedup
- Pre-write/edit validation — Catches deprecated patterns before they're written (sunset packages, old API names, renamed files)
Usage
After installing, skills and context are injected automatically. You can also invoke skills directly via slash commands:
/vercel-plugin:nextjs
/vercel-plugin:ai-sdk
/vercel-plugin:deploy prod
Skill Resolution
Skills are resolved at runtime through a layered cache strategy — no skills are bundled in the plugin itself:
- Project cache:
~/.vercel-plugin/projects/<hash>/.skills/<slug>/SKILL.md - Global cache:
~/.vercel-plugin/skills/<slug>/SKILL.md - Rules manifest:
generated/skill-rules.json(metadata-only fallback)
Registry-backed skills are installed on-demand via npx skills add during the first session or when VERCEL_PLUGIN_SKILL_AUTO_INSTALL=1 is set. Skills not in a registry fall back to docs/sitemap resolution.
Registry-Backed Skills
| Skill | Registry |
|---|---|
agent-browser |
vercel/vercel-skills |
ai-elements |
vercel/vercel-skills |
ai-sdk |
vercel/vercel-skills |
next-cache-components |
vercel/vercel-skills |
next-upgrade |
vercel/vercel-skills |
nextjs |
vercel/vercel-skills (as next-best-practices) |
react-best-practices |
vercel/vercel-skills (as vercel-react-best-practices) |
turborepo |
vercel/vercel-skills |
deployments-cicd |
vercel/vercel-skills (as vercel-deploy) |
vercel-cli |
vercel-labs/agent-skills (as vercel-cli-with-tokens) |
Architecture
vercel-plugin/
├── .plugin/plugin.json # Plugin manifest
├── vercel.md # Ecosystem graph + conventions (injected via SessionStart hook)
├── engine/ # 40+ engine rule files (markdown + YAML frontmatter)
│ ├── nextjs.md # Rule: patterns, priority, promptSignals, validate
│ ├── ai-sdk.md
│ └── ...
├── generated/
│ └── skill-rules.json # Compiled manifest (engine/*.md → JSON)
├── agents/ # Specialist agents
├── commands/ # Slash commands
├── scripts/
│ └── build-manifest.ts # Compiles engine/*.md → generated/skill-rules.json
└── hooks/ # SessionStart injection, repo profiler, skill injection, validation
└── src/ # TypeScript source (compiled to .mjs via tsup)
Build Pipeline
bun run build # Build hooks + manifest
bun run build:hooks # Compile hook TypeScript → .mjs
bun run build:manifest # Compile engine/*.md → generated/skill-rules.json
Ecosystem Coverage (March 2026)
- Next.js 16 (App Router, Cache Components, Proxy, View Transitions)
- AI SDK v6 (Agents, MCP, DevTools, Reranking, Image Editing)
- AI Elements (pre-built React components for AI interfaces)
- Chat SDK (multi-platform chat bots — Slack, Telegram, Teams, Discord)
- Workflow DevKit (DurableAgent, Worlds, open source)
- AI Gateway (100+ models, provider routing, cost tracking)
- Vercel Functions (Fluid Compute, streaming, Cron Jobs)
- Storage (Blob, Edge Config, Neon Postgres, Upstash Redis)
- Routing Middleware (request interception, Edge/Node.js/Bun runtimes)
- Runtime Cache API (per-region KV cache, tag-based invalidation)
- Vercel Flags (feature flags, Flags Explorer, gradual rollouts, A/B testing)
- Vercel Queues (durable event streaming, topics, consumer groups, retries)
- Vercel Agent (AI code review, incident investigation)
- Vercel Sandbox (Firecracker microVMs for untrusted code)
- Sign in with Vercel (OAuth 2.0/OIDC identity provider)
- Auth integrations (Clerk, Descope, Auth0)
- shadcn/ui (CLI, component installation, custom registries, theming)
- Turborepo (--affected, remote caching, Rust core)
- Turbopack (default bundler in Next.js 16)
- v0 (agentic intelligence, GitHub integration)
- Vercel CLI (cache management, MCP integration, marketplace discovery)
- Vercel Observability (Analytics, Speed Insights, Drains)
- Vercel Marketplace (one-click integrations, unified billing)
- Agent Browser (browser automation for dev server verification and testing)
Reporting Issues
If something doesn't work right, a skill gives bad advice, or injection doesn't fire when it should — file an issue on GitHub. Include:
- What you were building
- What the plugin injected (or didn't) — enable debug logs with
VERCEL_PLUGIN_LOG_LEVEL=debug - What was wrong about it