jq. Ces recettes transforment les données de Failproof AI Observability en quelque chose qu’un utilisateur de terminal ou un agent de codage IA (Claude Code, Cursor) peut interroger et automatiser, sans cliquer dans le tableau de bord.
Les patterns ci-dessous sont prêts à être copiés-collés pour la CLI Failproof AI Observability (agenteye). Pour l’installation, l’authentification et la liste complète des options, consultez CLI ; exécutez agenteye -h ou agenteye <command> -h pour l’aide intégrée.
Règles d’or
- Les options globales vont avant la commande.
agenteye --json sessionsest correct ;agenteye sessions --jsonne l’est pas. Les globales sont--json,--base-url,--org,--token,--insecure/--secure,--timeout,--quiet,--no-color. - Passez
--jsondès que vous analysez la sortie. Les données vont sur stdout en JSON ; les statuts lisibles par l’humain et les erreurs vont sur stderr, donc stdout reste propre pour être transmis àjq. - Basez-vous sur le code de sortie, pas sur le texte de stderr :
0ok ·1erreur inattendue ·2arguments invalides ·3tableau de bord inaccessible ·4non connecté ou session expirée ·5permission manquante ·6ressource introuvable. - Explorez avec
-h. Chaque commande documente ses filtres, les formats de valeurs et la forme JSON.
Configuration initiale
Vérifier l’authentification avant de travailler
whoami ne renvoie jamais d’erreur en cas de session manquante ou expirée ; il signale logged_in:false à la place, ce qui permet à un agent de sonder l’état d’authentification en toute sécurité. (Il peut tout de même sortir avec un code non nul si aucune URL de base n’est définie ou si le tableau de bord est inaccessible.)
Trouver les sessions en échec ou avec un score bas
evals, pas sur sessions. --score KEY:MIN..MAX est répétable et combiné par ET ; chaque borne est optionnelle (..0.5 signifie ≤ 0.5, 0.9.. signifie ≥ 0.9). Vous pouvez passer jusqu’à 20 filtres de score par requête ; au-delà, le serveur renvoie HTTP 400. sessions partage les filtres --env, --status, --agent-id, --session-id et de plage temporelle avec evals, mais ne dispose pas de --score.
Lire une session de bout en bout
Il n’existe pas de commandesession show unique. Combinez la trace d’événements avec l’évaluation de la session :
Note : Par défaut,eventslit un flux rapide sans payload. Chaque événement porte un résumésummarycalculé côté serveur ainsi que des indicateurs commeis_erroret les compteurs de tokens, maispayloadest renvoyé sous la forme{}. Pour récupérer le payload brut, ajoutez--full(ou--fields payload). Le flux complet est plus lent à grande échelle, donc limitez-le : associez--fullà un seul--session-id.
Tout récupérer (pagination)
Les résultats sont triés du plus récent au plus ancien et paginés par curseur.Réduire la sortie avec —fields
Restreignez les clés (dans le tableau et avec--json) pour limiter ce qu’un agent doit lire.
2) avec la liste des valeurs valides — un moyen simple de découvrir les noms de champs.
Découvrir les valeurs de filtre valides
Choisir son organisation (multi-tenant)
Si vous appartenez à plusieurs organisations, choisissez le tenant actif à la connexion (il est sauvegardé) :--org se termine avec un code non nul et affiche les organisations disponibles.
Créer une clé API pour le SDK/collecteur
Exécuter une requête enregistrée ou ad hoc
Traiter un incident de manière non interactive
Note : Les mutations ignorent automatiquement leur invite de confirmation sous--jsonou quand stdin n’est pas un TTY, afin que les agents ne restent jamais bloqués ; passez--yes/-ypour l’ignorer explicitement ailleurs.
Gestion des codes de sortie dans un script
Formes de la sortie JSON
- Chaque élément event (
events) :id, session_id, agent_id, event_type, ts, payload, environment, summary, is_error, error_type, output_tokens, context_window, context_fill. Notez quepayloadvaut{}sauf si vous demandez le flux complet avec--full(ou--fields payload). - Chaque élément evaluation (
evals) :id, session_id, agent_id, environment, status, scores, reasoning, summary, error, attempt_count, duration_ms, completed_at, created_at. - Chaque élément session (
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 chaque commande accepte exactement les noms de champs de ses propres éléments. L’ensemble diffère entre sessions et evals, donc un nom valide pour l’un peut être rejeté par l’autre.
Étapes suivantes
- CLI : installation, authentification et référence complète des options pour chaque commande.
- Compétence CLI pour agent : regroupez ces recettes en une compétence que votre agent de codage peut charger.
- Clés API : créez et délimitez les clés avec lesquelles la CLI, le SDK et le collecteur s’authentifient.
- SDK Python : envoyez des événements dans Failproof AI Observability pour que ces recettes aient des données à interroger.

