bugAgent MCP Server
officielConnectez 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 :
- Type de transport : sélectionnez
Streamable HTTP - URL :
https://mcp.bugagent.com/mcp - Type de connexion : sélectionnez Proxy (par défaut — l'Inspector passe par un processus Node local pour contourner les restrictions CORS du navigateur)
- 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
- Nom de l'en-tête :
- Cliquez sur Connecter. Vous verrez plus de 60 outils bug_Agent_ dans le panneau de gauche.
- 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
- Ouvrez Claude Desktop → barre de menu Claude → Paramètres → Développeur → Modifier la configuration. Cela ouvre
~/Library/Application Support/Claude/claude_desktop_config.json. - 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"
}
}
}
}
- Enregistrez le fichier et quittez complètement Claude Desktop (Cmd+Q, pas seulement fermer la fenêtre).
- Relancez Claude Desktop. L'icône de marteau des outils en bas de la saisie de chat devrait maintenant afficher les outils bug_Agent_.
- Essayez : tapez “Liste mes 5 rapports de bugs les plus récents” — Claude appellera automatiquement
list_bug_reports.
Windows
- Ouvrez Claude Desktop → Fichier → Paramètres → Développeur → Modifier la configuration. Cela ouvre
%APPDATA%\Claude\claude_desktop_config.json(généralementC:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json). - Ajoutez le même bloc JSON que celui indiqué dans la section macOS.
- 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.
- 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.
- Ouvrez Cursor → Paramètres (Cmd+, sur Mac / Ctrl+, sur Windows) → MCP dans la barre latérale gauche.
- Cliquez sur + Ajouter un nouveau serveur MCP.
- Sélectionnez le type de transport HTTP.
- 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
- Nom :
- Cliquez sur Enregistrer. Cursor affiche un indicateur vert une fois connecté.
- 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.
- Installez l'extension Continue depuis le marketplace VS Code.
- 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
- macOS :
- 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"
}
}
}
]
}
- Enregistrez. Continue se rechargera automatiquement et affichera les outils bug_Agent_ dans la barre latérale.
- 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.
- 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 leclient_idet leclient_secretaffichés une seule fois sur l'écran de succès. - 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/tokenPour Claude.ai spécifiquement : allez sur claude.ai/customize/connectors et cliquez sur Ajouter un connecteur MCP.
- URL du serveur :
- 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.
- 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 optionnelattachmentsaccepte des fichiers encodés en base64 jusqu'à 400 Mo chacun : toute image, vidéo, audio, PDF ou texte/JSON. Définissezformat_description: truepour reformater automatiquement la description en un modèle structuré à l'aide de l'IA. Passeztime_spent_secondspour suivre l'effort d'AQ. Passezpriority(urgent/high/normal/low) pour définir l'urgence de correction indépendamment de la sévérité. La réponse inclutproject_id,project,short_id,legacy_short_idetproject_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 parproject(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), oureporter_user_id(UUID du membre de l'équipe qui a déposé le rapport — appelez d'abordlist_team_memberspour résoudre un nom en UUID). Chaque résultat inclutreporter_user_id,project_id,project,short_id,legacy_short_idetproject_short_idafin 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 avecstatusnew,awaiting-triageouconfirmedet une sévérité S1-S3. Lecture seule — ne revendique pas les tickets de manière atomique. Optionnelseverity(niveau unique),limit(1-50, défaut 1). Renvoie les lignes dans la même forme quelist_bug_reportspour la composabilité des outils. À associer avecclaim_bugpour le modèle lecture-puis-revendication.claim_bug— Faire passer atomiquement un bug destatusnew,awaiting-triageouconfirmedàstatus='in-progress', définirassigned_tosur l'utilisateur appelant et horodaterclaimed_at=NOW(). Sans conflit entre appelants concurrents via le modèle UPDATE-WHERE-RETURNING de Postgres — si deux agents appellentclaim_bugsur le même id en succession rapprochée, exactement un reçoitclaimed:trueavec le corps du bug et l'autre reçoitclaimed:falseavec 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) versnew, 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. Renvoieproject_id,project,short_id,legacy_short_id,project_short_id,ticket_number,project_ticket_number,qualityScore(entier 1–10) etqualityBreakdown(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 incluenttitle,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), etroot_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 queresolutionetroot_causesoient tous deux définis chaque fois questatussort denew; le tableau de bord, l'analytique et le futur corpus d'entraînementclaude-botdépendent tous de ces champs. Inclut égalementassigned_to(ID utilisateur delist_team_members) ettime_spent_secondspour le suivi du temps. Changerassigned_todé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 deget_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_typeest l'un deduplicate-of,parent-of,related-tooudepends-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_idetto_report_idacceptent 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é parlink_bug_reportsoulist_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 ligneduplicate-ofstockée où ce rapport est la cible s'affiche commeduplicated-by;parent-ofoù ce rapport est la cible s'affiche commesubtask-of;depends-onoù ce rapport est la cible s'affiche commeblocks.related-toest symétrique. Complète le champsimilar_reportsdétecté automatiquement renvoyé parget_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 confianceflush_reports— Supprimer en masse les anciens rapports (admin uniquement)
📊
Utilisation & Analytique
get_usage— Vérifier l'utilisation par rapport aux limites du forfaitget_stats— Comptes quotidiens, répartitions par type/sévérité/statut
📁
Gestion de Projet
list_projects— Lister les projets disponibles avecid,name,slug,ticket_prefix, la description et le statut par défaut. Utilisez ces valeurs aveccreate_bug_reportetlist_bug_reportspour 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é automatiquementexport_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 optionnelproject(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'affichagechange_password— Changer le mot de passe du compteget_settings/update_settings— Gérer les préférences
🔑
Gestion des Clés API
generate_api_key— Créer une clé API nomméelist_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 boosterinvite_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'équipepush_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 bugss3/mediumous4/low(brouillon Sonnet → critique OpenAIgpt-5→ synthèse Sonnet), cinq étapes sur les deux compartiments de sévérité supérieure —s1/criticalous2/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_modelet un drapeaudebated. 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 lignegithub_connectionset que le projet a ungithub_repomappé, 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 textelikely_fix_area,generated_at,repo_usedet un drapeaugrounded. 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 uniquementrun_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 bordget_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 actuelleget_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
get_performance_usage→ vérifier le quota restantcreate_performance_test→ configurer un test pour votre URLrun_performance_test→ déclencher l'audit + le test de chargeget_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 uniquementrun_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ésultatsget_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édiationlist_security_scans— Lister toutes les configurations d'analyse de sécurité pour l'équipe actuelle avec le dernier score et les badges auth/profondeurget_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écessitescan_idetcron_expression. Une planification par configuration d'analyse. Optionneltimezone,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écutiondelete_security_schedule— Supprimer une analyse de sécurité planifiée. N'affecte pas la configuration d'analyse parente ni les exécutions terminées
get_security_usage→ vérifier le quota restantcreate_security_scan→ configurer une analyse pour votre URL ou dépôtrun_security_scan→ déclencher une analyse de vulnérabilité ponctuellecreate_security_schedule→ automatiser les exécutions récurrentes (par ex. SAST hebdomadaire sur la branche principale)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 uniquementget_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 ligneget_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 Entrepriseget_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
get_code_review_usage→ vérifier les revues restantes- Réviser une PR dans le tableau de bord à
/dashboard/code-review list_code_reviews→ voir les revues récentesget_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'équipecreate_exploration— Créer une nouvelle exploration. Accepteagent_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, customget_exploration— Obtenir la configuration d'exploration avec les paramètres d'agent et les exécutions récentesget_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ésget_exploration_usage— Vérifier l'utilisation mensuelle. L'IA exploratoire est réservée à l'offre Entreprise ; Entreprise : illimité (10 agents)
create_explorationavecagent_count: 5→ configurer 5 agents parallèles- Déclencher une exécution depuis le tableau de bord ou via
POST /api/explorations/run get_exploration_run→ interroger la progression par agent et les résultats- 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éfinirvisibilitysurprivateoushared. Titre automatique à partir des 30 premiers caractères si aucun titre n'est fourni. Le tableau optionnelattachmentsaccepte les fichiers encodés en base64 jusqu'à 400 Mo chacun : toute image, vidéo, audio, PDF ou texte/JSON. Passeztime_spent_secondspour suivre l'effort QA.get_note— Obtenir les détails complets de la note, y compris le contenu et les pièces jointes. Nécessiteid.update_note— Mettre à jour le titre, le contenu, le format, la visibilité, le projet outime_spent_seconds. Passez un tableauattachmentspour 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écessiteid.delete_note— Supprimer définitivement une note et ses pièces jointes. Seul l'auteur peut supprimer. Nécessiteid.
create_note→ démarrer une note de session de testupdate_note→ ajouter des observations au fur et à mesure des testslist_notes→ rechercher des notes passées par mot-clé ou projetget_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écessitename. Optionnel :target_url(auto-dérivé de la première URLpage.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(draftouactive, par défaut :draft),project_id. Renvoie l'idde l'automatisation. Forfait Équipe requis. Astuce — Dupliquer une automatisation : utilisezget_automationpour récupérer le script original, puis appelezcreate_automationavecnamedéfini sur"[Copy] Original Name"et passez lesscript,target_urletproject_idoriginaux. Le duplicata démarre avec le statutdraftsans historique de version.list_automations— Lister les scripts d'automatisation Playwright. Filtrer parproject_idoustatus(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écessiteid. Renvoie l'automatisation avec lescripten direct, une pilescript_versions(la plus ancienne en premier, jusqu'à 100 entrées précédentes, chacune{ script, source, timestamp }) et un tableaurecent_runsoù chaque exécution porte lescript_version_label/script_version_sourcequi a été exécuté. Appelez ceci avantrun_automationsi vous devez choisir une version historique spécifique.run_automation— Déclencher une exécution immédiate d'un test Playwright. Nécessiteautomation_id. Mode virtuel (par défaut) :deviceoptionnel pour l'émulation de fenêtre d'affichage (par ex.desktop,iphone-15). Mode Live : définirbrowserstack: trueavecbs_browser(chrome,firefox,safari,edge),bs_os(Windows,OS X) etbs_os_versionpour exécuter sur un vrai navigateur de bureau. Live real-mobile : définirbs_os: "android"(appareils :"Samsung Galaxy S25 Ultra","Google Pixel 10","OnePlus 13R") oubs_os: "ios"(appareils :"iPhone 17 Pro Max","iPhone 16 Pro Max","iPhone 15 Pro Max") et passer le nom de l'appareil dansbs_os_version. Les scripts Node.js passent parbrowserstack-node-sdk(couvre bureau + Android + iPhone). Les scripts Python passent parbrowserstack-sdk(pytest-playwright) et couvrent le bureau uniquement — le mode real mobile via Python n'est pas pris en charge car lebrowser_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 unversion_indexoptionnel (entier, indexé à 0) pour exécuter une entrée précédente de l'historiquescript_versionsde l'automatisation. Par défaut : lorsqueversion_indexest 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écessiteautomation_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 notificationcreate_schedule— Créer une exécution d'automatisation web planifiée. Nécessiteautomation_idetcron_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 : passerbrowserstack: trueavecbs_browser,bs_osetbs_os_version— même matrice d'appareils querun_automation(Node = bureau + vrai Android + vrai iPhone ; Python = bureau uniquement).delete_schedule— Supprimer une exécution d'automatisation web planifiéelist_mobile_schedules— Lister toutes les exécutions d'automatisation mobile planifiées avec les appareils, cron, fuseau horaire et notificationscreate_mobile_schedule— Créer une exécution d'automatisation mobile planifiée sur de vrais appareils. Nécessiteautomation_id,cron_expressionet le tableaudevicesdelete_mobile_schedule— Supprimer une exécution d'automatisation mobile planifiéeoptimize_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écessiteautomation_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écessiteautomation_id. Renvoie le script restauré et le nombre de versions restantes.
create_automation→ créer un test avec un script personnalisélist_automations→ parcourir les tests disponiblesget_automation→ inspecter le script Playwrightrun_automation→ déclencher le testlist_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écessitedescription,category, etduration_minutes. Définir optionnellementproject_idetentry_date(par défaut aujourd'hui). Plan Équipe uniquement.update_time_entry— Mettre à jour une entrée de temps existante. Nécessiteid. Peut mettre à jourdescription,category,duration_minutes,project_id, ouentry_date. Plan Équipe uniquement.delete_time_entry— Supprimer définitivement une entrée de temps. Nécessiteid. Plan Équipe uniquement.
create_time_entry→ enregistrer 45 minutes de tests de régressionlist_time_entries→ voir les entrées de temps de cette semaineupdate_time_entry→ ajuster la durée ou la catégoriedelete_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 optionnelssearch,priority(critical,high,medium,low),type(functional,regression,smoke,integration,performance,security,usability,exploratory),status(active,draft,deprecated), etsort(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 tableausteps;text— description libre unique viatext_content. Les deux champs peuvent être envoyés dans le même appel (la plateforme les stocke indépendamment afin qu'un testeur changeanttemplate_typeultérieurement ne perde les données d'aucun côté). Tableau optionnelurls(max 10 URLs http/https) pour joindre des liens de référence. Nécessitename. 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 terminaisonPOST /api/test-cases/:id/attachmentsdu 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 viafolder_id; distinct des suites, qui sont des regroupements de plans de test plusieurs-à-plusieurs). Limité à 500 ; respecte les filtresproject_idetparent_folder_id(utilisez"root"pour le niveau supérieur uniquement).create_test_case_folder— Créer un dossier (s'imbrique jusqu'à 3 niveaux viaparent_folder_id). Utilisezbulk_update_test_casespour 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, ourelates).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 surtest_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ésai_generated=true, avecsource='figma'etsource_frame_namepré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 viaparent_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 enregistrementtest_run_resultsindique 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).
create_test_case_folder→ créer une arborescence de dossiers (ex. Smoke → Auth)create_test_case→ définir des cas ; les déplacer dans des dossiers avecbulk_update_test_casescreate_test_suite→ construire un plan de test (sous-suites optionnelles, jusqu'à 3 niveaux de profondeur)create_test_run→ capturer une exécution depuis une suite parente — sous-suites incluses automatiquementget_test_reports_failures→ demander « que corriger cette semaine ? » une fois l'exécution terminéeget_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écifiezteam_size(1–10),location,duration,budget, et optionnellementproduct_url,product_types, ettech_levels. Disponible sur le plan Équipe. Vous ne serez pas facturé tant que l'approbation n'a pas été donnée.
scale_team→ provisionner 5 testeurs seniors aux États-Unis pour 1 moislist_team_members→ vérifier que les nouveaux testeurs apparaissent dans votre équipelist_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écessitename,platform(android/ios), etfile_url. Pour iOS : téléversez l'IPA pour les exécutions sur appareil réel, puis téléversez un build simulateur.appsur 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écessiteapp_idetfile_url. Optionnel :version.create_mobile_automation— Créer un script de test. Nécessitename,app_id,script_type(maestropour YAML,appiumpour Appium Python,appium_jspour Appium JavaScript), etscript(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
upload_mobile_app→ téléverser votre APK- Enregistrer le test dans le navigateur → actions capturées automatiquement
- Déclencher l'exécution sur un appareil réel (ex. Google Pixel 8) depuis le tableau de bord ou un planning
list_mobile_runs→ vérifier les résultats avec vidéo et journaux- Les échecs créent automatiquement des rapports de bug avec capture d'échec et décomposition des étapes
Exemple de flux de travail — iOS
upload_mobile_app→ téléverser votre IPA (pour les exécutions sur appareil réel)- Téléverser le build simulateur
.appsur la page de détail de l'application (pour l'enregistrement) - Enregistrer le test dans le navigateur → actions capturées depuis le simulateur
- 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
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,yqet 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.