jelou workflow), pruebas locales con trazas
(jelou test), triaje de producción (jelou logs) y reinicio de estado de
usuario (jelou users).
La sincronización de workflows a archivos locales (
jelou link, pull,
status, push, incoming) se documenta en
Proyectos y canales.jelou workflow
jelou workflow tiene 16 subcomandos en total (además de los de arriba:
update, set-default, delete/rm, hide, unhide, allow-user,
allow-country, evaluate, skill, build, branches,
canonicalize-branch, inject-ecommerce, adopt, authoring). Explóralos
con jelou workflow --describe.validate corre una tubería canónica de varias fases (schema → autofix →
normalize → ids → config → quality → whatsapp → edges → lint → finalize) y
reporta { status, errorCount, warnCount } por fase. Con errores sale con
código distinto de 0; --allow-warnings sale 0 si solo quedan advertencias.
Flags adicionales: --fix (alias --write) canoniza el archivo en el mismo
lugar (acuña ids, normaliza tokens de branch, repara handles de edges);
--quiet solo imprime los archivos con errores o advertencias; --out <path> guarda el mismo payload JSON en disco además de en stdout.
Con --partial <archivo> corres el validador completo sobre un borrador en
progreso en modo preview: devuelve diagnósticos completos pero nunca
bloquea — siempre sale con código 0 sin importar los errores. Desde la v1.88,
un hook de “validar al escribir” corre este mismo preview automáticamente en
el instante en que un agente de IA escribe el JSON de un workflow, así que
los diagnósticos llegan de inmediato (son solo informativos: nunca bloquean
la escritura).
También desde la v1.88, validate valida además los tools/*.json (no solo
workflows/*.json) con las reglas reales de push de tools, y ya no marca por
error $output.set() dentro de un nodo CODE de una tool — esa es la forma
correcta en que una tool devuelve un valor.
jelou test
Prueba workflows localmente: envía mensajes, persiste trazas y chats, e
inspecciónalos.
Dashboard local de pruebas
jelou test send text, jelou test chats list y
jelou test trace.
Qué muestra:
- Targets / workflows — los workflows que puedes probar (los que tienen corridas registradas, más los del lockfile aunque aún no tengan ninguna).
- Runs (chats de prueba) — cada conversación de prueba registrada, con sus
turnos, el mensaje renderizado y su estado terminal (
STABLE,TIMEOUT,HARNESS_STALL,HARNESS_ERROR). - Traza por nodo — para cada run, la ejecución paso a paso del workflow: cada nodo con su estado inicial y final.
/api/targets, /api/workflows, /api/runs, /api/runs/:id,
/api/runs/:id/trace) y, si hay un perfil que pueda enviar mensajes, permite
iniciar chats nuevos desde la UI (POST /api/chats,
/api/runs/:id/messages).
Con qué datos trabaja:
- Lee los archivos
qa.db(SQLite) por target — los mismos que crean y consultan los demás comandosjelou test. No hay una base aparte: el dashboard solo los visualiza. - Los datos se aíslan por repo (segmento
repo-id= nombre del directorio raíz de git + un hash corto) y por perfil. Por eso debes ejecutarlo dentro del repo con tus corridas, o apuntar a otro con--repo <segmento>.
Es solo local (escucha en loopback); para acceso remoto usa reenvío de
puertos por SSH:
ssh -L 8766:localhost:8766 <host>.
Los bundles BrainOps
jelou-build-workflow y jelou-test-workflow
(skills) orquestan este ciclo de construir y probar
workflows desde un agente de IA.jelou logs — triaje de conversaciones de producción
Acceso solo lectura al historial de conversaciones de un bot. Permite bajar
de conversación → línea de tiempo del chat → nodo que falló.
--from/--to (ISO-8601), --cursor para paginar y --out <path> para guardar el envelope JSON. El --bot-id es el bot conectado al
canal — descúbrelo con jelou channels list. El flujo de drill-down imprime el
siguiente comando bajo cada ejecución FAILED.
jelou users reset
Reinicia en duro el estado cacheado de un usuario con un bot (borra las claves
state, skill y state_manual). Útil antes de re-probar desde cero o para
desbloquear a un usuario atascado en un bucle.