Awesome-claude-skills vercel-cli

Deploy and manage Vercel projects. Use for deployments, environment variables, logs, domains, and cron jobs.

install
source · Clone the upstream repo
git clone https://github.com/itsnex1s/awesome-claude-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/itsnex1s/awesome-claude-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/vercel-cli" ~/.claude/skills/itsnex1s-awesome-claude-skills-vercel-cli && rm -rf "$T"
manifest: skills/vercel-cli/SKILL.md
source content

vercel-cli

Deploy, manage environment variables, view logs, configure domains, and set up cron jobs with Vercel CLI.

Installation

npm install -g vercel
vercel login
vercel link

Quick Reference

Project Setup

vercel init              # Initialize new project
vercel link              # Link existing directory to Vercel project
vercel whoami            # Show current user
vercel project ls        # List projects

Deployment

vercel                   # Deploy preview
vercel --prod            # Deploy to production
vercel deploy --force    # Force redeploy
vercel deploy --env NODE_ENV=production -e API_KEY=secret

# Build locally first
vercel build
vercel deploy --prebuilt

# Manage deployments
vercel redeploy <deployment-url-or-id>    # Rebuild + redeploy
vercel promote <deployment-url-or-id>     # Promote preview to production
vercel rollback <deployment-url-or-id>    # Rollback to previous

# List and inspect
vercel list                               # List all deployments
vercel inspect <deployment-url-or-id>     # Get deployment info
vercel remove <deployment-id>             # Delete deployment

Environment Variables

List

vercel env ls                    # List all env vars
vercel env ls production         # List for specific environment
vercel env ls preview
vercel env ls development

Add

vercel env add MY_VAR                      # Add interactively
vercel env add API_TOKEN production        # Add to specific environment
vercel env add SECRET_KEY --sensitive      # Add sensitive (masked)
vercel env add MY_VAR --force              # Override existing
vercel env add DB_URL production main      # Add for specific branch

Update

vercel env update MY_VAR                   # Update interactively
vercel env update API_TOKEN production     # Update specific environment
echo "value" | vercel env update MY_VAR production  # From stdin

Remove

vercel env rm API_TOKEN                    # Remove from all
vercel env rm SECRET_KEY production        # Remove from specific
vercel env rm API_TOKEN -y                 # Skip confirmation

Pull to Local

vercel env pull                            # Pull to .env.local
vercel env pull .env.development.local     # Pull to custom file
vercel env pull .env.production --environment production

Domains

vercel domains ls                          # List domains
vercel domains add example.com             # Add domain
vercel domains rm example.com              # Remove domain
vercel domains verify example.com          # Verify domain
vercel domains add example.com --project my-project

Logs

Runtime Logs

vercel logs <deployment-url>               # Stream runtime logs
vercel logs <deployment-url> --json        # JSON output
vercel logs <url> --json | jq 'select(.level == "error")'

Build Logs

vercel inspect <deployment-url> --logs             # Show build logs
vercel inspect <deployment-url> --logs --wait      # Wait for build
vercel inspect <deployment-url> --logs --timeout 90s

Local Development

vercel dev                       # Run local dev server
vercel dev --listen 3001         # Specific port
vercel dev --environment preview # Specific environment

Cron Jobs

Configured in

vercel.json
only (no CLI commands).

{
  "crons": [
    {
      "path": "/api/cron/daily-task",
      "schedule": "0 0 * * *"
    },
    {
      "path": "/api/cron/every-5-min",
      "schedule": "*/5 * * * *"
    }
  ]
}

Cron Expression Format (UTC timezone)

┌───────────── minute (0-59)
│ ┌───────────── hour (0-23)
│ │ ┌───────────── day of month (1-31)
│ │ │ ┌───────────── month (1-12)
│ │ │ │ ┌───────────── day of week (0-6, Sunday=0)
│ │ │ │ │
* * * * *

Common Schedules

*/5 * * * *     Every 5 minutes
0 */4 * * *     Every 4 hours
0 0 * * *       Daily at midnight UTC
0 9 * * 1       Every Monday at 9 AM UTC
0 0 1 * *       First day of month

Common Workflows

Deploy New Project

vercel link
vercel env add DATABASE_URL production
vercel env add API_KEY production --sensitive
vercel --prod

Fix Failed Deployment

vercel inspect <deployment-id> --logs      # Check what went wrong
vercel --prod                              # Fix and redeploy
# OR
vercel rollback <previous-deployment-id>   # Rollback

Environment Variable Workflow

vercel env add DATABASE_URL production
vercel env add API_KEY production --sensitive
vercel env pull .env.local                 # Pull to local
vercel env update API_KEY production       # Update after rotation
vercel env rm OLD_TOKEN -y                 # Remove deprecated

Monitor Application

vercel logs my-app.vercel.app
vercel logs my-app.vercel.app --json | jq 'select(.level == "error")'
vercel logs my-app.vercel.app --json | jq 'select(.path | startswith("/api/"))'

Debug Cron Jobs

cat vercel.json | jq '.crons'              # Check config
vercel --prod                               # Deploy changes
vercel logs <url> --json | jq 'select(.path | contains("/api/cron/"))'

Environment Scopes

ScopeDescription
production
Production environment
preview
Preview/staging deployments
development
Local
.env.local
file
Git branchBranch-specific overrides

Useful Flags

FlagDescription
--prod
Deploy to production
--force
Force redeploy
-y
Skip confirmation prompts
--json
JSON output
--debug
Debug mode
--token <token>
Use specific auth token

Requirements

  • Node.js 18+
  • Vercel account

Notes

  • Use
    vercel dev
    for local development with Vercel features
  • Environment variables in dashboard override CLI-added vars
  • Cron jobs only run on production deployments
  • User-Agent for cron:
    vercel-cron/1.0
    (use for authentication)