Ir al contenido

CLI oficial

Necesitás Node.js 22.19 o posterior de la serie 22 y npm. Descargá el paquete CLI de esta entrega, comprobá su hash publicado en el manifiesto e instalalo localmente:

Ventana de terminal
npm install -g ./mopdow-erp-cli.tgz
erp help

El paquete se distribuye desde este portal; no se presupone que esté publicado en el registro npm. Dentro del repositorio también podés ejecutar node apps/cli/bin/erp.mjs.

La aplicación OAuth debe registrar exactamente http://127.0.0.1:53682/callback. Si cambiás el puerto con --callback-port, registrá ese callback. No compartas el perfil local de una persona con otra.

Ventana de terminal
erp auth login --server https://TU_AMBIENTE --client-id CLIENT_ID --profile trabajo
erp org whoami --profile trabajo --json
erp schema list --profile trabajo --json
erp schema describe OBJETO_DESCUBIERTO --profile trabajo --json
erp record list OBJETO_DESCUBIERTO --take 5 --profile trabajo --json

OBJETO_DESCUBIERTO se reemplaza por un nombre API real. El login abre el navegador y utiliza PKCE. Las credenciales se guardan con DPAPI en Windows, Keychain en macOS o Secret Service en Linux. No entregues los archivos de credenciales a una IA.

--json produce un envelope con schemaVersion: "1.0", ok y data o error. El cliente debe inspeccionar también el resultado de negocio; que el comando consultó un deployment correctamente no significa que ese deployment haya terminado bien.

Para un servicio técnico, el perfil env toma ERP_SERVER_URL, ERP_CLIENT_ID, ERP_CLIENT_SECRET y ERP_SCOPES. Usá el almacén de secretos de tu entorno y no imprimas esas variables. ERP_PROFILE=env evita guardar credenciales de CI.

La CLI cubre datos, acciones, archivos, analítica, bulk, eventos, calendario, notificaciones, metadata y gobierno de agentes. erp api request permite utilizar operaciones REST sin un comando dedicado. Consultá erp help y OpenAPI para el contrato.

Las mutaciones generan una clave de idempotencia y conservan la misma clave durante los reintentos de esa ejecución. --dry-run prepara la solicitud sin enviar Authorization. --no-prompt evita preguntas interactivas; no autoriza por sí solo acciones destructivas. Para una acción ya revisada y autorizada usá --yes.