Skip to main content

Utilisation de base

Avec un fichier de configuration prêt et le CLI authentifié, démarrez une exécution :
npx qaos run --config ./qaos-config.json
Le CLI se connecte au serveur QAOS, lance un navigateur headless et commence à exécuter les tâches. La progression est diffusée dans votre terminal en temps réel.

Options de la commande

npx qaos run [options]
OptionAliasDescriptionDéfaut
--config <chemin>-cChemin vers le fichier de configuration JSON./qaos-config.json
--headed-hExécuter avec une fenêtre de navigateur visibleHeadless

Recherche de configuration par défaut

Si aucun flag --config n’est fourni, QAOS recherche qaos-config.json dans le répertoire de travail actuel :
npx qaos run  # utilise ./qaos-config.json

Mode avec fenêtre

Utilisez --headed (ou -h) pour ouvrir une fenêtre de navigateur visible pendant l’exécution. Cela est utile pour :
  • Déboguer des descriptions de tâches qui ne produisent pas le comportement attendu
  • Observer l’agent naviguer dans votre application
  • Comprendre comment l’agent interprète vos pages
npx qaos run --config ./qaos-config.json --headed
Le mode avec fenêtre peut être légèrement plus lent que le mode headless. Utilisez le mode headless pour les pipelines CI en production.

Ce qui se passe pendant une exécution

1

Connexion

Le CLI se connecte au serveur QAOS via WebSocket et envoie votre configuration pour initier l’exécution. Un ID d’exécution est assigné et affiché.
2

Exécution des tâches

Les tâches s’exécutent séquentiellement. Pour chaque tâche :
  • Le navigateur navigue vers startUrl
  • L’agent analyse la page (DOM, captures d’écran, en-têtes réseau, cookies, journaux console)
  • Des sous-tâches sont générées pour les tests interactifs (ex. : tentative de connexion avec des mots de passe faibles)
  • Les problèmes sont détectés et signalés en temps réel
3

Évaluation par les agents

Sur chaque page, les sous-agents sélectionnés évaluent la page par rapport à leur catalogue complet de problèmes — en utilisant une combinaison de vérifications déterministes (rapides, basées sur le code) et d’évaluation LLM (plus approfondie, sensible au contexte).
4

Finalisation

Une fois toutes les tâches terminées, le CLI affiche un résumé des problèmes détectés et un lien vers le rapport complet dans le tableau de bord.

Sortie en temps réel

Pendant l’exécution, le CLI affiche un flux en direct :
✓ Connecté · run_abc123
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Tâche 1/3 · Page de connexion [security, quality]
  → Navigation vers https://app.example.com/login
  → Analyse de la structure de la page...
  → Exécution des vérifications déterministes...
  → Exécution de l'évaluation LLM...
  ✗ [ÉLEVÉ]    misconfigured-security-headers
  ✗ [MOYEN]    missing-form-labels · 1 problème

Tâche 2/3 · Tableau de bord [security, quality]
  → Navigation vers https://app.example.com/dashboard
  → Test du contrôle d'accès...
  ✓ Aucun problème détecté

Tâche 3/3 · Panneau d'administration [security]
  → Navigation vers https://app.example.com/admin
  → Test de l'escalade de privilèges...
  ✗ [CRITIQUE] unauthenticated-resource-access

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Exécution terminée · 3 problèmes trouvés (1 critique, 1 élevé, 1 moyen)
Rapport : https://qaos.machdel.com/reports/run_abc123

Exécution en CI/CD

QAOS fonctionne bien dans les pipelines CI. Utilisez l’authentification par jeton API et un fichier de configuration versionné :
Exemple GitHub Actions
- name: Lancer l'audit de sécurité QAOS
  run: |
    npx npx qaos auth --api ${{ secrets.QAOS_API_TOKEN }}
    npx npx qaos run --config ./qaos-config.json
  env:
    QAOS_API_TOKEN: ${{ secrets.QAOS_API_TOKEN }}
Le CLI se termine avec le code 0 en cas de succès et un code non nul si l’exécution échoue ou si le serveur est inaccessible.

Résolution de problèmes

Votre jeton a peut-être expiré ou été révoqué. Réauthentifiez-vous :
npx qaos auth --api <votre-jeton>
# ou
npx qaos auth --ui
Vérifiez le chemin fourni :
ls ./qaos-config.json      # vérifier qu'il existe
npx qaos run --config ./chemin/vers/config.json
QAOS utilise Playwright en interne. Si le navigateur ne démarre pas, installez les binaires de navigateur requis :
npx playwright install chromium
Si votre application charge lentement, envisagez d’ajouter un contexte descriptif dans votre configuration de tâche pour aider l’agent à comprendre le comportement attendu. Chaque tâche dispose d’un délai d’expiration généreux, mais les pages très lentes peuvent occasionnellement être ignorées.