npx skills add ...
npx skills add vercel/vercel-plugin --skill vercel-plugin-eval
npx skills add vercel/vercel-plugin --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.
The same skill content is published under more than one repo. The install counts are split across them; any of these commands works.
Launch real Claude Code sessions with the plugin installed, monitor debug logs in real-time, and verify every hook fires correctly with proper dedup.
claude --print or -p — hooks don't fire, no files created--dangerously-skip-permissions/tmp/ — always use ~/dev/vercel-plugin-testing/settings.local.json — use npx add-pluginCLAUDE_PLUGIN_ROOT manuallybash -c in WezTerm — use /bin/zsh -icx aliasCopy the exact commands below. Do not improvise.
Always append a timestamp to directory names so reruns don't overwrite old projects:
skillInjection: appears 3x per actual injection in the debug log (initial check, parsed, success). Divide by 3.
Look for real catches — API key bypass, outdated models, wrong patterns:
Describe products and features, never name specific technologies. Let the plugin infer which skills to inject. Always end prompts with: "Link the project to my vercel-labs team so we can deploy it later. Skip any planning and just build it. Get the dev server running."
| Scenario Type | Skills Exercised |
|---|---|
| AI chat app | ai-sdk, ai-gateway, nextjs, ai-elements |
| Durable workflow | workflow, ai-sdk, vercel-queues |
| Monorepo | turborepo, turbopack, nextjs |
| Edge auth + routing | routing-middleware, auth, sign-in-with-vercel |
| Chat bot (multi-platform) | chat-sdk, ai-sdk, vercel-storage |
| Feature flags + CRM | vercel-flags, vercel-queues, ai-sdk |
| Email pipeline | email, satori, ai-sdk, vercel-storage |
| Marketplace/payments | payments, marketplace, cms |
| Kitchen sink | micro, ncc, all niche skills |
These need explicit technology references in the prompt because agents don't naturally reach for them:
ai-elements — say "use the AI Elements component registry"v0-dev — say "generate components with v0"vercel-firewall — say "use Vercel Firewall for rate limiting"marketplace — say "publish to the Vercel Marketplace"geist — say "install the geist font package"json-render — name files components/chat-*.tsxWrite results to .notes/COVERAGE.md with:
LOG=~/.claude/debug/<session-id>.txt
# SessionStart (3 hooks)
grep "SessionStart.*success" "$LOG"
# PreToolUse skill injection
grep -c "executePreToolHooks" "$LOG" # total calls
grep -c "provided additionalContext" "$LOG" # injections
# UserPromptSubmit
grep "UserPromptSubmit.*success" "$LOG"
# PostToolUse validate + shadcn font-fix
grep "posttooluse-validate.*provided" "$LOG"
grep "PostToolUse:Bash.*success" "$LOG"
# SessionEnd cleanup
grep "SessionEnd" "$LOG"TMPDIR=$(node -e "import {tmpdir} from 'os'; console.log(tmpdir())" --input-type=module)
CLAIMDIR="$TMPDIR/vercel-plugin-<session-id>-seen-skills.d"
# Claim files = one per skill, atomic O_EXCL
ls "$CLAIMDIR"
# Compare: injections should equal claims
inject_meta=$(grep -c "skillInjection:" "$LOG")
claims=$(ls "$CLAIMDIR" 2>/dev/null | wc -l | tr -d ' ')
echo "Injections: $((inject_meta / 3)) | Claims: $claims"grep "VALIDATION" "$LOG" | head -10rm -rf ~/dev/vercel-plugin-testing