DocumentaciónPlataforma

Plataforma

CLI

Instala @eventpipe/cli desde npm (https://www.npmjs.com/package/@eventpipe/cli). Empaqueta el nodo de código con esbuild y crea una nueva versión del pipeline vía POST /api/account/pipelines/{id}/versions—el mismo endpoint que usa el panel. Ejecuta eventpipe login una vez en cada máquina; la sesión se guarda localmente.

Cuándo usarla

Úsala para builds repetibles desde Git, CI o iteración local rápida. Publicar desde Pipe Studio sigue siendo una opción completa; la CLI es una alternativa que mantiene eventpipe.json y src/handler.ts en tu repositorio.

Instalación

  • Requiere Node.js 20+.
  • Global: npm install -g @eventpipe/cli (comando: eventpipe). Por proyecto: npm add -D @eventpipe/cli y npx eventpipe.
  • Paquete en npm: https://www.npmjs.com/package/@eventpipe/cli

Publicar una versión del pipeline

Crea primero el pipeline en Pipe Studio y copia su id (UUID) desde la URL o la configuración. Alinea eventpipe.json con el grafo: para un solo nodo de código, el id del nodo en el grafo (abajo) debe coincidir con el nodo code en settings.pipe.

  • Añade eventpipe.json en la raíz con pipelineId y settings.pipe (v3). Entrada por defecto: src/handler.ts exportando async function handler(event, context).
  • Ejecuta eventpipe login una vez (abre el navegador; usa https://eventpipe.app salvo que alojes la app tú mismo).
  • Ejecuta eventpipe push desde la raíz del proyecto. Ejecuta build y luego sube una nueva versión.
  • Automatización: la CLI usa el archivo de sesión guardado al hacer login—planifica un paso seguro (o runner) donde ya existan credenciales antes del push.

eventpipe.json (un solo nodo code)

{
  "pipelineId": "TU_UUID_DE_PIPELINE",
  "settings": {
    "pipe": {
      "schemaVersion": 3,
      "nodes": [
        { "id": "code", "type": "code", "config": {} }
      ],
      "edges": []
    }
  }
}

src/handler.ts

type FlowEvent = {
  method: string;
  headers: Record<string, string>;
  body: unknown;
};

type FlowContext = { env?: Record<string, string> };

export async function handler(event: FlowEvent, _context: FlowContext) {
  return { ok: true, received: event.body };
}

Comandos

eventpipe login
eventpipe build   # opcional; push ejecuta build
eventpipe push

Otros comandos

  • eventpipe create [--name slug] — crea un endpoint de webhook (sesión).
  • eventpipe listen <webhookId> — recibe webhooks capturados; opciones --json, --verbose, --forward-to para reproducir en local.
  • eventpipe update — reinstala @eventpipe/cli@latest globalmente vía npm.

Límites

Cada bundle debe respetar el tope de tamaño del plan (por ejemplo 200KB). Los grafos con varios nodos code pueden requerir publicar desde Pipe Studio hasta que el proyecto CLI mapee todos los nodos en eventpipe.json. Ver Precios y la referencia API para POST /versions.