bootstrap
Bootstrap a repository with Vercel-linked resources by running preflight checks, provisioning…
Deploy the current project to Vercel. Pass "prod" or "production" as argument to deploy to production. Default is preview deployment.
> /plugin marketplace add vercel/vercel-plugin > /plugin install vercel-plugin@vercel
How it fires
How this command gets triggered: by you, by Claude, or both.
/deployContext preview
What this command does when you run it.
Deploy the current project to Vercel. Pass "prod" or "production" as argument to deploy to production. Default is preview deployment.
description: Deploy the current project to Vercel. Pass "prod" or "production" as argument to deploy to production. Default is preview deployment.
Deploy the current project to Vercel using the CLI, with preflight safety checks, explicit production confirmation, and post-deploy verification.
Run these checks before any deployment. Stop on failure and print actionable guidance.
1. **CLI available?** — Confirm `vercel` is on PATH.
2. **Project linked?** — Check for `.vercel/project.json` in the current directory or nearest parent.
3. **Monorepo detection** — Look for `turbo.json` or `pnpm-workspace.yaml` at the repo root.
4. **Uncommitted changes** — Run `git status --porcelain`.
5. **Observability preflight** (production deploys only) —
Before promoting to production, verify observability readiness:
> ⚠️ No drains configured. Production errors won't be forwarded to external monitoring. > Configure drains via Dashboard or REST API before promoting.
> ⚠️ Drain "<url>" is errored. Fix or recreate before production deploy to avoid monitoring gaps.
State the intended action before executing:
If "$ARGUMENTS" contains "prod" or "production":
> ⚠️ **Production deployment requested.** > This will deploy to your live production URL and affect real users. > **Ask the user for explicit confirmation before proceeding.** Do not deploy to production without a clear "yes."
If "$ARGUMENTS" does not indicate production:
> Deploying a **preview** build. This creates an isolated URL and does not affect production.
<!-- Sourced from deployments-cicd skill: Deployment Commands > Preview Deployment -->
# Deploy from project root (creates preview URL) vercel # Equivalent explicit form vercel deploy
Preview deployments are created automatically for every push to a non-production branch when using Git integration. They provide a unique URL for testing.
<!-- Sourced from deployments-cicd skill: Deployment Commands > Production Deployment -->
# Deploy directly to production vercel --prod vercel deploy --prod # Force a new deployment (skip cache) vercel --prod --force
Capture the full command output. Extract the **deployment URL** from the output (the line containing the `.vercel.app` URL or custom domain URL).
Record the current git commit SHA for the summary:
git rev-parse --short HEAD
After deployment completes, verify the result:
<!-- Sourced from deployments-cicd skill: Deployment Commands > Inspect Deployments -->
# View deployment details (build info, functions, metadata) vercel inspect <deployment-url> # List recent deployments vercel ls # View logs for a deployment vercel logs <deployment-url> vercel logs <deployment-url> --follow
Extract: deployment state (READY / ERROR / QUEUED / BUILDING), build duration, framework, Node.js version, function count.
If the deployment state is **ERROR** or the deploy command exited non-zero:
vercel logs <deployment-url>
Present the last 50 lines of build logs to help diagnose the failure. Highlight any lines containing `error`, `Error`, `ERR!`, or `FATAL`.
If the deployment state is **READY**, note the URL is live and accessible.
For production deployments, wait 60 seconds after READY state, then scan for early runtime errors:
vercel logs <deployment-url> --level error --since 1h
Or via MCP if available: use `get_runtime_logs` with level filter `error`.
**Interpret results:**
| Finding | Action | |---------|--------| | No errors | ✓ Clean deploy — no runtime errors in first hour | | Errors detected | List error count and first 5 unique error messages. Suggest: check drain payloads for correlated traces, review function logs in Dashboard | | 500 status codes in logs | Correlate timestamps with drain data (if configured) or `vercel logs <url> --json` for structured output. Flag for immediate investigation | | Timeout errors | Check function duration limits in `vercel.json` or project settings. Consider increasing `maxDuration` |
**Fallback (no drains):**
If no drains are configured, the error scan relies on CLI and Dashboard:
# Stream live errors vercel logs <deployment-url> --level error --follow # JSON output for parsing vercel logs <deployment-url> --level error --since 1h --json
> For richer post-deploy monitoring, configure drains to forward logs/traces to an external platform via Dashboard or REST API.
<!-- Sourced from deployments-cicd skill: Deploy Summary Format --> Present a structured deploy resul
Comprehensive Vercel ecosystem plugin — relational knowledge graph, skills for every major product, specialized agents, and Vercel conventions. Turns any AI agent into a Vercel expert.
Repo: vercel-labs/vercel-plugin
Bootstrap a repository with Vercel-linked resources by running preflight checks, provisioning…
Manage Vercel environment variables. Commands include list, pull, add, remove, and diff. Use…
Show the status of the current Vercel project — recent deployments, linked project info, and…