Skip to content
Plak
Esc
↑↓navigate↵open⌘Jpreview
On this page

Referencia del panel

Sintaxis, opciones y alcances de todos los subcomandos plak panel.

Todos los subcomandos plak panel operan sobre tu cuenta conectada (ver Conexión). El token guardado jamás se envía a otro origen: --panel/--dev en estos comandos se rechazan; para cambiar de panel reconecta primero. --json nunca incluye secretos.

Alcances: lecturas con user:read; escrituras de servidores con servers:write; escrituras de sitios y WordPress con sites:write (opt-in en Perfil > API Keys). Las claves de pairing aprobado traen lectura + SSH; un 403 indica cómo otorgar el scope.

Lectura

plak panel sites [--page N] [--per-page N] [--all] [--json]
plak panel site <id|dominio> [--json]
plak panel servers [--page N] [--per-page N] [--all] [--json]
plak panel server <id|nombre> [--json]

--per-page 1–100 (defecto 25); --all recorre todas las páginas. La selección acepta id numérico o dominio/nombre exacto. Un id ajeno resuelve a 404: nada de otras cuentas es enumerable.

plak panel sites --all --json
plak panel site ejemplo.com

Vinculación

plak panel link <sitio-panel> <sitio-local> [--system-user USUARIO] [--path RUTA] [--key CLAVE | --generate] [--alias NOMBRE] [--yes] [--json]
plak panel unlink <sitio-local> [--yes]
plak panel links [--json]

Autoriza una sola clave pública (ssh:authorize), verifica SSH y la raíz WordPress real (StrictHostKeyChecking=accept-new; una ruta incorrecta nunca se vincula), crea o reutiliza el remoto (defecto panel-<dominio>) y registra .panel-link (panel, cuenta e IDs; sin secretos). unlink solo borra el registro; la llave SSH se retira en el panel (Servidores > SSH keys) y vive independiente de la API key. Detalle del flujo en Vincular y migrar.

Proveedores, servidores y sitios

plak panel providers [--json]
plak panel create-server --name N --provider ID --region ID --plan ID [--database T] [--php V] [--os O] [--wait SECS] [--poll SECS] [--json]
plak panel delete-server <id|nombre> [--yes] [--json]
plak panel restart-server <id|nombre> [--yes] [--json]
plak panel create-site --domain D --server <id|nombre> [--wait SECS] [--poll SECS] [--json]
plak panel delete-site <id|dominio> [--yes] [--json]

La creación es asíncrona (202 busy): espera hasta active/failed o timeout (--wait defecto 600, --poll 15). Un fallo remoto nunca queda como éxito. Necesitan servers:write / sites:write.

WordPress

Patrón: plak panel <cmd> <sitio> [opciones] [--json] (<sitio> = id o dominio exacto). Lecturas con user:read; mutaciones con sites:write. Ayuda por área: plak panel wp-overview help.

Comando Opciones
wp-overview, wp-themes, wp-plugins [--refresh]
wp-complete-install --title T --user U --email E --password P (los 4 requeridos)
wp-mark-installed, wp-install-wpcli —
wp-xmlrpc --block | --allow
wp-theme-activate, wp-plugin-activate, wp-plugin-deactivate <slug> (uno)
wp-theme-update, wp-plugin-update <slug...> (uno o más)
wp-theme-install, wp-plugin-install <slug> [--activate]
wp-theme-delete, wp-plugin-delete <slug...> [--yes]
wp-search-replace --search S [--replace R] [--dry-run] [--yes] (--search requerido; sin --dry-run confirma)
wp-cli -- <comando...> (remoto vigilado; lo destructivo se deniega en servidor)
wp-set-php --version V [--wait S] [--poll S] (espera hasta aplicado)
wp-set-robots --disable | --enable

Los resultados parciales (updated/failed) siempre se muestran.

Servidores

Patrón: plak panel <cmd> <servidor> [opciones] [--json] (<servidor> = id o nombre exacto). Lecturas con user:read; mutaciones con servers:write. Ayuda: plak panel service-list help.

Comando Opciones
service-list —
service-restart, service-reload <servicio> [--yes] (mysql, nginx, supervisor; reload suma mariadb, postgresql)
wpcli-install [--wait S] [--poll S] (instala y espera)
wpcli-uninstall [--yes]
php-info —
php-install --version V [--yes]
php-cli-set --version V
opcache-enable, opcache-disable, opcache-refresh [--yes]
firewall-list —
firewall-add --name N --port P [--type tcp|udp] [--rule allow|deny] [--ip IP] [--yes]
firewall-del <regla-id> [--yes]
users-list —
users-add --name N [--sudo] (la contraseña se muestra una sola vez)
users-del <id|ploi_id> [--yes] (nunca ploi)

Todo es síncrono en el servidor: un 200 solo vuelve cuando Ploi respondió.

Infraestructura de sitios

Patrón: plak panel <cmd> <sitio> [opciones] [--json]. Lecturas con user:read; mutaciones con sites:write. Ayuda: plak panel db-add help. Los recursos locales se direccionan por id del panel; DNS y HTTP auth por su id remoto.

Grupo Lectura Escritura
Bases de datos db-list db-add --name N --user U --password P · db-del <id> [--yes]
Cronjobs cron-list cron-add --command CMD [--frequency F] · cron-del <id> [--yes]
Certificados cert-list cert-add --type letsencrypt|custom [--domain D] [--cert C] [--private P] · cert-del <id> [--yes]
Redirecciones redirect-list redirect-add --from /old --to /new [--type redirect|permanent] · redirect-del <id> [--yes]
Alias alias-list alias-add --domain D [--cert] · alias-del <alias> [--yes] (por alias, no id)
DNS (Cloudflare) dns-list dns-add --type T --name N --content C [--ttl N] · dns-update <registro> --type T --name N --content C [--ttl N] · dns-del <registro> [--yes]
HTTP auth authuser-list authuser-add --name N --password P [--path /] · authuser-del <id> [--yes]
Caché cache-info cache-enable|cache-disable|cache-flush|cache-opcache-refresh [--yes]
Apps app-info app-install --type wordpress|nextcloud [--options JSON] [--wait S] · app-uninstall [--yes]

Credencial, Access y revocación

  • Vive en ${PLAK_HOME:-~/.plak}/connection.json (directorio 700, archivo 600, escritura atómica): panel_url, token e identidad mínima. Nunca en logs, argv, historial ni --json.
  • plak connect status [--json] revalida contra GET /api/v1/user (válido / inválido-revocado / bloqueada / panel inalcanzable).
  • Tras Cloudflare Access (desarrollo): la sesión del navegador no se comparte; exporta PLAK_CF_ACCESS_TOKEN (token de servicio, distinto de la API key) y la CLI lo envía como CF-Access-Token. Las respuestas HTML/redirect de Access se detectan y no cuentan como conexión válida. La API nunca sigue redirecciones con el Bearer.
  • plak disconnect [--yes] solo borra la credencial local; la clave sigue viva hasta revocarla en Perfil > API Keys > Revoke. Las autorizaciones SSH de link tienen su propio ciclo de vida.

En sitios vinculados, push/pull revalidan panel, cuenta, remoto y dominio antes de lo destructivo y se detienen con explicación ante cualquier desvío (Vincular y migrar).

Was this page helpful?