Saltar al contenido principal
Todos los comandos soportan --output-format para controlar cómo se muestran los resultados en stdout:
FormatoBanderaCuándo usarlo
Pretty--output-format pretty (por defecto)Para leer la salida en una terminal. Pares clave-valor alineados con color e indentación anidada.
JSON--output-format jsonPara scripts, canalizar en jq, guardar en un archivo. Mantiene el orden original de los campos y la precisión numérica cuando la respuesta ya es JSON.
YAML--output-format yamlSalida similar a configuración, fácil de comparar para humanos.
Table--output-format tableRespuestas de arreglos donde cada elemento tiene la misma estructura — por ejemplo, llm models list.
TOON--output-format toonToken-Oriented Object Notation. Compacto, orientado a líneas, 30–60% menos tokens que JSON — ideal para canalizar en prompts de LLM.
# Por defecto, legible para humanos
mka1 llm models list

# JSON legible por máquinas
mka1 llm models list --output-format json

# TOON compacto para pasar a otro LLM
mka1 llm responses get --response-id resp_123 --output-format toon

Filtrar y transformar con jq

Utiliza --jq para filtrar o remodelar respuestas en línea con una expresión jq. Esto siempre produce JSON y sobrescribe --output-format:
# Extraer un solo campo
mka1 llm models list --jq '.data[].id'

# Filtrar un arreglo
mka1 llm responses list --jq '.data[] | select(.status == "completed")'

# Remodelar en un nuevo objeto
mka1 llm files list --jq '.data[] | {id, name: .filename, bytes}'
Como --jq imprime JSON plano, se integra bien con shells y otras llamadas CLI:
mka1 llm files upload --file ./doc.pdf --purpose assistants --jq '.id' \
  | xargs -I {} mka1 llm vector-stores create-file --vector-store-id vs_123 --file-id {}

Paginación y transmisión

Algunas operaciones devuelven muchos elementos o eventos enviados por el servidor. La salida se escribe de forma incremental a medida que llega cada elemento:
FormatoComportamiento en streaming
jsonUn objeto JSON compacto por línea (NDJSON)
yamlDocumentos YAML separados por ---
toonUn objeto codificado en TOON por bloque, separados por líneas en blanco
pretty (por defecto)Elementos impresos de forma legible, separados por líneas en blanco

Paginar a través de una colección

Pasa --all en comandos de listado para seguir automáticamente el cursor next y emitir cada página a medida que llega:
mka1 llm responses list --all --output-format json > responses.ndjson

Transmitir eventos enviados por el servidor

Las operaciones de streaming (por ejemplo, llm responses create --stream) emiten un evento por línea:
mka1 llm responses create \
  --model meetkai:functionary-es-mini \
  --input '"Escribe tres puntos para las notas de la versión."' \
  --stream \
  --output-format json

# Solo conservar los deltas de texto
mka1 llm responses create \
  --model meetkai:functionary-es-mini \
  --input '"Escribe tres puntos para las notas de la versión."' \
  --stream \
  --jq 'select(.type == "response.output_text.delta") | .delta'
Presiona Ctrl+C para dejar de consumir un stream antes de tiempo.

Color

--color controla los colores de la terminal para el formato pretty:
ValorComportamiento
auto (por defecto)Colorea cuando stdout es un TTY, texto plano en otros casos.
alwaysSiempre colorea.
neverNunca colorea.
El CLI también respeta las variables de entorno ampliamente usadas NO_COLOR y FORCE_COLOR.

Incluir cabeceras de respuesta

Usa --include-headers cuando necesites las cabeceras HTTP de la respuesta junto con el cuerpo — por ejemplo, para leer un ID de solicitud para soporte o inspeccionar una cabecera de límite de tasa:
mka1 llm models list --include-headers

Escribir respuestas binarias a un archivo

Los comandos que devuelven datos binarios (como llm speech speak) soportan --output-file para escribir el cuerpo a una ruta sin contaminar stdout:
mka1 llm speech speak \
  --text 'Hola, bienvenido a nuestro servicio.' \
  --output-file ./welcome.wav
Utiliza --output-b64 en su lugar cuando necesites incrustar la carga binaria en un flujo de trabajo JSON o de texto.

Códigos de salida

Código de salidaSignificado
0Éxito. Respuesta escrita en stdout.
1Error. Detalles escritos en stderr.
Esto hace que el control de flujo estilo if sea sencillo en scripts:
if ! mka1 llm responses get --response-id resp_123 > out.json 2> err.log; then
  echo "La solicitud falló — ver err.log"
  exit 1
fi
Consulta depurar e inspeccionar para --dry-run y --debug, que te dan más visibilidad sobre por qué falló un comando.