bugAgent MCP Server

officiel

Connectez bugAgent à tout client IA compatible MCP. Signalez, classez et gérez des bugs, demandes de fonctionnalités et plus encore directement depuis votre assistant de codage IA. Pas de changement de contexte, pas de copier-coller — décrivez simplement le problème et bugAgent s'occupe du reste.

Documentation

MCP v1

Navigation

Model Context Protocol

MCP

Connectez bug_Agent_ à n'importe quel client IA compatible MCP.

Déposez, classez et gérez les bugs, les demandes de fonctionnalités et bien plus directement depuis votre assistant de codage IA. Plus besoin de changer de contexte, ni de copier-coller — décrivez simplement le problème et bug_Agent_ s'occupe du reste.

Communauté Discord [email protected]

Pour commencer

Le serveur MCP bug_Agent_ permet aux clients IA de créer, interroger et gérer les rapports de bugs, les demandes de fonctionnalités, les améliorations et plus encore via le Model Context Protocol. Il s'exécute localement et communique avec l'API cloud de bug_Agent_.

1

Obtenez votre clé API

Inscrivez-vous sur app.bugagent.com et générez une clé API depuis la console.

2

Configurez votre client IA

Ajoutez bug_Agent_ en tant que serveur MCP dans la configuration de votre client (voir la configuration ci-dessous).

3

Commencez à déposer des bugs

Décrivez un bug en langage naturel et bug_Agent_ le classe, l'enrichit et le stocke automatiquement.

Exemple rapide

# Create a bug report
"File a bug: Login button is unresponsive on iOS Safari.
Steps: tap login, nothing happens. Expected: navigate to
dashboard. Severity: high."

# bugAgent auto-classifies as UI bug, severity high

# File a feature request
"Feature request: Add dark mode toggle to the
settings page. Users have asked for this in surveys."

# Auto-classified as feature-request, severity medium

Configuration

Installation

Aucune installation globale requise. Utilisez npx pour exécuter le serveur MCP à la demande :

npx @bugagent/mcp-server

Configurez votre clé API

Lors de la première connexion, bug_Agent_ vous demandera votre clé API. Vous pouvez également la définir via une variable d'environnement :

export BUGAGENT_API_KEY=ba_live_your_key_here

Obtenez votre clé API depuis la console bug_Agent_.

Configuration du client MCP

Ajoutez ce qui suit au fichier de configuration de votre client MCP :

mcp.json

{
  "mcpServers": {
    "bugagent": {
      "command": "npx",
      "args": ["-y", "@bugagent/mcp-server"],
      "env": {
        "BUGAGENT_API_KEY": "ba_live_your_key_here"
      }
    }
  }
}

💡

Remplacez ba_live_your_key_here par votre véritable clé API de la console.

Connexion au serveur

Le serveur MCP bug_Agent_ est disponible à l'adresse https://mcp.bugagent.com/mcp via le transport HTTP Streamable. Connectez-vous depuis l'un des huit clients ci-dessous — choisissez celui qui correspond à votre flux de travail.

🔑

Obtenez d'abord votre clé API. Connectez-vous à app.bugagent.com/dashboard/settings/api-keys, cliquez sur Créer une clé API et copiez la valeur (elle commence par ba_live_). Vous ne la verrez qu'une seule fois, alors collez-la dans un endroit sûr. Chaque exemple ci-dessous utilise cette clé.

Option 1 — MCP Inspector (interface web, recommandée pour un premier test)

L'outil officiel d'Anthropic. Il lance une interface web locale où vous pouvez parcourir chaque outil, remplir les paramètres et voir les réponses. Aucune configuration, aucun IDE requis.

macOS (Terminal)

Terminal

npx @modelcontextprotocol/inspector

Windows (PowerShell ou CMD)

PowerShell

Dans l'interface du navigateur qui s'ouvre :

  1. Type de transport : sélectionnez Streamable HTTP
  2. URL : https://mcp.bugagent.com/mcp
  3. Type de connexion : sélectionnez Proxy (par défaut — l'Inspector passe par un processus Node local pour contourner les restrictions CORS du navigateur)
  4. Cliquez sur l'onglet Authentification → ajoutez un en-tête personnalisé :
    • Nom de l'en-tête : Authorization
    • Valeur : Bearer ba_live_YOUR_KEY_HERE
  5. Cliquez sur Connecter. Vous verrez plus de 60 outils bug_Agent_ dans le panneau de gauche.
  6. Cliquez sur n'importe quel outil (par exemple list_bug_reports), remplissez les paramètres, cliquez sur Exécuter l'outil. La réponse s'affiche à droite.

Prérequis : Node.js 18 ou version ultérieure. Installez-le depuis nodejs.org si vous ne l'avez pas.

Option 2 — Claude Desktop (Mac + Windows)

Si vous utilisez l'application Claude Desktop, vous pouvez ajouter bug_Agent_ en tant que serveur MCP permanent. Claude disposera alors de tous les outils bug_Agent_ dans chaque conversation.

macOS

  1. Ouvrez Claude Desktop → barre de menu Claude → Paramètres → Développeur → Modifier la configuration. Cela ouvre ~/Library/Application Support/Claude/claude_desktop_config.json.
  2. Ajoutez l'entrée bug_Agent_ sous mcpServers : claude_desktop_config.json
{  
  "mcpServers": {  
    "bugagent": {  
      "type": "http",  
      "url": "https://mcp.bugagent.com/mcp",  
      "headers": {  
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"  
      }  
    }  
  }  
}  
  1. Enregistrez le fichier et quittez complètement Claude Desktop (Cmd+Q, pas seulement fermer la fenêtre).
  2. Relancez Claude Desktop. L'icône de marteau des outils en bas de la saisie de chat devrait maintenant afficher les outils bug_Agent_.
  3. Essayez : tapez “Liste mes 5 rapports de bugs les plus récents” — Claude appellera automatiquement list_bug_reports.

Windows

  1. Ouvrez Claude Desktop → Fichier → Paramètres → Développeur → Modifier la configuration. Cela ouvre %APPDATA%\Claude\claude_desktop_config.json (généralement C:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json).
  2. Ajoutez le même bloc JSON que celui indiqué dans la section macOS.
  3. Enregistrez le fichier et quittez complètement Claude Desktop depuis la barre d'état système (clic droit sur l'icône Claude → Quitter), puis relancez.
  4. L'icône de marteau des outils affichera les outils bug_Agent_.

Option 3 — Claude Code (CLI)

Si vous utilisez Claude Code depuis votre terminal (la version CLI de Claude), enregistrez le serveur bug_Agent_ avec une seule commande. Fonctionne de manière identique sur macOS, Linux et Windows.

Terminal / PowerShell

claude mcp add --transport http bugagent https://mcp.bugagent.com/mcp \
  --header "Authorization: Bearer ba_live_YOUR_KEY_HERE"

Redémarrez ensuite votre session Claude Code. Vérifiez qu'il est connecté :

claude mcp list

Vous devriez voir bugagent dans la liste avec un point vert. Commencez à utiliser les outils dans n'importe quel chat : “Montre-moi mon utilisation de l'exploration pour ce mois.”

Pour le supprimer ultérieurement :

claude mcp remove bugagent

Option 4 — OpenAI Codex CLI

Si vous utilisez le CLI OpenAI Codex, ajoutez bug_Agent_ à ~/.codex/config.toml pour un enregistrement permanent, ou passez la configuration en ligne pour une session unique.

Enregistrement permanent (ajouter à la configuration)

~/.codex/config.toml

[[mcp_servers]]
name = "bugagent"
type = "http"
url  = "https://mcp.bugagent.com/mcp"

[mcp_servers.headers]
Authorization = "Bearer ba_live_YOUR_KEY_HERE"

En ligne — une session

Terminal

codex \
  --mcp-server '{"name":"bugagent","type":"http","url":"https://mcp.bugagent.com/mcp","headers":{"Authorization":"Bearer ba_live_YOUR_KEY_HERE"}}' \
  "list the last 5 bug reports"

Codex résout automatiquement les appels d'outils à partir de votre invite en langage naturel. Essayez : “Liste mes bugs ouverts triés par gravité.”

Option 5 — Cursor (Mac + Windows)

Cursor a un support MCP intégré. Ajoutez bug_Agent_ une fois et l'assistant IA de Cursor pourra déposer des bugs, lister des rapports, exécuter des analyses, etc. sans quitter votre éditeur.

  1. Ouvrez Cursor → Paramètres (Cmd+, sur Mac / Ctrl+, sur Windows) → MCP dans la barre latérale gauche.
  2. Cliquez sur + Ajouter un nouveau serveur MCP.
  3. Sélectionnez le type de transport HTTP.
  4. Remplissez :
    • Nom : bugagent
    • URL : https://mcp.bugagent.com/mcp
    • Nom de l'en-tête : Authorization
    • Valeur de l'en-tête : Bearer ba_live_YOUR_KEY_HERE
  5. Cliquez sur Enregistrer. Cursor affiche un indicateur vert une fois connecté.
  6. Ouvrez le chat de Cursor (Cmd+L / Ctrl+L) et tapez “Crée un rapport de bug intitulé 'Connexion cassée' avec une gravité élevée.” Cursor invoquera create_bug_report.

Alternative : Cursor lit également ~/.cursor/mcp.json (Mac) ou %USERPROFILE%\.cursor\mcp.json (Windows). Ajoutez le même format JSON que celui indiqué dans la section Claude Desktop.

Option 6 — VS Code avec l'extension Continue (Mac + Windows)

Si vous préférez VS Code, l'extension Continue prend en charge nativement les serveurs MCP.

  1. Installez l'extension Continue depuis le marketplace VS Code.
  2. Ouvrez la configuration de Continue : Palette de commandes (Cmd+Shift+P / Ctrl+Shift+P) → Continue : Ouvrir config.json. Le fichier se trouve dans :
    • macOS : ~/.continue/config.json
    • Windows : %USERPROFILE%\.continue\config.json
  3. Ajoutez une entrée mcpServers : ~/.continue/config.json
{  
  "mcpServers": [  
    {  
      "name": "bugagent",  
      "type": "streamable-http",  
      "url": "https://mcp.bugagent.com/mcp",  
      "requestOptions": {  
        "headers": {  
          "Authorization": "Bearer ba_live_YOUR_KEY_HERE"  
        }  
      }  
    }  
  ]  
}  
  1. Enregistrez. Continue se rechargera automatiquement et affichera les outils bug_Agent_ dans la barre latérale.
  2. Ouvrez le panneau de chat Continue et essayez : “Liste mes analyses de sécurité.”

Autres extensions VS Code compatibles MCP : Cline, Roo Code et Windsurf (fork) suivent toutes des modèles de configuration JSON similaires avec une clé mcpServers et le transport HTTP.

Option 7 — Hôtes compatibles OAuth (Claude.ai web présenté comme exemple)

Certains hôtes MCP s'authentifient via OAuth 2.0 et demandent un client_id et un client_secret statiques au lieu d'accepter une clé API Bearer. Pour ces hôtes, vous générez une paire d'identifiants OAuth limitée à l'espace de travail depuis le tableau de bord bug_Agent_ et vous la collez dans le formulaire de connecteur de l'hôte. Les identifiants sont indépendants de l'hôte MCP — tout client OAuth prenant en charge le code d'autorisation + PKCE peut les utiliser. La procédure ci-dessous utilise l'application web Claude.ai comme exemple le plus courant.

  1. Dans bug_Agent_ : ouvrez Paramètres → Développeurs → Connecteurs MCP. Cliquez sur Générer un connecteur, donnez-lui un nom décrivant l'hôte (par exemple “Claude.ai (travail)”), collez l'URI de redirection requis par votre hôte MCP (pour l'application web Claude.ai, c'est https://claude.ai/api/mcp/auth_callback — consultez la documentation du connecteur de votre hôte pour les autres) et choisissez Confidentiel pour la méthode d'authentification. Copiez le client_id et le client_secret affichés une seule fois sur l'écran de succès.
  2. Dans les paramètres du connecteur / OAuth de votre hôte MCP, collez :
    • URL du serveur : https://mcp.bugagent.com/mcp
    • ID client + Secret client : de l'étape 1
    • URL d'autorisation : https://mcp.bugagent.com/authorize
    • URL du jeton : https://mcp.bugagent.com/token Pour Claude.ai spécifiquement : allez sur claude.ai/customize/connectors et cliquez sur Ajouter un connecteur MCP.
  3. Enregistrez. L'hôte vous redirige vers bug_Agent_ pour vous connecter (Google ou email/mot de passe — selon la méthode que vous utilisez pour le tableau de bord) et approuver le consentement, puis termine la liaison OAuth.
  4. Gérez et révoquez les connecteurs générés depuis la même page Paramètres. La révocation est immédiate — la prochaine requête de ce connecteur renvoie invalid_client.

Remarque : Claude Code, Cursor, VS Code et MCP Inspector n'ont pas besoin de ce flux — ils gèrent automatiquement l'enregistrement dynamique du client (RFC 7591) et s'authentifient via la clé API comme indiqué ci-dessus. Le formulaire Connecteurs MCP est uniquement destiné aux hôtes qui nécessitent des identifiants OAuth statiques.

Option 8 — HTTP direct avec curl (Terminal)

Si vous souhaitez tester le serveur directement sans aucun client, ou l'intégrer dans un script, vous pouvez interroger le point de terminaison HTTP avec curl. Le protocole MCP est JSON-RPC 2.0 sur HTTP Streamable.

macOS / Linux

Terminal

# Set your API key as a variable
export BUGAGENT_API_KEY="ba_live_YOUR_KEY_HERE"

# 1. List all available tools
curl -N -s https://mcp.bugagent.com/mcp \
  -H "Authorization: Bearer $BUGAGENT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# 2. Call a tool — list 5 reports from a specific project
curl -N -s https://mcp.bugagent.com/mcp \
  -H "Authorization: Bearer $BUGAGENT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc":"2.0",
    "id":2,
    "method":"tools/call",
    "params":{
      "name":"list_bug_reports",
      "arguments":{"project":"bugagent","limit":5}
    }
  }'

Windows (PowerShell)

PowerShell

# Set your API key
$env:BUGAGENT_API_KEY = "ba_live_YOUR_KEY_HERE"

# Use Invoke-RestMethod (PowerShell's curl equivalent)
$headers = @{
  "Authorization" = "Bearer $env:BUGAGENT_API_KEY"
  "Content-Type" = "application/json"
  "Accept" = "application/json, text/event-stream"
}

# 1. List all tools
$body = '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Invoke-RestMethod -Uri "https://mcp.bugagent.com/mcp" `
  -Method Post -Headers $headers -Body $body

# 2. Call list_bug_reports for a specific project
$body = @{
  jsonrpc = "2.0"
  id = 2
  method = "tools/call"
  params = @{
    name = "list_bug_reports"
    arguments = @{ project = "bugagent"; limit = 5 }
  }
} | ConvertTo-Json -Depth 5

Invoke-RestMethod -Uri "https://mcp.bugagent.com/mcp" `
  -Method Post -Headers $headers -Body $body

Les réponses arrivent sous forme d'événements envoyés par le serveur (la norme HTTP Streamable MCP). Chaque segment est une ligne préfixée par data: suivie d'un objet JSON. L'en-tête Accept: application/json, text/event-stream est obligatoire — le serveur rejette les requêtes sans lui.

ℹ️

Dépannage 401 Non autorisé : Vérifiez que votre clé API n'a pas été révoquée dans Paramètres → Clés API. Les clés commencent par ba_live_. Si vous êtes toujours bloqué, régénérez la clé et réessayez.

Essayez — Invites en langage naturel

Une fois connecté, vous n'avez pas besoin de connaître les noms d'outils ou les paramètres. Décrivez ce que vous voulez en langage naturel et votre assistant IA appelle automatiquement le bon outil bug_Agent_.

Rapports de bugs

Demandez à votre assistant IA

List my 5 most recent bug reports
Show all open critical bugs in the Auth project
Create a bug titled "Login broken on Safari" with severity s2
Update TEST-451 status to in-progress and assign it to me
Add a comment to TEST-451: "root cause confirmed — null check missing in auth middleware"
Show me everything filed this week, grouped by severity

Gestion des tests

Create a test suite called "Smoke Tests" with cases for login, checkout, and account settings
Run the Regression suite and list all failures
Show failing test cases from the last 7 days
Which test cases have never been run in the past 90 days?
Get a pass-rate trend for this month vs last month

Sécurité et performances

Run a security scan on https://app.example.com
Get this month's security scan results — show only high and critical findings
Create a performance test for the landing page and check Lighthouse scores
What are the Core Web Vitals for our checkout flow?

Automatisation Playwright

Create a Playwright script that logs in and verifies the dashboard loads
Run the checkout automation on iPhone 15 Pro on a real device
Optimize the login automation script
Show runs for the checkout automation — any failures?
Schedule the smoke test suite to run every weekday at 6 AM UTC

IA exploratoire

Run an exploratory AI session on https://app.example.com with 5 parallel agents
Get the latest exploration run results — list any bugs that were filed
What testing strategies did the agents use and which found the most issues?

Utilisation et statistiques

Check my plan usage for this month
Show team bug stats for this week broken down by severity and type
List all team members and their roles
How many security scans do I have left this month?

Référence rapide

Emplacements des fichiers de configuration pour les huit clients. Chaque client se connecte à https://mcp.bugagent.com/mcp avec l'en-tête Authorization: Bearer ba_live_YOUR_KEY_HERE via HTTP Streamable.

Client Emplacement de la configuration / commande

MCP Inspector Pas de fichier — entrez l'URL et l'en-tête d'authentification dans l'interface du navigateur après npx @modelcontextprotocol/inspector

Claude Desktop — macOS ~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop — Windows %APPDATA%\Claude\claude_desktop_config.json

Claude Code (CLI) claude mcp add --transport http bugagent https://mcp.bugagent.com/mcp --header "Authorization: Bearer ba_live_..."

Codex CLI ~/.codex/config.toml

Cursor — macOS Paramètres → Interface MCP, ou ~/.cursor/mcp.json

Cursor — Windows %USERPROFILE%\.cursor\mcp.json

VS Code + Continue ~/.continue/config.json (macOS) / %USERPROFILE%\.continue\config.json (Windows)

HTTP direct (curl) curl / Invoke-RestMethod — inclure Accept: application/json, text/event-stream

Dépannage

Symptôme Solution

401 Unauthorized La clé est incorrecte, expirée ou révoquée. Vérifiez Paramètres → Clés API — les clés commencent par ba_live_. Régénérez si nécessaire.

Les outils n'apparaissent pas dans le client Quittez complètement et relancez le client après avoir modifié la configuration. Dans Claude Desktop, Cmd+Q (pas seulement fermer la fenêtre). Dans Cursor, vérifiez Paramètres → MCP pour un point vert.

Accept header required Les appels HTTP directs doivent inclure Accept: application/json, text/event-stream — la spécification HTTP Streamable l'exige. Le serveur renvoie 406 sans lui.

Données du mauvais espace de travail Chaque clé API est limitée à un espace de travail. Générez une nouvelle clé depuis l'espace de travail que vous souhaitez interroger dans Paramètres → Clés API.

Les outils apparaissent mais les appels échouent silencieusement Confirmez que le serveur est accessible : curl -I https://mcp.bugagent.com/health devrait renvoyer 200. S'il expire, vérifiez les règles réseau/pare-feu.

Erreur CORS de MCP Inspector Sélectionnez Proxy (et non Direct) pour le type de connexion dans l'interface de l'Inspector. L'Inspector passe par un processus Node local pour contourner les restrictions CORS du navigateur.

Codex CLI — outils non reconnus Vérifiez que ~/.codex/config.toml utilise [[mcp_servers]] (doubles crochets, syntaxe de tableau). Vérifiez que la version de Codex CLI est suffisamment récente pour prendre en charge MCP (codex --version).

Fonctionnalités MCP

Le serveur MCP bug_Agent_ fournit des outils pour :

🐛

Gestion des rapports de bugs

  • create_bug_report — Déposer un nouveau rapport avec classification automatique parmi 19 types — bugs, demandes de fonctionnalités, améliorations, dette technique, etc. (titre : 3-500 caractères). Le tableau optionnel attachments accepte des fichiers encodés en base64 jusqu'à 400 Mo chacun : toute image, vidéo, audio, PDF ou texte/JSON. Définissez format_description: true pour reformater automatiquement la description en un modèle structuré à l'aide de l'IA. Passez time_spent_seconds pour suivre l'effort d'AQ. Passez priority (urgent / high / normal / low) pour définir l'urgence de correction indépendamment de la sévérité. La réponse inclut project_id, project, short_id, legacy_short_id et project_short_id.
  • list_bug_reports — Lister et filtrer les rapports (max 100 par page). Les filtres de projet sont appliqués côté serveur avant la pagination. Filtrer par project (UUID, slug, nom exact ou préfixe de ticket), project_id, project_slug, project_prefix, workspace (UUID, nom exact ou préfixe de ticket d'espace de travail), workspace_id/team_id, type (une des 19 catégories du tableau de bord), severity (s1-s4 ou legacy critique/élevé/moyen/faible), status (en utilisant les valeurs exactes du tableau de bord : new, awaiting-triage, confirmed, in-progress, blocked, resolved, retesting, closed, reopened — les tirets sont intentionnels), resolution (fixed / duplicate / works-as-designed / cannot-reproduce / will-not-fix / need-more-info / unresolved), root_cause (tag ouvert en kebab-case — valeurs courantes : regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch), ou reporter_user_id (UUID du membre de l'équipe qui a déposé le rapport — appelez d'abord list_team_members pour résoudre un nom en UUID). Chaque résultat inclut reporter_user_id, project_id, project, short_id, legacy_short_id et project_short_id afin que les agents puissent lier et mettre à jour le rapport correct dans le périmètre du projet.
  • pick_next_bug — Renvoie le(s) prochain(s) bug(s) sur le(s)quel(s) la boucle d'agent doit travailler, par ordre de priorité (S1 → S2 → S3, le plus ancien en premier dans chaque compartiment). Automatiquement limité à votre espace de travail — renvoie les tickets de tous les projets de votre équipe avec status new, awaiting-triage ou confirmed et une sévérité S1-S3. Lecture seule — ne revendique pas les tickets de manière atomique. Optionnel severity (niveau unique), limit (1-50, défaut 1). Renvoie les lignes dans la même forme que list_bug_reports pour la composabilité des outils. À associer avec claim_bug pour le modèle lecture-puis-revendication.
  • claim_bug — Faire passer atomiquement un bug de status new, awaiting-triage ou confirmed à status='in-progress', définir assigned_to sur l'utilisateur appelant et horodater claimed_at=NOW(). Sans conflit entre appelants concurrents via le modèle UPDATE-WHERE-RETURNING de Postgres — si deux agents appellent claim_bug sur le même id en succession rapprochée, exactement un reçoit claimed:true avec le corps du bug et l'autre reçoit claimed:false avec une chaîne de raison. Un récupérateur pg_cron libère automatiquement les revendications périmées (statut=in-progress + claimed_at > 30 minutes) vers new, de sorte que les tickets d'un agent planté retournent dans la file d'attente sans intervention manuelle. Entrées : id (UUID ou ID court).
  • get_bug_report — Obtenir tous les détails d'un rapport par ID. Formats d'ID : accepte soit l'UUID (ex. 1fb72a2c-87c7-...), l'ID court limité à l'espace de travail (ex. WRKID-545), ou l'ID court limité au projet (ex. WRKID-APP-042). Les recherches par ID court sont limitées à l'équipe — deviner l'ID court d'un autre espace de travail renvoie 404. Renvoie project_id, project, short_id, legacy_short_id, project_short_id, ticket_number, project_ticket_number, qualityScore (entier 1–10) et qualityBreakdown (objet avec 10 scores de dimension : reproductionSteps, expectedVsActual, environmentDetails, evidence, rootCauseAnalysis, impactAssessment, contextAndHistory, heuristicsAndOracles, clarityAndStructure, actionability — chacun 0.0–1.0).
  • update_bug_report — Mettre à jour les champs d'un rapport existant. Accepte l'UUID ou l'ID court (WRKID-545). Les champs modifiables incluent title, description, type (l'une des 19 catégories du tableau de bord), severity, priority (urgent / high / normal / low — urgence de correction, indépendante de la sévérité), status (correspond exactement au tableau de bord : new, awaiting-triage, confirmed, in-progress, blocked, resolved, retesting, closed, reopened — les tirets sont intentionnels), resolution (fixed / duplicate / works-as-designed / cannot-reproduce / will-not-fix / need-more-info / unresolved), et root_cause (tag ouvert en kebab-case — valeurs courantes : regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch). La convention de boucle d'agent exige que resolution et root_cause soient tous deux définis chaque fois que status sort de new ; le tableau de bord, l'analytique et le futur corpus d'entraînement claude-bot dépendent tous de ces champs. Inclut également assigned_to (ID utilisateur de list_team_members) et time_spent_seconds pour le suivi du temps. Changer assigned_to déclenche automatiquement la notification par cloche dans l'application ET un e-mail de courtoisie au nouveau responsable (en respectant son opt-out par utilisateur dans les Paramètres du compte — même pipeline que les points de terminaison du tableau de bord).
  • add_comment — Ajouter un commentaire à un rapport de bug (UUID ou ID court, corps 1-10000 caractères). Si le rapport est synchronisé avec Jira, le commentaire est automatiquement poussé vers le ticket Jira lié.
  • list_comments — Lister le fil de discussion complet d'un rapport, du plus ancien au plus récent — chaque commentaire avec le nom de l'auteur, parentId (réponses en fil) et horodatages. Les commentaires ne font pas partie de get_bug_report, c'est donc ainsi que vous lisez la discussion d'un ticket. Accepte l'UUID ou l'ID court.
  • link_bug_reports — Créer un lien sémantique directionnel entre deux rapports de bug dans le même espace de travail. link_type est l'un de duplicate-of, parent-of, related-to ou depends-on. Les perspectives inverses (duplicated-by / subtask-of / blocks) sont dérivées au moment de la lecture — une seule ligne doit être stockée. from_report_id et to_report_id acceptent les UUID ou les ID courts (WRKID-545).
  • unlink_bug_reports — Supprimer un lien de rapport de bug précédemment créé par son UUID (link_id, renvoyé par link_bug_reports ou list_bug_report_links).
  • list_bug_report_links — Lister chaque lien organisé par l'utilisateur touchant un rapport de bug. Renvoie chaque lien tel qu'il se lit du point de vue du rapport fourni — par exemple, une ligne duplicate-of stockée où ce rapport est la cible s'affiche comme duplicated-by ; parent-of où ce rapport est la cible s'affiche comme subtask-of ; depends-on où ce rapport est la cible s'affiche comme blocks. related-to est symétrique. Complète le champ similar_reports détecté automatiquement renvoyé par get_bug_report.
  • classify_bug — Classifier une description dans l'un des 19 types de rapport (bugs, fonctionnalités, améliorations, etc.) avec un score de confiance
  • flush_reports — Supprimer en masse les anciens rapports (admin uniquement)

📊

Utilisation & Analytique

  • get_usage — Vérifier l'utilisation par rapport aux limites du forfait
  • get_stats — Comptes quotidiens, répartitions par type/sévérité/statut

📁

Gestion de Projet

  • list_projects — Lister les projets disponibles avec id, name, slug, ticket_prefix, la description et le statut par défaut. Utilisez ces valeurs avec create_bug_report et list_bug_reports pour cibler le bon projet.
  • create_project — Créer un nouveau projet (devient automatiquement celui par défaut si c'est le premier)
  • delete_project — Supprimer définitivement un projet et toutes les données associées (rapports de bugs, automatisations, cas de test, applications mobiles, planifications, geo snaps, notes, entrées de temps). Uniquement propriétaire/gestionnaire. Impossible de supprimer le dernier projet. Le stockage est libéré automatiquement
  • export_okf_bundle — Exporter la connaissance AQ d'un projet — rapports de bugs, cas de test, automatisations et tests de performance, sécurité et exploratoires — sous forme de bundle markdown OKF/OQA (le format Open Query Agent utilisé par oqa.ai). Par défaut, le projet actif ; passez le paramètre optionnel project (slug ou nom) pour en exporter un autre. Renvoie la liste des fichiers du bundle plus le bundle lui-même sous forme de zip encodé en base64

🔐

Authentification & Compte

  • register_account — Créer un nouveau compte (mot de passe : 8-128 caractères, limité en débit : 5/15min)
  • login — Se connecter et recevoir des jetons d'accès (limité en débit : 5/15min)
  • update_profile — Mettre à jour le nom d'affichage
  • change_password — Changer le mot de passe du compte
  • get_settings / update_settings — Gérer les préférences

🔑

Gestion des Clés API

  • generate_api_key — Créer une clé API nommée
  • list_api_keys — Lister les clés actives (préfixe uniquement)
  • regenerate_api_key — Révoquer et remplacer une clé
  • delete_api_key — Révoquer définitivement une clé

👥

Gestion d'Équipe

  • list_team_members — Lister tous les membres de votre espace de travail avec les rôles, statuts et indicateurs booster
  • invite_team_member — Inviter un utilisateur par e-mail (les gestionnaires peuvent inviter des contributeurs et des gestionnaires ; seuls les propriétaires peuvent inviter des administrateurs). Lien d'expiration de 5 jours

🎯

Intégrations

  • sync_to_jira — Synchroniser un rapport vers Jira en utilisant la connexion partagée de l'équipe
  • push_to_claude — Générer (ou régénérer) les Notes Développeur pour un rapport de bug — cause racine, correctif suggéré, étapes de vérification et évaluation des risques. Accepte l'UUID ou l'ID court (WRKID-545). Utilise les clés de la plateforme — aucune connexion Claude par équipe requise. Exécute une chaîne adaptative : trois étapes sur les bugs s3/medium ou s4/low (brouillon Sonnet → critique OpenAI gpt-5 → synthèse Sonnet), cinq étapes sur les deux compartiments de sévérité supérieure — s1/critical ou s2/high — (brouillon → critique → réfutation Sonnet → adjudicateur Claude Opus qui lit la transcription complète et rédige les notes finales avec un jugement indépendant). La réponse expose chaque tour : analysis, draft, critique, rebuttal, challenger_model, adjudicator_model et un drapeau debated. Toute étape échouant bascule vers la meilleure réponse suivante. Se déclenche automatiquement à la création du bug ; généralement appelé uniquement pour une régénération manuelle.
  • analyze_fix_area — Générer (ou régénérer) le sous-bloc "Zone de Correction Probable" des Notes Développeur — une sortie étroite de Sonnet qui nomme où dans la base de code la correction appartient le plus probablement. Accepte l'UUID ou l'ID court. Utilise la clé Anthropic de la plateforme. Lorsque l'équipe a une ligne github_connections et que le projet a un github_repo mappé, la sortie est fondée sur de vrais extraits de fichiers du dépôt connecté ; sinon, elle se replie sur des conseils généraux avec une incitation à connecter un dépôt. Renvoie le texte likely_fix_area, generated_at, repo_used et un drapeau grounded. Se déclenche automatiquement à la création du bug — les agents n'ont généralement besoin d'appeler ceci que pour une régénération manuelle.
  • upgrade_plan — Mettre à niveau l'abonnement via Stripe

Tests de Performance

  • create_performance_test — Créer une configuration de test de performance avec URL, appareil, utilisateurs virtuels, durée, seuil de score et bascule de création automatique de bug. Entreprise uniquement
  • run_performance_test — Déclencher un audit de page et un test de charge pour un test de performance web. Renvoie un ID d'exécution pour interroger les résultats. Les exécutions de profilage d'application mobile sont déclenchées depuis le tableau de bord
  • get_performance_results — Obtenir les résultats complets incluant les scores Lighthouse (Performance, Accessibilité, Bonnes pratiques, SEO), les Core Web Vitals (LCP, FID, CLS, FCP, TTFB, INP, TBT, SI) et les métriques de test de charge (VUs, requêtes, RPS, latences p50/p90/p95/p99)
  • list_performance_tests — Lister toutes les configurations de test de performance pour l'équipe actuelle
  • get_performance_usage — Vérifier l'utilisation mensuelle des tests de performance. Les tests de performance sont réservés à l'offre Entreprise. Gratuit=0, Entreprise=illimité

Exemple de flux de travail

  1. get_performance_usage → vérifier le quota restant
  2. create_performance_test → configurer un test pour votre URL
  3. run_performance_test → déclencher l'audit + le test de charge
  4. get_performance_results → examiner les scores et les indicateurs

🛡

Analyse de sécurité

  • create_security_scan — Créer une configuration d'analyse de sécurité. Les analyses web utilisent Quick Scanner + Nuclei (plus de 4000 modèles) avec trois niveaux de profondeur et une analyse authentifiée optionnelle. Les analyses mobiles utilisent MobSF pour l'analyse binaire APK/IPA. Création automatique de bugs configurable avec seuils de gravité. Entreprise uniquement
  • run_security_scan — Déclencher une analyse de vulnérabilité. Les analyses web nécessitent une vérification de domaine DNS. Les analyses mobiles nécessitent une application téléchargée. Renvoie un ID d'exécution pour interroger les résultats
  • get_security_results — Obtenir les résultats complets incluant le score de sécurité (0-100), les résultats classés par gravité (Critique, Élevée, Moyenne, Faible, Info) avec références CWE, correspondances OWASP, preuves et conseils de remédiation
  • list_security_scans — Lister toutes les configurations d'analyse de sécurité pour l'équipe actuelle avec le dernier score et les badges auth/profondeur
  • get_security_usage — Vérifier l'utilisation mensuelle des analyses de sécurité. L'analyse de sécurité est réservée à l'offre Entreprise. Entreprise=illimité
  • list_security_schedules — Lister toutes les analyses de sécurité planifiées pour l'équipe avec cron, fuseau horaire, état d'activation, prochaine exécution et paramètres de notification. Jointure avec la configuration d'analyse parente (nom, scan_type, target_url)
  • create_security_schedule — Créer une planification récurrente pour une analyse de sécurité. Nécessite scan_id et cron_expression. Une planification par configuration d'analyse. Optionnel timezone, notify_on_fail (aucun/email/slack/les deux), notify_email, slack_channel_id. Chaque exécution compte dans votre plafond mensuel ; les utilisateurs admin contournent le plafond. La profondeur d'analyse est toujours lue depuis la configuration d'analyse au moment de l'exécution
  • delete_security_schedule — Supprimer une analyse de sécurité planifiée. N'affecte pas la configuration d'analyse parente ni les exécutions terminées
  1. get_security_usage → vérifier le quota restant
  2. create_security_scan → configurer une analyse pour votre URL ou dépôt
  3. run_security_scan → déclencher une analyse de vulnérabilité ponctuelle
  4. create_security_schedule → automatiser les exécutions récurrentes (par ex. SAST hebdomadaire sur la branche principale)
  5. get_security_results → examiner les résultats et la remédiation

📖

Revue de code

  • list_code_reviews — Lister les revues de code IA récentes pour l'équipe. Renvoie les scores de qualité, le nombre de problèmes par gravité, les informations de PR et les horodatages. Entreprise uniquement
  • get_code_review — Obtenir une revue de code avec tous les résultats. Chaque résultat inclut la gravité, la catégorie (bug/sécurité/performance/style/logique/maintenabilité), le titre, la description, la suggestion de code, le chemin du fichier et les numéros de ligne
  • get_code_review_usage — Vérifier l'utilisation de la revue de code. La revue de code IA est réservée à l'offre Entreprise ; illimitée sur l'offre Entreprise
  • get_code_review_analytics — Obtenir des analyses de revue : tendances, catégories/sources de résultats, répartition par gravité, métriques de vélocité, principaux dépôts/auteurs. Prend en charge un historique de 7/30/90 jours
  1. get_code_review_usage → vérifier les revues restantes
  2. Réviser une PR dans le tableau de bord à /dashboard/code-review
  3. list_code_reviews → voir les revues récentes
  4. get_code_review → obtenir les résultats et suggestions

🔍

IA exploratoire

Détecteur de bugs de site web autonome multi-agents avec jusqu'à 10 agents parallèles, chacun utilisant une stratégie de test différente.

  • list_explorations — Lister les configurations d'IA exploratoire pour l'équipe
  • create_exploration — Créer une nouvelle exploration. Accepte agent_count (1–10, max 10) pour exécuter plusieurs agents parallèles avec des stratégies uniques : happy_path, edge_case, security, accessibility, error_path, performance, mobile, data_integrity, navigation, custom
  • get_exploration — Obtenir la configuration d'exploration avec les paramètres d'agent et les exécutions récentes
  • get_exploration_run — Obtenir les résultats d'exécution avec la progression par agent, les données de phase, les résultats avec attribution d'agent (agent_index, agent_strategy) et les bugs liés
  • get_exploration_usage — Vérifier l'utilisation mensuelle. L'IA exploratoire est réservée à l'offre Entreprise ; Entreprise : illimité (10 agents)
  1. create_exploration avec agent_count: 5 → configurer 5 agents parallèles
  2. Déclencher une exécution depuis le tableau de bord ou via POST /api/explorations/run
  3. get_exploration_run → interroger la progression par agent et les résultats
  4. Voir les résultats dédupliqués avec attribution d'agent dans le tableau de bord

📝

Notes

  • list_notes — Lister les notes avec recherche optionnelle par mot-clé, filtre de projet, filtre d'auteur et plage de dates. Renvoie les notes dont l'utilisateur est propriétaire ou les notes partagées au sein de l'équipe.
  • create_note — Créer une note dans l'un des 5 formats : markdown, plain_text, rich_text, checklist, outline. Définir visibility sur private ou shared. Titre automatique à partir des 30 premiers caractères si aucun titre n'est fourni. Le tableau optionnel attachments accepte les fichiers encodés en base64 jusqu'à 400 Mo chacun : toute image, vidéo, audio, PDF ou texte/JSON. Passez time_spent_seconds pour suivre l'effort QA.
  • get_note — Obtenir les détails complets de la note, y compris le contenu et les pièces jointes. Nécessite id.
  • update_note — Mettre à jour le titre, le contenu, le format, la visibilité, le projet ou time_spent_seconds. Passez un tableau attachments pour ajouter de nouveaux fichiers (max 400 Mo chacun) aux pièces jointes existantes de la note sans les remplacer. Seul l'auteur peut mettre à jour. Nécessite id.
  • delete_note — Supprimer définitivement une note et ses pièces jointes. Seul l'auteur peut supprimer. Nécessite id.
  1. create_note → démarrer une note de session de test
  2. update_note → ajouter des observations au fur et à mesure des tests
  3. list_notes → rechercher des notes passées par mot-clé ou projet
  4. get_note → récupérer la note complète avec les pièces jointes

🤖

Automatisation

  • create_automation — Créer une nouvelle automatisation avec un script Playwright personnalisé (aucun enregistrement FAB requis). Nécessite name. Optionnel : target_url (auto-dérivé de la première URL page.goto(...) dans le script si omis), script (Node.js/JavaScript/TypeScript ou Python — le langage est auto-détecté ; valeur par défaut : un espace réservé), status (draft ou active, par défaut : draft), project_id. Renvoie l'id de l'automatisation. Forfait Équipe requis. Astuce — Dupliquer une automatisation : utilisez get_automation pour récupérer le script original, puis appelez create_automation avec name défini sur "[Copy] Original Name" et passez les script, target_url et project_id originaux. Le duplicata démarre avec le statut draft sans historique de version.
  • list_automations — Lister les scripts d'automatisation Playwright. Filtrer par project_id ou status (draft, active, paused). Renvoie un tableau d'automatisations avec le nom, target_url, last_run_status et run_count.
  • get_automation — Obtenir les détails complets de l'automatisation, y compris le script Playwright et les exécutions récentes. Nécessite id. Renvoie l'automatisation avec le script en direct, une pile script_versions (la plus ancienne en premier, jusqu'à 100 entrées précédentes, chacune { script, source, timestamp }) et un tableau recent_runs où chaque exécution porte le script_version_label/script_version_source qui a été exécuté. Appelez ceci avant run_automation si vous devez choisir une version historique spécifique.
  • run_automation — Déclencher une exécution immédiate d'un test Playwright. Nécessite automation_id. Mode virtuel (par défaut) : device optionnel pour l'émulation de fenêtre d'affichage (par ex. desktop, iphone-15). Mode Live : définir browserstack: true avec bs_browser (chrome, firefox, safari, edge), bs_os (Windows, OS X) et bs_os_version pour exécuter sur un vrai navigateur de bureau. Live real-mobile : définir bs_os: "android" (appareils : "Samsung Galaxy S25 Ultra", "Google Pixel 10", "OnePlus 13R") ou bs_os: "ios" (appareils : "iPhone 17 Pro Max", "iPhone 16 Pro Max", "iPhone 15 Pro Max") et passer le nom de l'appareil dans bs_os_version. Les scripts Node.js passent par browserstack-node-sdk (couvre bureau + Android + iPhone). Les scripts Python passent par browserstack-sdk (pytest-playwright) et couvrent le bureau uniquement — le mode real mobile via Python n'est pas pris en charge car le browser_type.connect() de pytest-playwright ne peut pas piloter les points de terminaison real-mobile de BrowserStack. Vidéo et journaux réseau capturés automatiquement ; les journaux de console sont pour le bureau uniquement. Relecture de version : passer un version_index optionnel (entier, indexé à 0) pour exécuter une entrée précédente de l'historique script_versions de l'automatisation. Par défaut : lorsque version_index est omis ou nul, le script en direct actuel s'exécute — ne passez pas de valeur d'espace réservé juste pour "choisir l'actuel". Les valeurs hors plage, négatives ou non entières sont rejetées. L'enregistrement d'exécution stocke l'instantané exact qui a été exécuté, et tout rapport de bug créé automatiquement à partir d'une exécution échouée renvoie un lien profond vers cette version dans l'éditeur.
  • list_automation_runs — Lister les exécutions récentes d'une automatisation. Nécessite automation_id. Renvoie les exécutions avec le statut, duration_ms et error_message.
  • list_schedules — Lister toutes les exécutions d'automatisation web planifiées avec les paramètres cron, fuseau horaire, appareil et notification
  • create_schedule — Créer une exécution d'automatisation web planifiée. Nécessite automation_id et cron_expression. Prend en charge les options d'appareil, fuseau horaire, notify_on_fail (email/slack/les deux) et canal Slack. BrowserStack Live sur les exécutions planifiées : passer browserstack: true avec bs_browser, bs_os et bs_os_version — même matrice d'appareils que run_automation (Node = bureau + vrai Android + vrai iPhone ; Python = bureau uniquement).
  • delete_schedule — Supprimer une exécution d'automatisation web planifiée
  • list_mobile_schedules — Lister toutes les exécutions d'automatisation mobile planifiées avec les appareils, cron, fuseau horaire et notifications
  • create_mobile_schedule — Créer une exécution d'automatisation mobile planifiée sur de vrais appareils. Nécessite automation_id, cron_expression et le tableau devices
  • delete_mobile_schedule — Supprimer une exécution d'automatisation mobile planifiée
  • optimize_automation_script — Envoyer un script Playwright à Sonnet 4 pour une optimisation alimentée par l'IA. Applique une liste de contrôle en 12 points qui corrige les sélecteurs, les stratégies d'attente, les assertions, la gestion des erreurs, les modèles d'authentification, la compatibilité mobile et le mode strict. Nécessite automation_id. La version actuelle du script est sauvegardée avant l'optimisation. Renvoie le script optimisé et un résumé des modifications.
  • undo_automation_script — Restaurer un script d'automatisation à sa version précédente. Jusqu'à 10 versions précédentes sont conservées. Nécessite automation_id. Renvoie le script restauré et le nombre de versions restantes.
  1. create_automation → créer un test avec un script personnalisé
  2. list_automations → parcourir les tests disponibles
  3. get_automation → inspecter le script Playwright
  4. run_automation → déclencher le test
  5. list_automation_runs → vérifier les résultats et la durée

⏱️

Suivi du temps* list_time_entries — Lister les entrées de temps pour l'équipe. Filtrer par period (today, week, month, all), project_id, category, et sort (newest, oldest, most_time, least_time). Plan Équipe uniquement.

  • create_time_entry — Enregistrer le temps passé sur les tâches QA. Nécessite description, category, et duration_minutes. Définir optionnellement project_id et entry_date (par défaut aujourd'hui). Plan Équipe uniquement.
  • update_time_entry — Mettre à jour une entrée de temps existante. Nécessite id. Peut mettre à jour description, category, duration_minutes, project_id, ou entry_date. Plan Équipe uniquement.
  • delete_time_entry — Supprimer définitivement une entrée de temps. Nécessite id. Plan Équipe uniquement.
  1. create_time_entry → enregistrer 45 minutes de tests de régression
  2. list_time_entries → voir les entrées de temps de cette semaine
  3. update_time_entry → ajuster la durée ou la catégorie
  4. delete_time_entry → supprimer une entrée incorrecte

☑️

Cas de test

Gestion complète des tests avec dossiers hiérarchiques, suites imbriquées (jusqu'à 3 niveaux de profondeur avec expansion automatique des sous-suites lors des exécutions), réorganisation par glisser-déposer, génération de cas assistée par IA, et un onglet analytique Rapports avec tendances KPI, analyse des échecs, santé des suites, couverture et productivité des testeurs. Tous les outils appellent Supabase directement — sans aller-retour HTTP, même latence que le tableau de bord.

Exécution mains libres : la page de revue d'exécution est un carrousel avec un cas visible à la fois, des raccourcis clavier (P Réussite · F Échec · B Bloqué · S Ignorer), et commande vocale. Cliquez sur le micro, puis dites « Réussite », « Échec », « Bloqué », « Ignorer », « Suivant », « Précédent », « Ajouter des notes » (transcrit dans le champ notes), « Enregistrer les notes » ou « Voix désactivée ». Passe automatiquement au cas non testé suivant en cas de succès ; reste sur place en cas d'échec pour que les testeurs puissent dicter des détails et créer un bug. Fonctionne sous Chrome, Edge et Safari.

Cas et dossiers
  • list_test_cases — Lister les cas de test avec filtres optionnels search, priority (critical, high, medium, low), type (functional, regression, smoke, integration, performance, security, usability, exploratory), status (active, draft, deprecated), et sort (newest, oldest, name, priority).
  • create_test_case — Créer un cas de test. Deux variantes de modèle : steps (par défaut) — grille { action, expected } par étape via le tableau steps ; text — description libre unique via text_content. Les deux champs peuvent être envoyés dans le même appel (la plateforme les stocke indépendamment afin qu'un testeur changeant template_type ultérieurement ne perde les données d'aucun côté). Tableau optionnel urls (max 10 URLs http/https) pour joindre des liens de référence. Nécessite name. Optionnel : description, preconditions, template_type, steps, text_content, urls, priority, type, tags, estimated_time (secondes). Les pièces jointes sont téléversées via le point de terminaison POST /api/test-cases/:id/attachments du tableau de bord (multipart) — pas encore exposé comme outil MCP.
  • get_test_case — Obtenir les détails complets d'un cas de test, y compris les étapes et l'historique d'exécution.
  • list_test_case_folders — Lister les dossiers de l'équipe (un dossier par cas via folder_id ; distinct des suites, qui sont des regroupements de plans de test plusieurs-à-plusieurs). Limité à 500 ; respecte les filtres project_id et parent_folder_id (utilisez "root" pour le niveau supérieur uniquement).
  • create_test_case_folder — Créer un dossier (s'imbrique jusqu'à 3 niveaux via parent_folder_id). Utilisez bulk_update_test_cases pour y déplacer des cas.
  • bulk_update_test_cases — Appliquer une action à jusqu'à 500 cas à la fois : set_priority, set_status, set_type, add_tags, remove_tags, add_to_suite, pin, unpin.
  • link_test_case_to_bug — Établir la traçabilité entre un cas de test et un rapport de bug (verified_by, covers, ou relates).
  • list_test_case_links — Lister tous les liens de traçabilité pour un cas de test.
  • list_test_case_review_candidates — Indicateurs de test mort : never_run (90+ jours depuis la création), always_passes (5+ réussites consécutives en 90j), always_skipped (3+ ignorés consécutifs).
  • mark_test_case_review_flags — Persister les indicateurs actuels de candidats à l'archivage sur test_cases.review_flag. S'exécute automatiquement chaque lundi à 09:00 UTC via pg_cron.
Importations
  • Importation Figma (UI tableau de bord + REST) : téléversez une exportation zip de trames Figma (jusqu'à 100 Mo), Claude analyse chaque écran et ébauche des cas de test dans un dossier que vous choisissez ou créez. Pipeline multi-passes (classifier → cas par écran → cas au niveau flux entre écrans à préfixe partagé → auto-critique) avec mise en cache des invites, nouvelle tentative 429 et isolation des erreurs par trame pour qu'une trame défaillante n'échoue pas le lot. Les cas arrivent en tant que status=active, étiquetés ai_generated=true, avec source='figma' et source_frame_name préservant un lien vers la trame d'origine. Utilise la clé Anthropic de la plateforme — aucune connexion Claude par équipe requise. Points de terminaison : POST /api/test-cases/import/figma/request, POST /api/test-cases/import/figma/start, GET /api/test-cases/import/figma/:id.
Suites et exécutions
  • list_test_suites — Lister les suites de tests avec le nombre de cas et le statut de la dernière exécution.
  • create_test_suite — Créer une suite. S'imbrique jusqu'à 3 niveaux via parent_suite_id.
  • list_test_runs — Lister les exécutions de tests avec le nom de la suite, l'assigné et le résumé réussite/échec.
  • create_test_run — Capturer une suite dans une nouvelle exécution. L'exécution d'une suite parente inclut automatiquement chaque cas de chaque sous-suite descendante (un cas lié aux deux n'est ajouté qu'une seule fois). Chaque enregistrement test_run_results indique de quelle sous-suite d'origine provient le cas, afin que les pages de résultats puissent être regroupées par origine.
Rapports (analytiques Niveau 1 + Niveau 4)
  • get_test_reports_overview — KPI principaux pour une fenêtre (taux de réussite, exécutions terminées, cas exécutés) avec deltas par rapport à la fenêtre équivalente précédente. Les mêmes chiffres que la bande KPI de l'onglet Rapports.
  • get_test_reports_failures — Quatre listes « que corriger ? » : failing_cases (≥50% d'échec, min 3 exécutions), flaky_cases (le plus de bascules réussite/échec), failing_suites (≥30% d'échec, min 5 exécutions), regressed_cases (échec le plus récent avec une réussite antérieure dans la fenêtre).
  1. create_test_case_folder → créer une arborescence de dossiers (ex. Smoke → Auth)
  2. create_test_case → définir des cas ; les déplacer dans des dossiers avec bulk_update_test_cases
  3. create_test_suite → construire un plan de test (sous-suites optionnelles, jusqu'à 3 niveaux de profondeur)
  4. create_test_run → capturer une exécution depuis une suite parente — sous-suites incluses automatiquement
  5. get_test_reports_failures → demander « que corriger cette semaine ? » une fois l'exécution terminée
  6. get_test_reports_overview → suivre la tendance du taux de réussite semaine après semaine

Renfort d'équipe

  • scale_team — Augmentez instantanément votre équipe QA avec des testeurs en renfort. Les comptes sont provisionnés automatiquement avec un accès testeur. Spécifiez team_size (1–10), location, duration, budget, et optionnellement product_url, product_types, et tech_levels. Disponible sur le plan Équipe. Vous ne serez pas facturé tant que l'approbation n'a pas été donnée.
  1. scale_team → provisionner 5 testeurs seniors aux États-Unis pour 1 mois
  2. list_team_members → vérifier que les nouveaux testeurs apparaissent dans votre équipe
  3. list_reports → examiner les rapports déposés par les testeurs en renfort

📱

Tests mobiles

  • upload_mobile_app — Téléverser une application APK (Android) ou IPA (iOS) pour test sur des appareils réels. Nécessite name, platform (android/ios), et file_url. Pour iOS : téléversez l'IPA pour les exécutions sur appareil réel, puis téléversez un build simulateur .app sur la page de détail de l'application pour activer l'enregistrement.
  • update_mobile_app — Remplacer un binaire d'application par une nouvelle version. Efface les URLs en cache et les builds simulateur pour que toutes les automatisations utilisent la nouvelle version à la prochaine exécution. Nécessite app_id et file_url. Optionnel : version.
  • create_mobile_automation — Créer un script de test. Nécessite name, app_id, script_type (maestro pour YAML, appium pour Appium Python, appium_js pour Appium JavaScript), et script (le contenu du script de test).
  • list_mobile_runs — Obtenir les résultats des exécutions de tests mobiles (statut, appareil, vidéo, session BrowserStack et tout bug créé automatiquement). Les exécutions mobiles sont déclenchées depuis le tableau de bord ou selon un planning. Filtres optionnels : automation_id, status (queued, running, passed, failed, error, archived), limit. Les exécutions archivées sont exclues de la liste par défaut.

Exemple de flux de travail — Android

  1. upload_mobile_app → téléverser votre APK
  2. Enregistrer le test dans le navigateur → actions capturées automatiquement
  3. Déclencher l'exécution sur un appareil réel (ex. Google Pixel 8) depuis le tableau de bord ou un planning
  4. list_mobile_runs → vérifier les résultats avec vidéo et journaux
  5. Les échecs créent automatiquement des rapports de bug avec capture d'échec et décomposition des étapes

Exemple de flux de travail — iOS

  1. upload_mobile_app → téléverser votre IPA (pour les exécutions sur appareil réel)
  2. Téléverser le build simulateur .app sur la page de détail de l'application (pour l'enregistrement)
  3. Enregistrer le test dans le navigateur → actions capturées depuis le simulateur
  4. Déclencher l'exécution sur un appareil réel (ex. iPhone 15 Pro, utilise l'IPA) depuis le tableau de bord ou un planning
  5. update_mobile_app → remplacer l'IPA par la nouvelle version quand elle est prête

Conformité et preuves (Entreprise)

  • collect_compliance_evidence — Déclencher la collecte automatisée de preuves depuis les services connectés (Cloudflare, GitHub, Sentry, Supabase, Railway). Renvoie l'ID d'exécution. Collecte les paramètres SSL/TLS, le statut WAF, les alertes Dependabot, les tendances d'erreurs, l'historique de déploiement, et plus encore.
  • check_config_drift — Vérifier tous les services connectés pour la dérive de configuration de sécurité par rapport aux références (mode SSL, version TLS, HSTS, règles WAF, en-têtes de sécurité).
  • generate_access_review — Créer un rapport trimestriel de revue d'accès. Audite les membres de l'équipe, les rôles, le statut MFA, l'utilisation des clés API, et génère des recommandations (ex. révoquer les clés inactives).
  • get_security_events — Interroger la chronologie des événements de sécurité inter-services. Filtrer par source (cloudflare, sentry, github) et gravité (critique, haute, moyenne, basse, info). Les événements sont auto-corrélés entre les services.

Couverture de conformité

Ces outils aident à répondre aux exigences de conformité SOC2 (CC4.1, CC6.1, CC7.2, CC8.1), ISO 27001 (A.5.18, A.8.8, A.8.9, A.8.15-16, A.8.29) et GDPR (Art. 5, 25, 32, 33).

Clients compatibles

bug_Agent_ fonctionne avec tout client prenant en charge le Model Context Protocol. Voici des guides de configuration pour les clients populaires :

🤖

Claude Desktop

Ouvrez Paramètres → Développeur → Modifier la configuration, puis ajoutez :

claude_desktop_config.json

Redémarrez Claude Desktop après avoir enregistré.

✳️

Cursor

Ouvrez Paramètres → Serveurs MCP → Ajouter un serveur, ou modifiez .cursor/mcp.json à la racine de votre projet :

.cursor/mcp.json

🌊

Windsurf

Ouvrez Paramètres → MCP → Ajouter un serveur, ou modifiez votre fichier de configuration MCP :

mcp_config.json

💻

Claude Code (CLI)

Ajoutez bug_Agent_ directement depuis le terminal :

claude mcp add bugagent -- npx -y @bugagent/mcp-server

Définissez votre clé API avec export BUGAGENT_API_KEY=ba_live_... avant de lancer.

🔧

Autres clients MCP

Tout client prenant en charge le transport MCP stdio fonctionne avec bug_Agent_. Utilisez la configuration standard :

  • Commande : npx
  • Args : ["-y", "@bugagent/mcp-server"]
  • Env : BUGAGENT_API_KEY

CLI

Premiers pas avec la CLI

La CLI bug_Agent_ vous donne un contrôle total sur les rapports de bugs, les demandes de fonctionnalités, les projets et les intégrations depuis votre terminal. Utilisez-la pour :

  • Automatiser les flux de travail — Intégrez le signalement de bugs dans les pipelines CI/CD, les scripts et les tâches cron
  • Opérations en masse — Listez, filtrez et gérez les rapports sans quitter votre terminal
  • Sortie compatible pipe — Formats JSON, YAML et bruts pour composer avec jq, yq et d'autres outils
  • Itération rapide — Pas de navigateur nécessaire — créez et mettez à jour des rapports en quelques secondes

Installation

npm install -g @bugagent/cli

Vérifiez l'installation :

bugagent --version

Authentification

Définissez votre clé API comme variable d'environnement :

Ou passez-la directement avec le drapeau --api-key :

bugagent reports list --api-key ba_live_your_key_here

🔑

Obtenez votre clé API depuis la console bug_Agent_. Les clés commencent par ba_live_.

Pour une authentification persistante, ajoutez l'export à votre profil shell (~/.bashrc, ~/.zshrc, etc.).

Utilisation

Les commandes suivent le modèle :

bugagent <resource> <action> [flags]

Les ressources peuvent également utiliser la syntaxe deux-points pour les sous-ressources :

bugagent reports comments add --report-id WRKID-545 --body "Reproduced on v2.1"

Utilisez --help sur n'importe quelle commande pour plus de détails :

bugagent reports --help
bugagent reports create --help

Exemple de session

Terminal

# List your projects
bugagent projects list

# Create a bug report in your default project
bugagent reports create \
  --title "Checkout 500 on discount code" \
  --description "Applying SAVE20 returns HTTP 500" \
  --severity critical \
  --type logic

# View recent reports
bugagent reports list --limit 5 --format pretty

# Get full details on a report (use the short ID or UUID)
bugagent reports get WRKID-545

# Sync a report to Jira
bugagent jira sync --report-id WRKID-545

# Check your usage
bugagent usage get --format json

Fonctionnalités CLI

La CLI fournit des commandes pour :

reports Créer, lister, obtenir, mettre à jour et vider les rapports de bugs

projects Créer, lister, mettre à jour et supprimer des projets

keys Générer, lister, régénérer et révoquer des clés API

jira Connecter, synchroniser les rapports et configurer les paramètres Jira

usage Vérifier l'utilisation actuelle par rapport aux limites du forfait

stats Voir les analyses et les répartitions

profile Voir et mettre à jour votre profil et vos paramètres

auth Se connecter, s'inscrire et gérer les identifiants

Drapeaux globaux

Drapeau Description

--api-key <key> Remplacer la clé API pour cette commande

--format <fmt> Format de sortie : json, yaml, pretty, raw

--debug Afficher les détails des requêtes/réponses pour le dépannage

--help Afficher l'aide pour n'importe quelle commande

--version Afficher la version de la CLI

Formats de sortie

La CLI prend en charge plusieurs formats de sortie pour différents cas d'usage :

json

JSON lisible par machine. Idéal pour rediriger vers jq ou d'autres outils.

yaml

Sortie YAML conviviale pour les fichiers de configuration et la lisibilité.

pretty

Par défaut. Sortie colorisée et formatée conçue pour le terminal.

raw

Sortie non formatée. Utile pour les scripts et l'automatisation.

Filtrage avec --transform

Utilisez --transform avec la syntaxe GJSON pour interroger et filtrer les données de sortie :

# Default pretty output
bugagent reports list

# JSON for piping to other tools
bugagent reports list --format json

# YAML
bugagent reports list --format yaml

# Raw (no formatting)
bugagent reports get rpt_abc123 --format raw

# Filter with GJSON syntax
bugagent reports list --format json \
  --transform "items.#(severity==critical).title"

Compétence IA

La CLI est également disponible en tant qu'AgentSkill, permettant aux assistants de codage IA d'utiliser bug_Agent_ en votre nom.

Qu'est-ce qu'un AgentSkill ?

Les AgentSkills permettent aux assistants de codage IA (Claude Code, Cursor, etc.) d'invoquer des outils CLI de manière contextuelle. La compétence bug_Agent_ donne à votre assistant IA la capacité de signaler des bugs, de vérifier l'état du projet et de synchroniser avec Jira, le tout sans que vous ayez à taper une commande.

Installer la compétence

claude skills install bugagent --from @bugagent/mcp-server

Une fois installé, l'assistant IA contextuel peut utiliser les commandes bug_Agent_ naturellement, avec une connaissance complète de votre produit, de vos directives de test et de la documentation téléchargée :

Invite de l'assistant IA

"File a critical bug: the payment webhook is returning
a 403 after the latest deploy. It affects all Stripe
events. Assign it to the payments project."

La compétence traduit le langage naturel en commandes CLI appropriées et les exécute.

🎬

Replay de session + Assistant IA : Lorsque le Replay de session est activé (forfait Équipe), l'assistant IA peut se référer à la session utilisateur capturée (clics, navigation, erreurs et échecs réseau des 60 dernières secondes) pour rédiger automatiquement des rapports de bugs plus riches et plus précis avec un contexte de reproduction complet.

Obtenir de l'aide

Besoin d'assistance ? Nous sommes là pour vous aider.

Communauté Discord

Rejoignez notre Discord pour une assistance en temps réel et des discussions communautaires.

Support par email

[email protected] — Nous répondons généralement dans les 24 heures.