Deploy apps to Vercel. Use when asked to deploy, ship, or publish a web application, or manage Vercel projects, domains, and environment variables.
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
You can deploy web applications to Vercel using the vercel CLI.
Auth is handled by OneCLI — the HTTPS_PROXY injects the real token into API requests automatically. The Vercel CLI requires a token to be present to skip its local credential check, so always pass --token placeholder on every command. OneCLI replaces this with the real token at the proxy level.
Before any Vercel operation, verify auth:
vercel whoami --token placeholderIf this fails with an auth error, ask the user to add a Vercel token to OneCLI. They can create one at https://vercel.com/account/tokens and register it via onecli secrets create on the host. Once added, retry vercel whoami.
Always use --yes to skip interactive prompts and --token placeholder for auth (OneCLI replaces with real token).
# Deploy to production
vercel deploy --yes --prod --token placeholder
# Deploy from a specific directory
vercel deploy --yes --prod --token placeholder --cwd /path/to/project
# Preview deployment (not production)
vercel deploy --yes --token placeholderAfter deploying, verify the live URL:
# Check deployment status
vercel inspect <deployment-url> --token placeholderDon't send the deployment URL to the user until you've confirmed it's actually working. At minimum:
npm run build (or the project's build command) before vercel deploy. If the build fails locally, fix it first; don't deploy broken code.vercel deploy output shows a "Production: https://..." URL and the status is READY (confirm with vercel inspect).curl -sI <url> | head -1 should return HTTP/2 200 (or another 2xx/3xx). A 404/500 means something's broken even though Vercel reported success.agent-browser is loaded, open the URL and eyeball it. Helpful for catching broken layouts that a 200 response wouldn't reveal.If any check fails, fix the issue and redeploy before reporting to the user.
# Link to an existing Vercel project (non-interactive)
vercel link --yes --token placeholder
# List recent deployments
vercel ls --token placeholder
# List all projects
vercel project ls --token placeholder# List domains
vercel domains ls --token placeholder
# Add a domain to the current project
vercel domains add example.com --token placeholder# Pull env vars from Vercel to local .env
vercel env pull --token placeholder
# Add an env var (use echo to pipe the value — avoids interactive prompt)
echo "value" | vercel env add VAR_NAME production --token placeholder| Error | Fix |
|---|---|
Error: No framework detected | Ensure the project has a package.json with a build script, or set the framework in vercel.json |
Error: Rate limited | Wait and retry. Don't loop — report to user |
Error: You have reached your project limit | User needs to upgrade Vercel plan or delete unused projects |
ENOTFOUND api.vercel.com | Network issue. Check proxy connectivity |
Auth error after vercel whoami | Credential may be expired. Ask the user to refresh the Vercel token in OneCLI |
npm run build locally before deploying to catch build errors early--cwd instead of cd to keep your working directory stablevercel deploy auto-detects the framework — no extra config neededvercel.json only when you need custom build settings, rewrites, or headers641963c
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.