Referencia CLI

whatalo dev

Inicia el desarrollo local con un túnel en vivo — tu plugin aparece en la barra lateral del admin de Whatalo de inmediato.

Sintaxis

whatalo dev [opciones]

Opciones

FlagCortoTipoPor defectoDescripción
--store <slug>-sstringcachéTienda de desarrollo a conectar
--tunnel-url <url>stringUsar tu propia URL de túnel en lugar de cloudflared
--no-tunnelbooleanUsar localhost directamente (sin túnel)
--port <number>-pstringdesde configSobreescribir el puerto local dev
--resetbooleanForzar re-selección de tienda de desarrollo
--verbose-vbooleanMostrar stdout/stderr del servidor dev
--portal-url <url>stringURL del Portal del Desarrollador

Secuencia de inicio

Cuando ejecutas whatalo dev, los siguientes pasos se ejecutan en orden:

  1. Leer config — Carga whatalo.app.toml del directorio actual (requerido)
  2. Autenticar — Verifica la sesión; ejecuta auto-login si es necesario
  3. Cargar manifiesto — Lee whatalo.app.ts vía esbuild para extraer las páginas, permisos y URLs del plugin
  4. Seleccionar tienda dev — Flag --store → tienda en caché → auto-selección → prompt interactivo
  5. Iniciar servidor dev — Ejecuta el comando definido en build.dev_command en tu whatalo.app.toml; espera hasta 30 segundos hasta que esté listo
  6. Crear túnel — Descarga e inicia cloudflared automáticamente (a menos que se use --tunnel-url o --no-tunnel); extrae la URL *.trycloudflare.com
  7. Registrar sesión dev — Envía POST /api/dev-sessions con tu manifiesto y URL del túnel
  8. Mostrar consola dev — Imprime todas las URLs y atajos de teclado

Consola de desarrollo

Una vez en ejecución, la consola muestra:

  Plugin:   Mi Plugin
  Tienda:   mi-tienda-dev
  Local:    http://localhost:5173
  Túnel:    https://xxx.trycloudflare.com

  Presiona p para abrir preview, r para reiniciar, q para salir

Atajos de teclado (solo TTY)

TeclaAcción
pAbrir URL de preview en el navegador
rReiniciar el servidor dev
q o Ctrl+CDetener todo y limpiar

Procesos en segundo plano

Mientras whatalo dev está en ejecución, tres tareas en segundo plano mantienen la sesión activa y sincronizada:

TareaIntervaloQué hace
HeartbeatCada 30 minutosPATCH /api/dev-sessions/{id} para mantener la sesión viva
Watcher de configAl cambiar el archivoRecarga whatalo.app.toml cuando lo guardas
Watcher de manifiestoAl cambiar el archivoRecarga whatalo.app.ts y sincroniza cambios al portal (hot-reload)

Detalles de la sesión dev

Se crea una instalación temporal del plugin para tu tienda de desarrollo con status: 'development'. Esto hace que tu plugin sea visible en la barra lateral del admin de inmediato, sin pasar por el proceso de revisión.

PropiedadValor
Duración de sesiónHasta 8 horas
Tiempo de vida absoluto72 horas
Visible en sidebarSí (pinned_to_sidebar: true)
appUrl del manifiestoConfigurado automáticamente a tu URL de túnel
webhookUrl del manifiestoConfigurado automáticamente a {tunnelUrl}/webhooks/whatalo

La sesión dev se elimina cuando sales de whatalo dev, lo que también remueve el plugin de la barra lateral.

Modos de túnel

Por defecto — cloudflared (recomendado)

cloudflared se descarga automáticamente en ~/.whatalo/bin/cloudflared en el primer uso. Plataformas compatibles:

  • macOS (Intel y Apple Silicon)
  • Linux (x86-64 y ARM64)

Túnel personalizado (--tunnel-url)

Usa tu propio proveedor de túnel (ngrok, localtunnel, o cualquier URL HTTPS):

whatalo dev --tunnel-url https://tu-tunel.ejemplo.com

Sin túnel (--no-tunnel)

Usa localhost directamente. El plugin cargará en tu navegador, pero el admin de Whatalo (en un dominio diferente) no podrá acceder a tu iframe a menos que ambos estén en la misma máquina.

whatalo dev --no-tunnel

Ejemplos

Iniciar con una tienda dev específica:

whatalo dev --store mi-tienda-slug

Usar un puerto personalizado y mostrar la salida del servidor dev:

whatalo dev --port 3000 --verbose

Usar tu propio túnel ngrok:

whatalo dev --tunnel-url https://abcd-1234.ngrok.io

Forzar la re-selección de la tienda dev:

whatalo dev --reset

Limpieza al salir

Cuando presionas q o Ctrl+C, whatalo dev realiza un cierre limpio en orden:

  1. Detiene el intervalo de heartbeat
  2. Cierra los watchers de archivos
  3. Envía DELETE /api/dev-sessions/{id} (remueve el plugin del sidebar)
  4. Termina el proceso del túnel
  5. Termina el proceso del servidor dev

Mensajes de error

MensajeCausa
No whatalo.app.toml found. Run 'whatalo init' first.Comando ejecutado fuera de un directorio de proyecto plugin
Port {port} is already in use.Otro proceso está usando el puerto configurado
Plugin "{slug}" was not found in your account.El plugin_id en whatalo.app.toml no coincide con tu cuenta
No development stores found. Create one at {link}Tu cuenta no tiene tiendas de desarrollo
Local server did not start. Check your 'build.dev_command' in whatalo.app.tomlEl servidor dev no estuvo listo en 30 segundos
Tunnel failed to start.cloudflared no pudo establecer conexión

Comandos relacionados

On this page