dogfood
par vercel-labsAutomatisez la QA exploratoire de n’importe quelle application web avec des rapports de bugs structurés, des captures d’écran et des vidéos. dogfood pilote le client agent-browser pour explorer un site cible, identifier les problèmes visuels, fonctionnels, UX, de performance, de console et d’accessibilité, puis produire un rapport de QA prêt à être partagé avec des étapes de reproduction claires.
Overview
What the dogfood skill does
La skill dogfood automatise les tests exploratoires d’applications web en utilisant le client agent-browser. Elle explore de manière systématique un site ou une application cible, recherche les défauts au niveau de l’interface visuelle, de la fonctionnalité, de l’UX, des performances, de la console et de l’accessibilité, puis produit un rapport de QA structuré comprenant :
- Des titres et des catégories de problèmes clairs
- Des niveaux de sévérité (critical, high, medium, low)
- Des étapes de reproduction qu’un membre de l’équipe peut suivre
- Des captures d’écran étape par étape
- Des vidéos de reproduction pour les problèmes interactifs, si nécessaire
Cela rend dogfood particulièrement utile lorsqu’on vous demande de « dogfooder », « faire la QA », « faire des tests exploratoires », « chasser les bugs » ou « tester cette app/ce site/cette plateforme » et que vous avez besoin de preuves à transmettre directement aux ingénieurs, designers ou product managers.
Who dogfood is for
Utilisez la skill dogfood si vous êtes :
- Ingénieurs QA et SDET qui veulent des exécutions exploratoires reproductibles avec des preuves de repro riches.
- Ingénieurs frontend et full‑stack qui souhaitent vérifier rapidement les changements avant une mise en production.
- Product managers et designers qui ont besoin de retours rapides sur l’UX et l’UI avec des exemples concrets.
- Startups et petites équipes sans équipe QA dédiée mais qui ont quand même besoin d’une approche systématique pour trouver les problèmes.
When dogfood is a good fit
Dogfood est particulièrement adapté lorsque :
- Votre cible est une web app ou un site accessible via navigateur (domaine public ou
localhost). - Vous voulez explorer des parcours de bout en bout plutôt que lancer un seul test scripté.
- Vous accordez autant d’importance au polish UX et UI qu’aux bugs purement fonctionnels.
- Vous avez besoin de résultats partageables (captures, vidéos et rapports markdown) qui s’intègrent dans vos workflows existants.
Il est moins adapté lorsque :
- Votre cible principale est une API backend pure sans interface navigateur.
- Vous avez uniquement besoin de tests unitaires ou tests d’intégration bas niveau, plutôt que de vérifications centrées sur le comportement utilisateur.
- Vous exigez un vrai test de charge ou des métriques de performance synthétiques allant au‑delà de ce que des interactions exploratoires peuvent révéler.
How dogfood works at a high level
Depuis le dépôt vercel-labs/agent-browser, dogfood configure le client agent-browser avec :
- Une URL cible à ouvrir dans le navigateur
- Des options facultatives de nom de session, de scope et de répertoire de sortie
- Des étapes d’authentification facultatives si une connexion est nécessaire
- Une taxonomie de problèmes de référence (
references/issue-taxonomy.md) pour garder des constats homogènes - Un template de rapport (
templates/dogfood-report-template.md) pour structurer le rapport de QA final
La skill pilote ensuite le navigateur à travers les flux utilisateurs clés, en capturant des captures d’écran et des vidéos à mesure que des problèmes sont détectés, et en les enregistrant dans un format cohérent.
How to Use
Prerequisites
Pour utiliser dogfood efficacement, vous devez disposer :
- De l’accès au client
agent-browserdepuis le dépôtvercel-labs/agent-browser - D’une URL pour l’app ou le site à tester, par exemple
https://example.comouhttp://localhost:3000 - (Optionnel) D’identifiants de test si l’app nécessite une authentification
La skill est conçue pour fonctionner avec le binaire agent-browser direct mentionné dans la documentation upstream, et non avec npx agent-browser. Cela vous permet de profiter du client Rust performant.
Installing the dogfood skill
Installez la skill dans votre environnement de skills d’agent avec :
npx skills add https://github.com/vercel-labs/agent-browser --skill dogfood
Cette commande récupère la définition de la skill dogfood depuis skills/dogfood dans le dépôt vercel-labs/agent-browser, y compris :
SKILL.md– description principale et attentes d’exécutionreferences/issue-taxonomy.md– comment classifier les problèmes de manière cohérentetemplates/dogfood-report-template.md– template markdown pour les rapports finaux
Après l’installation, ouvrez l’onglet Files ou votre checkout local pour parcourir ces fichiers avant votre première exécution.
Core configuration: required and optional inputs
La skill dogfood est conçue pour démarrer rapidement avec des valeurs par défaut raisonnables, afin que vous puissiez commencer à tester immédiatement.
Paramètre obligatoire
- Target URL – la web app ou le site que vous souhaitez dogfooder
Exemples :vercel.com,https://example.com,http://localhost:3000
Paramètres optionnels avec valeurs par défaut
-
Session name
Par défaut : domaine « slugifié » (ex.vercel.com→vercel-com)
Exemple de surcharge :--session my-first-dogfood-run -
Output directory
Par défaut :./dogfood-output/
Exemple de surcharge :Output directory: /tmp/qa -
Scope
Par défaut : app complète
Exemples de surcharge :Focus on the billing page,Only test onboarding and settings,Ignore marketing pages -
Authentication
Par défaut : aucune
Exemple de surcharge :Sign in to user@example.com(vous fournissez ensuite les identifiants via votre canal sécurisé habituel)
Si quelqu’un dit « dogfood vercel.com », la skill est conçue pour démarrer immédiatement avec les valeurs par défaut. Elle ne doit pas s’arrêter pour demander des précisions, sauf si une connexion est nécessaire mais que les identifiants n’ont pas été fournis.
Typical dogfood workflow
Utilisez cette séquence comme point de départ fiable pour chaque web app que vous testez :
1. Initialize a dogfood session
Décidez ce que vous voulez couvrir et où stocker les résultats. Par exemple, vous pouvez :
- Choisir une Target URL (
http://localhost:3000pour le développement local, ou un domaine de staging). - Optionnellement définir un Session name pour distinguer les exécutions.
- Optionnellement personnaliser l’Output directory si vous souhaitez stocker les résultats dans un dossier partagé.
Lancez votre agent avec la skill dogfood activée et fournissez ces paramètres dans le prompt ou la configuration, comme décrit dans SKILL.md.
2. Authenticate if needed
Si votre app nécessite une connexion :
- Fournissez des instructions claires, par exemple :
Sign in to qa-user@example.com. - Assurez-vous que les identifiants de test sont disponibles via votre processus sécurisé habituel.
La skill dogfood traitera l’authentification comme partie intégrante du flux exploratoire, afin que des problèmes puissent également être détectés sur les pages authentifiées.
3. Explore key user journeys
Dans le scope sélectionné, dogfood pilote le navigateur à travers des parcours représentatifs, par exemple :
- Onboarding ou inscription d’un nouvel utilisateur
- Connexion et gestion de compte
- Actions cœur de produit (création, modification, suppression d’éléments)
- Navigation entre les sections principales
- Pages de paramètres, facturation ou profil
Pendant cette exploration, la skill utilise la issue taxonomy de references/issue-taxonomy.md pour détecter et classer les problèmes de manière cohérente.
4. Capture issues with evidence
Pour chaque problème, dogfood cherche à collecter :
- Un titre de problème court et descriptif
- La sévérité : critical, high, medium, low
- La catégorie : visual, functional, ux, content, performance, console, accessibility
- L’URL où le problème se produit
- Le chemin de la Repro video (pour les problèmes interactifs) ou
N/Apour les anomalies statiques - Des captures d’écran étape par étape pour que n’importe qui puisse suivre visuellement
La structure reflète le format de templates/dogfood-report-template.md.
5. Generate the dogfood report
Une fois l’exploration terminée, la skill génère un rapport markdown basé sur templates/dogfood-report-template.md :
- Un tableau récapitulatif avec le nombre de problèmes par niveau de sévérité
- Une section Issues détaillée, où chaque problème inclut une description et des étapes de repro annotées avec des captures d’écran
Vous pouvez stocker ce rapport avec votre codebase, l’attacher à des tickets ou le partager directement avec votre équipe.
Customizing dogfood for your workflow
Même si les valeurs par défaut fonctionnent immédiatement, vous pouvez adapter dogfood à votre processus QA :
- Utiliser un output directory spécifique à l’équipe, par exemple
/tmp/qaou un volume réseau partagé. - Réduire le scope pour vous concentrer sur les zones à risque élevé comme la facturation, le checkout ou les nouvelles fonctionnalités.
- Aligner les définitions de sévérité et de catégories avec vos standards QA internes en consultant et en référencant
references/issue-taxonomy.md. - Post-traiter le rapport markdown généré dans votre bug tracker en copiant les problèmes individuellement ou en joignant le rapport complet.
Files worth reviewing in the repository
Pour bien comprendre la skill dogfood, commencez par :
SKILL.md– la description de référence expliquant le comportement de la skill et les outils qu’elle peut invoquer.references/issue-taxonomy.md– définit les niveaux de sévérité, les catégories et une checklist d’exploration afin que vos constats restent cohérents d’une exécution à l’autre.templates/dogfood-report-template.md– montre exactement comment les problèmes et les résumés de session sont formatés dans le rapport final.
FAQ
Is dogfood a unit test or end-to-end test framework?
Non. La skill dogfood sert principalement à une QA exploratoire centrée utilisateur pour les applications web. Elle pilote un navigateur via agent-browser pour se comporter comme un testeur humain, explorer les flux et journaliser les défauts avec des preuves. Elle ne remplace pas les tests unitaires, tests d’intégration ou frameworks au niveau du code ; elle les complète en capturant les problèmes visuels, UX et d’interaction.
What kinds of issues can dogfood detect?
Dogfood repose sur une issue taxonomy définie dans references/issue-taxonomy.md. Elle vous encourage à consigner des problèmes tels que :
- Problèmes visuels / UI – casse de layout, texte qui se chevauche, problèmes responsive, contraste de couleurs, icônes ou images dégradées.
- Bugs fonctionnels – liens cassés, boutons inactifs, formulaires qui échouent, mauvaises redirections, perte d’état, problèmes d’upload/download de fichiers.
- Problèmes UX – navigation confuse, feedback manquant, libellés peu clairs, interactions lentes ou non réactives.
- Problèmes de contenu – fautes de frappe, terminologie incohérente, textes obsolètes.
- Problèmes de performance – pages ou interactions notablement lentes observées pendant l’exploration.
- Problèmes de console – erreurs ou warnings dans la console du navigateur pendant l’usage.
- Problèmes d’accessibilité – alt text manquant, pièges clavier, gestion de focus insuffisante et autres problèmes observables.
Cette taxonomie rend les sessions dogfood plus systématiques et comparables entre les exécutions.
How do I start a quick dogfood run against a new site?
Lorsque quelqu’un demande « dogfood example.com », vous pouvez :
- Vérifier que la skill dogfood est installée depuis
vercel-labs/agent-browser. - Invoquer votre agent avec la skill dogfood et fournir uniquement la Target URL.
- Laisser la skill utiliser ses valeurs par défaut pour le Session name, le scope (app complète) et l’Output directory, sauf si vous avez des besoins spécifiques.
L’objectif est de démarrer les tests immédiatement, sans longue phase de configuration.
Does dogfood require authentication to work?
Non. Dogfood fonctionne très bien sur les sites publics et pages marketing sans aucune connexion.
Si votre app nécessite une authentification pour les parcours importants, vous devez :
- Mentionner que l’authentification est requise (par exemple :
Sign in to user@example.com). - Fournir les identifiants via votre canal sécurisé habituel.
La skill intégrera alors la connexion dans la session, afin de pouvoir explorer les zones authentifiées.
Where can I see how issues are categorized and reported?
Deux références clés dans le dépôt vercel-labs/agent-browser montrent cela :
references/issue-taxonomy.md– explique les niveaux de sévérité, les catégories de problèmes et fournit une exploration checklist.templates/dogfood-report-template.md– présente la structure du Dogfood Report, y compris le tableau récapitulatif et les blocs de problèmes individuels avec les champs Severity, Category, URL, Repro Video, Description et Repro Steps avec captures d’écran.
Consulter ces fichiers avant votre première exécution vous aidera à interpréter et personnaliser les rapports générés par la skill dogfood.
When is dogfood not the right tool?
La skill dogfood n’est pas idéale lorsque :
- Vous testez des systèmes non basés sur un navigateur (outils CLI, applications desktop, services backend) avec lesquels
agent-browserne peut pas interagir. - Vous avez besoin de tests de charge ou de métriques de performance synthétiques allant au‑delà de simples observations qualitatives.
- Vous souhaitez des tests codés très granuleux intégrés dans votre pipeline CI ; dans ce cas, utilisez des frameworks de test traditionnels en complément de dogfood.
Dans ces scénarios, considérez dogfood comme une couche optionnelle et complémentaire, focalisée sur le comportement réel dans le navigateur plutôt que comme un substitut aux autres outils de test.
