Scripting
La CLI está construida para que la manejen scripts de shell, trabajos de CI y agentes de programación. Los datos van a stdout, todo lo demás va a stderr, los códigos de salida son estables y cada indicación se puede desactivar.
Salida
La salida es texto cuando stdout es una terminal y JSON cuando se encadena con una tubería o se redirige; fuerza un formato con --output json o --output text, la variable POLYLANE_OUTPUT o el archivo de configuración, en ese orden de precedencia. stdout lleva solo datos, ya sean JSON, filas de tabla o tokens en streaming, así que es seguro encadenarlo. stderr lleva spinners, progreso, pistas y errores, y en modo JSON un error llega como un objeto con code, message y hint, donde code coincide con el código de salida.
Flags para scripts
| Flag | Descripción |
|---|---|
--output json | Fuerza JSON sin importar el estado de la terminal |
--quiet | Suprime spinners y progreso; stdout sigue siendo datos puros |
--non-interactive | Falla de inmediato ante una entrada que falta en lugar de preguntar |
--yes | Omite la confirmación en comandos destructivos |
--dry-run | Muestra qué ocurriría sin hacer cambios |
--full | Devuelve objetos completos en los comandos de listado en lugar de la proyección reducida de campos |
--api-key <key> | Sobrescribe la clave de API guardada para una llamada |
--workspace <id> | Sobrescribe el espacio de trabajo por defecto para una llamada |
Con --non-interactive, polylane cloud disconnect se niega a ejecutarse salvo que también pases --yes, mientras que otras confirmaciones, como la de polylane memory delete, se omiten, así que pasa --yes explícitamente para dejar clara la intención. POLYLANE_API_KEY y POLYLANE_WORKSPACE_ID fijan la credencial y el espacio de trabajo desde el entorno, lo que conviene en CI; consulta Autenticación.
Códigos de salida
| Código | Descripción |
|---|---|
| 0 | Éxito |
| 1 | Error general |
| 2 | Error de uso: flag incorrecto, argumento que falta |
| 3 | Error de autenticación |
| 4 | Límite de tasa o mejora de plan necesaria |
| 5 | Tiempo de espera agotado |
| 6 | Error de red |
| 130 | Interrumpido con Ctrl-C |
Ramifica primero según el código de salida para decidir si reintentar, volver a autenticar o mostrar el fallo, y después analiza el objeto de error en stderr para el detalle.
Ejemplo
polylane issue list --active --severity critical --output json --quiet \
| jq -r '.items[] | "\(.id)\t\(.title)"'
polylane issue list devuelve un objeto con items y count, y cada elemento se proyecta a id, severity, status, title, resourceKind, resourceId, detectedAt e investigationThreadId; --full devuelve los objetos completos. Issues explica el ciclo de vida detrás de cada estado.
Relacionado
- Autenticación: claves de API y variables de entorno para CI.
- Configuración: ajustes de salida y tiempo de espera y el archivo de configuración.
- Issues: los estados y severidades que devuelven los comandos
issue. - Threads: qué inicia
thread asky cómo avanza un hilo.