/benchmark-testing
Create and launch benchmark test projects to exercise vercel-plugin skill injection across realistic scenarios. Sets up isolated directories, installs the plugin, and spawns WezTerm panes running Claude Code with crafted prompts.
$ npx -y skills add vercel-labs/vercel-plugin --skill benchmark-testing --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/benchmark-testing
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create and launch benchmark test projects to exercise vercel-plugin skill injection across realistic scenarios. Sets up isolated directories, installs the plugin, and spawns WezTerm panes running Claude Code with crafted prompts.
SKILL.md
benchmark-testing.SKILL.mdname: benchmark-testing
description: Create and launch benchmark test projects to exercise vercel-plugin skill injection across realistic scenarios. Sets up isolated directories, installs the plugin, and spawns WezTerm panes running Claude Code with crafted prompts.
Benchmark Testing
Create isolated test projects that exercise vercel-plugin skill injection with realistic, technology-agnostic prompts.
Workflow
1. Create test directories
BASE=~/dev/vercel-plugin-testing
mkdir -p "$BASE"/{01-slug,02-slug,...}2. Install the plugin in each directory
for dir in "$BASE"/*/; do
echo "=== $(basename "$dir") ==="
cd "$dir" && npx add-plugin https://github.com/vercel/vercel-plugin -s project -y 2>&1 | tail -1
done
This creates `.claude/settings.json` with `enabledPlugins` in each directory.
3. Launch Claude Code in WezTerm panes
**Critical details that must all be followed:**
- Use `--cwd <absolute-path>` to set the working directory
- Use `unset CLAUDECODE` before `x` to avoid nested-session errors
- Use `--settings .claude/settings.json` (not `--settings project`) to load the plugin
- Use double quotes on the outer `-ic` string, single quotes around the prompt
- Wait **10 seconds** between each launch to avoid overwhelming the system
- Always use `spawn` (new tabs) — `split-pane` runs out of space after ~4 panes
**Working command template:**
wezterm cli spawn --cwd /absolute/path/to/test-dir -- /bin/zsh -ic "unset CLAUDECODE; x 'YOUR PROMPT HERE. Link the project to my vercel-labs team so we can deploy it later.' --settings .claude/settings.json; exec zsh"
Prompt Guidelines
- **Never name specific technologies** (no "Next.js", "Stripe", "Vercel KV", etc.)
- Describe the *product* and *features* — let the plugin infer which skills to inject
- Make prompts ambitious and multi-featured to exercise multiple skill triggers
- Always append: "Link the project to my vercel-labs team so we can deploy it later."
Example prompts
| Slug | Prompt | Expected skills | |------|--------|----------------| | recipe-platform | "Build a recipe sharing platform where users sign up, upload photos of their dishes, write ingredients and steps, and browse a feed with infinite scroll..." | auth, vercel-storage, nextjs | | trivia-game | "Create a multiplayer trivia game where players join a room with a 6-letter code, answer questions in real-time with a 15-second countdown..." | vercel-storage, nextjs | | code-review-bot | "Build an AI-powered code review dashboard with webhook API routes, LLM streaming analysis, and stats over time..." | ai-sdk, nextjs | | conference-tickets | "Create a conference ticketing system with tiered checkout, QR code emails, admin panel, and payment webhook handling..." | payments, email, auth | | content-aggregator | "Build a content aggregator with hourly scheduled RSS fetching, LLM summaries, category filters, and bookmarks..." | cron-jobs, ai-sdk | | finance-tracker | "Build a personal finance tracker with bank connection, spending charts, and weekly email digest via scheduled job..." | cron-jobs, email | | multi-tenant-blog | "Create a multi-tenant blog where each user gets a subdomain, with request-level routing, headless content API, and role-based auth..." | routing-middleware, cms, auth | | status-page | "Build a SaaS status page with scheduled endpoint pinging, uptime charts, incident logging, and KV-stored history..." | cron-jobs, vercel-storage, observability | | dog-walking-saas | "Build a dog walking SaaS with user accounts, pet photos, booking, monthly invoicing, admin dashboard, and separate dev/prod env configs..." | payments, auth, vercel-storage, env-vars |
Cleanup
rm -rf ~/dev/vercel-plugin-testing
Read more
name: benchmark-testing description: Create and launch benchmark test projects to exercise vercel-plugin skill injection across realistic scenarios. Sets up isolated directories, installs the plugin, and spawns WezTerm panes running Claude Code with crafted prompts.
Benchmark Testing
Create isolated test projects that exercise vercel-plugin skill injection with realistic, technology-agnostic prompts.
Workflow
1. Create test directories
BASE=~/dev/vercel-plugin-testing
mkdir -p "$BASE"/{01-slug,02-slug,...}2. Install the plugin in each directory
for dir in "$BASE"/*/; do echo "=== $(basename "$dir") ===" cd "$dir" && npx add-plugin https://github.com/vercel/vercel-plugin -s project -y 2>&1 | tail -1 done
This creates `.claude/settings.json` with `enabledPlugins` in each directory.
3. Launch Claude Code in WezTerm panes
**Critical details that must all be followed:**
- Use `--cwd <absolute-path>` to set the working directory
- Use `unset CLAUDECODE` before `x` to avoid nested-session errors
- Use `--settings .claude/settings.json` (not `--settings project`) to load the plugin
- Use double quotes on the outer `-ic` string, single quotes around the prompt
- Wait **10 seconds** between each launch to avoid overwhelming the system
- Always use `spawn` (new tabs) — `split-pane` runs out of space after ~4 panes
**Working command template:**
wezterm cli spawn --cwd /absolute/path/to/test-dir -- /bin/zsh -ic "unset CLAUDECODE; x 'YOUR PROMPT HERE. Link the project to my vercel-labs team so we can deploy it later.' --settings .claude/settings.json; exec zsh"
Prompt Guidelines
- **Never name specific technologies** (no "Next.js", "Stripe", "Vercel KV", etc.)
- Describe the *product* and *features* — let the plugin infer which skills to inject
- Make prompts ambitious and multi-featured to exercise multiple skill triggers
- Always append: "Link the project to my vercel-labs team so we can deploy it later."
Example prompts
| Slug | Prompt | Expected skills | |------|--------|----------------| | recipe-platform | "Build a recipe sharing platform where users sign up, upload photos of their dishes, write ingredients and steps, and browse a feed with infinite scroll..." | auth, vercel-storage, nextjs | | trivia-game | "Create a multiplayer trivia game where players join a room with a 6-letter code, answer questions in real-time with a 15-second countdown..." | vercel-storage, nextjs | | code-review-bot | "Build an AI-powered code review dashboard with webhook API routes, LLM streaming analysis, and stats over time..." | ai-sdk, nextjs | | conference-tickets | "Create a conference ticketing system with tiered checkout, QR code emails, admin panel, and payment webhook handling..." | payments, email, auth | | content-aggregator | "Build a content aggregator with hourly scheduled RSS fetching, LLM summaries, category filters, and bookmarks..." | cron-jobs, ai-sdk | | finance-tracker | "Build a personal finance tracker with bank connection, spending charts, and weekly email digest via scheduled job..." | cron-jobs, email | | multi-tenant-blog | "Create a multi-tenant blog where each user gets a subdomain, with request-level routing, headless content API, and role-based auth..." | routing-middleware, cms, auth | | status-page | "Build a SaaS status page with scheduled endpoint pinging, uptime charts, incident logging, and KV-stored history..." | cron-jobs, vercel-storage, observability | | dog-walking-saas | "Build a dog walking SaaS with user accounts, pet photos, booking, monthly invoicing, admin dashboard, and separate dev/prod env configs..." | payments, auth, vercel-storage, env-vars |
Cleanup
rm -rf ~/dev/vercel-plugin-testing
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
Other skills on vercel.
- /benchmark-agents
Advanced AI agent benchmark scenarios that push Vercel's cutting-edge platform features — Workflow DevKit, AI Gateway, MCP, Chat SDK, Queues, Flags, Sandbox, and multi-agent orchestration. Designed to stress-test skill injection for complex, multi-system builds.
Open skill - /benchmark-e2e
End-to-end benchmark suite for vercel-plugin. Runs realistic projects through skill injection, launches dev servers, verifies everything works, analyzes conversation logs, and produces an improvement report for overnight self-improvement loops.
Open skill - /benchmark-sandbox
Run vercel-plugin eval scenarios in Vercel Sandboxes instead of local WezTerm panels. Provisions ephemeral microVMs with Claude Code + plugin pre-installed, runs benchmark prompts, extracts hook artifacts, and produces coverage reports.
Open skill - /plugin-audit
Audit vercel-plugin performance on real-world projects. Extracts tool calls from Claude Code conversation logs, tests hook matching against actual inputs, identifies pattern coverage gaps, and checks plugin cache staleness. Use when asked to audit, test, or investigate plugin
Open skill - /release
Release vercel-plugin — run gates, bump version, generate artifacts, commit, and push. Use when asked to "release", "ship", "bump and push", or "cut a release".
Open skill - /vercel-plugin-eval
Run live eval sessions against the vercel-plugin to verify hook behavior, skill injection, dedup correctness, and coverage. Launches real Claude Code sessions via WezTerm, monitors debug logs, and produces a structured coverage report.
Open skill

