Skills Agentes

Env Vars

Guía experta de Vercel sobre variables de entorno: úsala con archivos .env, comandos vercel env, tokens OIDC o configuración específica por entorno.

Oficial
Estrellas
287

en todo el repo

Actividad
32

0–100, la ruta de este skill

Actualizado
hace 7 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
2.4k tok

40 tok en reposo

Paquete
1 archivo

9 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add vercel/vercel-plugin --skill env-vars --agent claude-code

Se instala solo en este repositorio.

Qué hace

  • Explica el orden de carga de archivos .env y qué archivos son seguros para git
  • Detalla comandos vercel env pull/add/ls/rm con ejemplos concretos
  • Describe el ciclo de vida de tokens OIDC (VERCEL_OIDC_TOKEN) y su troubleshooting
  • Da un flujo de bootstrap para vincular proyecto y verificar variables faltantes
  • Advierte sobre gotchas como que vercel env pull sobrescribe el archivo completo

Úsalo cuando

  • Al trabajar con archivos .env, .env.local, .env.production, etc.
  • Al usar comandos vercel env pull/add/rm/ls
  • Al gestionar tokens OIDC o configuración específica por entorno

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • “¿Cómo saco mis variables de entorno de Vercel a .env.local?”
    • “Necesito agregar un secreto solo para producción con vercel env add”
    • “Mi VERCEL_OIDC_TOKEN expiró, ¿cómo lo renuevo?”
    • “Configura variables de entorno solo para la rama staging”

    SKILL.md

    En inglés

    Vercel Environment Variables

    You are an expert in Vercel environment variable management — .env file conventions, the vercel env CLI, OIDC token lifecycle, and environment-specific configuration.

    .env File Hierarchy

    Vercel and Next.js load environment variables in a specific order. Later files override earlier ones:

    File Purpose Git-tracked?
    .env Default values for all environments Yes
    .env.local Local overrides and secrets No (gitignored)
    .env.development Development-specific defaults Yes
    .env.development.local Local dev overrides No
    .env.production Production-specific defaults Yes
    .env.production.local Local prod overrides No
    .env.test Test-specific defaults Yes
    .env.test.local Local test overrides No

    Load Order (Next.js)

    1. .env (lowest priority)
    2. .env.[environment] (development, production, or test)
    3. .env.local (skipped in test environment)
    4. .env.[environment].local (highest priority, skipped in test)

    Critical Rules

    • Never commit secrets to .env, .env.development, or .env.production — use .local variants or Vercel environment variables
    • .env.local is always gitignored by Next.js — this is where vercel env pull writes secrets
    • Variables prefixed with NEXT_PUBLIC_ are exposed to the browser bundle — never put secrets in NEXT_PUBLIC_ vars
    • All other variables are server-only (API routes, Server Components, middleware)

    vercel env CLI

    Pull Environment Variables

    # Pull all env vars for the current environment into .env.local
    vercel env pull .env.local
    
    # Pull for a specific environment
    vercel env pull .env.local --environment=production
    vercel env pull .env.local --environment=preview
    vercel env pull .env.local --environment=development
    
    # Overwrite existing file without prompting
    vercel env pull .env.local --yes
    
    # Pull to a custom file
    vercel env pull .env.production.local --environment=production
    

    Add Environment Variables

    # Interactive — prompts for value and environments
    vercel env add MY_SECRET
    
    # Non-interactive
    echo "secret-value" | vercel env add MY_SECRET production
    
    # Add to multiple environments
    echo "secret-value" | vercel env add MY_SECRET production preview development
    
    # Add a sensitive variable (encrypted, not shown in logs)
    vercel env add MY_SECRET --sensitive
    

    List Environment Variables

    # List all environment variables
    vercel env ls
    
    # Filter by environment
    vercel env ls production
    

    Remove Environment Variables

    # Remove from specific environment
    vercel env rm MY_SECRET production
    
    # Remove from all environments
    vercel env rm MY_SECRET
    

    Bootstrap Flow (Fresh Clone / New Machine)

    Use this sequence when setting up a project from scratch:

    # 1) Link first so pulls target the correct Vercel project
    vercel link --yes --project <name-or-id> --scope <team>
    
    # 2) Pull env vars into .env.local
    vercel env pull .env.local --yes
    
    # 3) Verify required keys from .env.example exist in .env.local
    while IFS='=' read -r key _; do
      [[ -z "$key" || "$key" == \#* ]] && continue
      grep -q "^${key}=" .env.local || echo "Missing in .env.local: $key"
    done < .env.example
    

    Temporary Path: Run With Vercel Envs Without Writing a File

    If you need Vercel environment variables immediately but do not want to write .env.local yet:

    vercel env run -- npm run dev
    

    This is useful for quick validation during bootstrap, but still pull .env.local for a normal local workflow.

    Re-pull After Secret or Provisioning Changes

    After creating/updating secrets (vercel env add, dashboard changes) or provisioning integrations that add env vars (for example Neon/Upstash), re-run:

    vercel env pull .env.local --yes
    

    OIDC Token Lifecycle

    Vercel uses OIDC (OpenID Connect) tokens for secure, keyless authentication between your app and Vercel services (AI Gateway, storage, etc.).

    How It Works

    1. On Vercel deployments: VERCEL_OIDC_TOKEN is automatically injected as a short-lived JWT and auto-refreshed — zero configuration needed
    2. Local development: vercel env pull .env.local provisions a VERCEL_OIDC_TOKEN valid for ~12 hours
    3. Token expiry: When the local OIDC token expires, re-run vercel env pull .env.local --yes to get a fresh one. Consider re-pulling at the start of each dev session to avoid mid-session auth failures

    Common OIDC Patterns

    // The @vercel/oidc package reads VERCEL_OIDC_TOKEN automatically
    import { getVercelOidcToken } from '@vercel/oidc'
    
    // AI Gateway uses OIDC by default — no manual token handling needed
    import { gateway } from 'ai'
    const result = await generateText({
      model: gateway('openai/gpt-5.2'),
      prompt: 'Hello',
    })
    

    Troubleshooting OIDC

    Symptom Cause Fix
    VERCEL_OIDC_TOKEN missing locally Haven't pulled env vars vercel env pull .env.local
    Auth errors after ~12h locally Token expired vercel env pull .env.local --yes
    Works on Vercel, fails locally Token not in .env.local vercel env pull .env.local
    AI_GATEWAY_API_KEY vs OIDC Both set, key takes priority Remove AI_GATEWAY_API_KEY to use OIDC

    Environment-Specific Configuration

    Vercel Dashboard vs .env Files

    Use Case Where to Set
    Secrets (API keys, tokens) Vercel Dashboard (https://vercel.com/{team}/{project}/settings/environment-variables) or vercel env add
    Public config (site URL, feature flags) .env or .env.[environment] files
    Local-only overrides .env.local
    CI/CD secrets Vercel Dashboard (https://vercel.com/{team}/{project}/settings/environment-variables) with environment scoping

    Environment Scoping on Vercel

    Variables set in the Vercel Dashboard at https://vercel.com/{team}/{project}/settings/environment-variables can be scoped to:

    • Production — only vercel.app production deployments
    • Preview — branch/PR deployments
    • Development — vercel dev and vercel env pull

    A variable can be assigned to one, two, or all three environments.

    Git Branch Overrides

    Preview environment variables can be scoped to specific Git branches:

    # Add a variable only for the "staging" branch
    echo "staging-value" | vercel env add DATABASE_URL preview --git-branch=staging
    

    Gotchas

    vercel env pull Overwrites Custom Variables

    vercel env pull .env.local replaces the entire file — any manually added variables (custom secrets, local overrides, debug flags) are lost. Always back up or re-add custom vars after pulling:

    # Save custom vars before pulling
    grep -v '^#' .env.local | grep -v '^VERCEL_\|^POSTGRES_\|^NEXT_PUBLIC_' > .env.custom.bak
    vercel env pull .env.local --yes
    cat .env.custom.bak >> .env.local  # Re-append custom vars
    

    Or maintain custom vars in a separate .env.development.local file (loaded after .env.local by Next.js).

    Scripts Don't Auto-Load .env.local

    Only Next.js auto-loads .env.local. Standalone scripts (drizzle-kit, tsx, custom Node scripts) need explicit loading:

    # Use dotenv-cli
    npm install -D dotenv-cli
    npx dotenv -e .env.local -- npx drizzle-kit push
    npx dotenv -e .env.local -- npx tsx scripts/seed.ts
    
    # Or source manually
    source <(grep -v '^#' .env.local | sed 's/^/export /') && node scripts/migrate.js
    

    Best Practices

    1. Use vercel env pull as part of your setup workflow — document it in your README
    2. Never hardcode secrets — always use environment variables
    3. Scope narrowly — don't give preview deployments production database access
    4. Rotate OIDC tokens regularly in local dev — re-pull when you see auth errors
    5. Use .env.example — commit a template with empty values so teammates know which vars are needed
    6. Prefix client-side vars with NEXT_PUBLIC_ — and never put secrets in them
    7. Keep custom vars in .env.development.local — protects them from vercel env pull overwrites

    Official Documentation

    Reproducido de vercel/vercel-plugin bajo licencia NOASSERTION. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Requiere el CLI de vercel instalado y el proyecto vinculado (vercel link) para usar los comandos vercel env.

    Necesita en el PATH:nodenpmnpxsed

    Detalles

    Creador
    vercel
    Licencia
    NOASSERTION
    Recursos incluidos
    Solo SKILL.md
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de vercel/vercel-plugin

    Este repo incluye 43 skills. Si instalas uno, normalmente ya tienes los demás. Ver el pack vercel-plugin entero y su comando de instalación

    Corrige el conocimiento desactualizado del LLM sobre la plataforma Vercel e introduce sus productos nuevos. Se inyecta al inicio de la sesión.

    Costo de contexto al activarse
    1.8k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    Oficialdevops infraestructura

    Guía experta de Vercel Connect: obtén tokens OAuth con permisos limitados para servicios de terceros (Slack, GitHub, servidores MCP, OAuth, Snowflake) en nombre de apps o usuarios vía Vercel OIDC.

    Costo de contexto al activarse
    4.8k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    Oficialdesarrollo apis

    Depura el caching de la CDN de Vercel: tasa de aciertos, contenido obsoleto, revalidación, ISR + PPR, cacheReason, ppr_state y costos.

    Costo de contexto al activarse
    5.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 2 meses
    Oficialdevops infraestructura

    Guía experta sobre Vercel Functions: Serverless Functions, Edge Functions, Fluid Compute, streaming, Cron Jobs y configuración de runtime para código server-side en Vercel.

    Costo de contexto al activarse
    5.6k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    Oficialdevops infraestructura

    Guía de arquitectura backend: úsala para planear, construir o migrar una API o backend, elegir entre Functions, Services, contenedores, Workflow, Queues y bases de datos de Marketplace, o seleccionar framework y runtime.

    Costo de contexto al activarse
    1.5k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    Oficialdesarrollo apis

    Eve

    287

    Guía de eve, el framework para agentes de IA duraderos: runtime basado en filesystem, sesiones, tools, skills, canales, sandboxes, subagentes, schedules, evals y observabilidad con Agent Runs.

    Costo de contexto al activarse
    1.5k tok
    Tamaño del paquete
    3 archivos
    Última actualización
    el mes pasado
    Oficialherramientas desarrollo

    Skills relacionados

    Accede y prueba deployments de Vercel protegidos por Vercel Authentication, SSO o Deployment Protection, usando `vercel curl` o un token OIDC de corta duración.

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 2 meses
    Oficialdevops infraestructura

    Orquestador de bootstrap para repos que dependen de recursos vinculados a Vercel (bases de datos, auth, integraciones), asegurando el orden correcto de linkeo, provisión y primer arranque.

    Costo de contexto al activarse
    2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 7 meses
    Oficialdevops infraestructura

    Depura el caching de la CDN de Vercel: tasa de aciertos, contenido obsoleto, revalidación, ISR + PPR, cacheReason, ppr_state y costos.

    Costo de contexto al activarse
    5.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 2 meses
    Oficialdevops infraestructura