jq. Estas recetas convierten los datos de Failproof AI Observability en algo que un usuario de terminal o un agente de código de IA (Claude Code, Cursor) puede consultar y automatizar, sin necesidad de navegar por el panel.
Los patrones que se muestran a continuación están listos para copiar y pegar en la CLI de Failproof AI Observability (agenteye). Para la instalación, autenticación y la lista completa de opciones, consulta CLI; ejecuta agenteye -h o agenteye <command> -h para ver la ayuda integrada.
Reglas de oro
- Las opciones globales van antes del comando.
agenteye --json sessionses correcto;agenteye sessions --jsonno lo es. Las opciones globales son--json,--base-url,--org,--token,--insecure/--secure,--timeout,--quiet,--no-color. - Usa
--jsonsiempre que vayas a parsear la salida. Los datos van a stdout como JSON; los mensajes de estado e errores van a stderr, por lo que stdout permanece limpio para redirigir ajq. - Ramifica según el código de salida, no según el texto de stderr:
0correcto ·1error inesperado ·2argumentos incorrectos ·3no se puede conectar al panel ·4no autenticado o sesión expirada ·5permiso insuficiente ·6recurso no encontrado. - Explora con
-h. Cada comando documenta sus filtros, formatos de valores y estructura JSON.
Configuración inicial
Verifica la autenticación antes de trabajar
whoami nunca falla por una sesión ausente o expirada; en su lugar reporta logged_in:false, por lo que un agente puede verificar el estado de autenticación de forma segura. (Puede seguir saliendo con código distinto de cero si no hay URL base configurada o el panel no está accesible.)
Busca sesiones fallidas o con puntuación baja
evals, no en sessions. --score KEY:MIN..MAX es repetible y se combina con AND; cualquiera de los límites es opcional (..0.5 significa ≤ 0.5, 0.9.. significa ≥ 0.9). Puedes pasar hasta 20 filtros de puntuación por solicitud; más devuelve HTTP 400. sessions comparte los filtros --env, --status, --agent-id, --session-id y de rango temporal con evals, pero no tiene --score.
Lee una sesión completa de principio a fin
No existe un único comandosession show. Combina el registro de eventos con la evaluación de la sesión:
Nota: Por defecto,eventslee un feed rápido sin payload. Cada evento incluye unsummaryde una línea calculado por el servidor, además de flags comois_errory contadores de tokens, peropayloadse devuelve como{}. Para obtener el payload bruto, añade--full(o--fields payload). El feed completo es más lento a escala, así que mantenlo acotado: combina--fullcon un único--session-id.
Obtén todos los datos (paginación)
Los resultados se ordenan del más reciente al más antiguo y se pagina con cursor.Reduce la salida con —fields
Restringe las claves (tanto en la tabla como con--json) para reducir lo que un agente debe leer.
2) con la lista de campos válidos, una forma sencilla de descubrir los nombres disponibles.
Descubre los valores válidos de los filtros
Elige tu organización (multi-tenant)
Si perteneces a más de una organización, selecciona el tenant activo al iniciar sesión (se guarda):--org termina con código distinto de cero e imprime las organizaciones disponibles para elegir.
Provisiona una clave API para el SDK/collector
Ejecuta una consulta guardada o ad-hoc
Gestiona un incidente de forma no interactiva
Nota: Las mutaciones omiten automáticamente la confirmación cuando se usa--jsono cuando stdin no es un TTY, por lo que los agentes nunca quedan bloqueados; usa--yes/-ypara omitirla explícitamente en otros contextos.
Manejo de códigos de salida en un script
Estructuras de la salida JSON
- Cada elemento de evento (
events):id, session_id, agent_id, event_type, ts, payload, environment, summary, is_error, error_type, output_tokens, context_window, context_fill. Ten en cuenta quepayloades{}a menos que solicites el feed completo con--full(o--fields payload). - Cada elemento de evaluación (
evals):id, session_id, agent_id, environment, status, scores, reasoning, summary, error, attempt_count, duration_ms, completed_at, created_at. - Cada elemento de sesión (
sessions):session_id, agent_id, environment, status, scores, event_count, started_at, last_event_at, first_event_id, last_event_id, latest_evaluation.
--fields de cada comando acepta exactamente los nombres de campo de su propio elemento. El conjunto varía entre sessions y evals, por lo que un nombre válido para uno puede ser rechazado por el otro.
Próximos pasos
- CLI: instalación, autenticación y la referencia completa de opciones para cada comando.
- Skill de agente CLI: empaqueta estas recetas como una skill que tu agente de código pueda cargar.
- Claves API: crea y limita el alcance de las claves con las que se autentican la CLI, el SDK y el collector.
- Python SDK: envía eventos a Failproof AI Observability para que haya datos que estas recetas puedan consultar.

