dogfood
von vercel-labsAutomatisiere exploratives QA‑Testing beliebiger Webanwendungen mit strukturierten Bug-Reports, Screenshots und Videos. dogfood steuert den agent-browser Client, um eine Zielseite zu erkunden, visuelle, funktionale, UX-, Performance-, Console- und Accessibility-Probleme zu finden und einen sofort teilbaren QA‑Report mit klaren Repro-Schritten zu erzeugen.
Overview
What the dogfood skill does
Der dogfood Skill automatisiert exploratives Testing von Webanwendungen mit dem agent-browser Client. Er erkundet eine Zielseite oder -App systematisch, sucht nach Defekten in der visuellen UI, Funktionalität, UX, Performance, Console und Accessibility und erzeugt einen strukturierten QA‑Report mit:
- Klaren Issue-Titeln und Kategorien
- Schweregraden (critical, high, medium, low)
- Reproduktionsschritten, denen Teammitglieder folgen können
- Schrittweisen Screenshots
- Reproduktionsvideos für interaktive Issues, wenn nötig
Damit ist dogfood besonders hilfreich, wenn du gebeten wirst, eine App zu „dogfooden“, zu „QAen“, „explorativ zu testen“, eine „Bug Hunt“ zu machen oder „diese App/Site/Plattform zu testen“ – und du belastbare Evidenz brauchst, die direkt an Engineers, Designer oder Product Manager übergeben werden kann.
Who dogfood is for
Nutze den dogfood Skill, wenn du zu einer der folgenden Gruppen gehörst:
- QA Engineers und SDETs, die wiederholbare Explorationsläufe mit aussagekräftigen Repro-Belegen wollen.
- Frontend- und Full-Stack-Engineers, die Änderungen vor dem Release sanity-checken möchten.
- Product Manager und Designer, die schnelles UX- und UI‑Feedback mit konkreten Beispielen benötigen.
- Startups und kleine Teams, die keine eigene QA‑Funktion haben, aber dennoch systematisch Issues finden müssen.
When dogfood is a good fit
Dogfood passt besonders gut, wenn:
- Dein Ziel eine browserbasierte Web-App oder Website ist (öffentliches Domain oder
localhost). - Du End-to-End-Flows explorieren möchtest statt nur einen einzelnen geskripteten Test auszuführen.
- Dir UX- und UI‑Polish genauso wichtig ist wie reine Funktionsfehler.
- Du teilbare Ergebnisse brauchst (Screenshots, Videos und Markdown-Reports), die sich nahtlos in bestehende Workflows einfügen.
Weniger geeignet ist dogfood, wenn:
- Dein Hauptziel eine reine Backend-API ohne Browseroberfläche ist.
- Du nur Unit-Tests oder Low-Level-Integrationstests brauchst statt Prüfungen des sichtbaren Nutzerverhaltens.
- Du formales Load-Testing oder synthetische Performance-Benchmarks benötigst, die über das hinausgehen, was explorative Interaktion aufdecken kann.
How dogfood works at a high level
Aus dem vercel-labs/agent-browser Repository heraus konfiguriert dogfood den agent-browser Client mit:
- Einer Target URL, die im Browser geöffnet wird
- Optionalem Session Naming, Scope und Output Directory
- Optionalen Authentication Steps, wenn ein Login nötig ist
- Einer Referenz-Issue Taxonomy (
references/issue-taxonomy.md), um Findings konsistent zu halten - Einem Report Template (
templates/dogfood-report-template.md), das den finalen QA‑Report strukturiert
Der Skill steuert dann den Browser durch die wichtigsten User-Flows, nimmt Screenshots und Videos auf, sobald Issues entdeckt werden, und protokolliert alles in einem konsistenten Format.
How to Use
Prerequisites
Um dogfood effektiv zu nutzen, solltest du Folgendes haben:
- Zugriff auf den
agent-browserClient aus demvercel-labs/agent-browserRepository - Eine URL der App oder Site, die du testen möchtest, z. B.
https://example.comoderhttp://localhost:3000 - (Optional) Test-Credentials, falls die App eine Authentifizierung erfordert
Der Skill ist auf den direkten agent-browser Binary aus den Upstream-Dokumenten ausgelegt, nicht auf npx agent-browser. So profitierst du vom schnellen Rust Client.
Installing the dogfood skill
Installiere den Skill in deiner Agent-Skills-Umgebung mit:
npx skills add https://github.com/vercel-labs/agent-browser --skill dogfood
Damit wird die dogfood Skill-Definition aus skills/dogfood im vercel-labs/agent-browser Repository geladen, inklusive:
SKILL.md– Hauptbeschreibung und Runtime-Erwartungenreferences/issue-taxonomy.md– Leitfaden zur konsistenten Klassifikation von Issuestemplates/dogfood-report-template.md– Markdown-Template für finale Reports
Nach der Installation kannst du im Files-Tab oder deinem lokalen Checkout diese Dateien vor dem ersten Run prüfen.
Core configuration: required and optional inputs
Der dogfood Skill ist so konzipiert, dass du mit sinnvollen Defaults schnell starten und sofort testen kannst.
Required parameter
- Target URL – die Web-App oder Site, die du dogfooden möchtest
Beispiele:vercel.com,https://example.com,http://localhost:3000
Optional parameters with defaults
-
Session name
Default: slugified Domain (z. B.vercel.com→vercel-com)
Beispiel-Override:--session my-first-dogfood-run -
Output directory
Default:./dogfood-output/
Beispiel-Override:Output directory: /tmp/qa -
Scope
Default: gesamte App
Beispiel-Overrides:Focus on the billing page,Only test onboarding and settings,Ignore marketing pages -
Authentication
Default: none
Beispiel-Override:Sign in to user@example.com(du gibst Credentials dann über deinen üblichen sicheren Kanal weiter)
Wenn jemand sagt „dogfood vercel.com“, soll der Skill sofort mit Defaults starten. Er sollte keine Rückfragen stellen, außer wenn ein Login erforderlich ist, aber keine Credentials angegeben wurden.
Typical dogfood workflow
Nutze diese Abfolge als verlässlichen Startpunkt für jede Web-App, die du testest:
1. Initialize a dogfood session
Lege fest, was du abdecken willst und wo die Ergebnisse gespeichert werden. Zum Beispiel kannst du:
- Eine Target URL wählen (
http://localhost:3000für lokale Entwicklung oder eine Staging-Domain). - Optional einen Session Name vergeben, um Läufe zu unterscheiden.
- Optional das Output Directory anpassen, wenn Ergebnisse in einem Shared Folder landen sollen.
Starte deinen Agent mit aktiviertem dogfood Skill und übergib diese Parameter im Prompt oder in der Konfiguration wie in SKILL.md beschrieben.
2. Authenticate if needed
Wenn deine App einen Login erfordert:
- Gib klare Anweisungen wie:
Sign in to qa-user@example.com. - Stelle sicher, dass Test-Credentials über deinen üblichen sicheren Prozess verfügbar sind.
Der dogfood Skill behandelt die Authentifizierung als Teil der Explorations-Session, damit auch Issues auf authentifizierten Seiten gefunden werden.
3. Explore key user journeys
Innerhalb des gewählten Scopes steuert dogfood den Browser durch repräsentative Flows, zum Beispiel:
- New User Onboarding oder Signup
- Login und Account Management
- Zentrale Produktaktionen (Erstellen, Bearbeiten, Löschen von Entities)
- Navigation durch Primary Sections
- Settings-, Billing- oder Profilseiten
Während dieser Exploration nutzt dogfood die Issue Taxonomy aus references/issue-taxonomy.md, um Probleme konsistent zu erkennen und zu klassifizieren.
4. Capture issues with evidence
Für jedes Issue versucht dogfood, Folgendes zu erfassen:
- Einen kurzen, beschreibenden Issue Title
- Severity: critical, high, medium, low
- Category: visual, functional, ux, content, performance, console, accessibility
- URL, unter der das Problem auftritt
- Repro Video Pfad (für interaktive Issues) oder
N/Abei statischen Glitches - Step-by-step Screenshots, damit jeder den Ablauf visuell nachvollziehen kann
Die Struktur orientiert sich am Format von templates/dogfood-report-template.md.
5. Generate the dogfood report
Nach Abschluss der Exploration gibt der Skill einen Markdown-Report gemäß templates/dogfood-report-template.md aus:
- Eine Summary Table mit Counts pro Severity
- Einen detaillierten Issues Abschnitt, in dem jedes Issue eine Beschreibung und Repro Steps mit Screenshots enthält
Du kannst diesen Report zusammen mit deinem Code speichern, an Tickets anhängen oder direkt mit deinem Team teilen.
Customizing dogfood for your workflow
Die Defaults funktionieren out of the box, aber du kannst dogfood an deinen QA‑Prozess anpassen:
- Verwende ein teamspezifisches Output Directory, z. B.
/tmp/qaoder ein Shared Network Volume. - Engen den Scope ein, um dich auf risikoreiche Bereiche wie Billing, Checkout oder neue Features zu konzentrieren.
- Richte Severity- und Category-Definitionen an deinen internen QA‑Standards aus, indem du
references/issue-taxonomy.mdprüfst und referenzierst. - Post-prozessiére den erzeugten Markdown-Report in deinem Bug-Tracker, indem du einzelne Issues kopierst oder den gesamten Report anhängst.
Files worth reviewing in the repository
Um den dogfood Skill im Detail zu verstehen, beginne mit:
SKILL.md– die maßgebliche Beschreibung des Skill-Verhaltens und der Tools, die er nutzen kann.references/issue-taxonomy.md– definiert Severity Levels, Kategorien und eine Exploration Checklist, damit Findings über Läufe hinweg konsistent bleiben.templates/dogfood-report-template.md– zeigt exakt, wie Issues und Session Summaries im finalen Report formatiert sind.
FAQ
Is dogfood a unit test or end-to-end test framework?
Nein. Der dogfood Skill ist in erster Linie für exploratives, nutzerzentriertes QA von Webanwendungen gedacht. Er steuert einen Browser via agent-browser, um sich wie ein menschlicher Tester zu verhalten, Flows zu erkunden und Defekte mit Evidenz zu protokollieren. Er ersetzt keine Unit-Tests, Integrationstests oder Code-Level-Frameworks, sondern ergänzt sie, indem er visuelle, UX- und Interaktionsprobleme aufdeckt.
What kinds of issues can dogfood detect?
Dogfood orientiert sich an einer Issue Taxonomy, die in references/issue-taxonomy.md definiert ist. Sie hilft dir, unter anderem folgende Probleme festzuhalten:
- Visual / UI Issues – Layout-Brüche, überlappender Text, Probleme mit Responsive Design, Farbkontrasten, Icons oder Bildern.
- Functional Bugs – kaputte Links, nicht funktionierende Buttons, fehlerhafte Forms, falsche Redirects, verlorener State, Probleme beim Datei-Upload/-Download.
- UX Issues – unklare Navigation, fehlendes Feedback, unverständliche Labels, langsame oder nicht reagierende Interaktionen.
- Content Issues – Tippfehler, inkonsistente Terminologie, veraltete Texte.
- Performance Issues – spürbar langsame Seiten oder Interaktionen, die während der Exploration auffallen.
- Console Issues – Errors oder Warnings in der Browser Console während der Nutzung.
- Accessibility Issues – fehlender Alt-Text, Keyboard Traps, schlechtes Focus Handling und ähnliche beobachtbare Probleme.
Die Taxonomy macht dogfood Sessions systematischer und besser vergleichbar.
How do I start a quick dogfood run against a new site?
Wenn jemand sagt „dogfood example.com“, kannst du wie folgt vorgehen:
- Sicherstellen, dass der dogfood Skill aus
vercel-labs/agent-browserinstalliert ist. - Deinen Agent mit aktiviertem dogfood Skill aufrufen und nur die Target URL angeben.
- Den Skill seine Defaults für Session Name, Scope (volle App) und Output Directory verwenden lassen, sofern du nichts Spezielles überschreiben möchtest.
Das Ziel ist, sofort mit dem Testing zu beginnen – ohne lange Konfigurationsphase.
Does dogfood require authentication to work?
Nein. Dogfood funktioniert problemlos auf öffentlichen Sites und Marketing Pages ohne Login.
Wenn deine App für wichtige Flows eine Authentifizierung erfordert, solltest du:
- Erwähnen, dass Authentifizierung nötig ist (zum Beispiel:
Sign in to user@example.com). - Credentials über deinen üblichen sicheren Kanal bereitstellen.
Der Skill behandelt den Login dann als Teil der Session, sodass auch authentifizierte Bereiche exploriert werden können.
Where can I see how issues are categorized and reported?
Zwei zentrale Referenzen im vercel-labs/agent-browser Repository zeigen das:
references/issue-taxonomy.md– erklärt Severity Levels, Issue Categories und stellt eine Exploration Checklist bereit.templates/dogfood-report-template.md– zeigt die Struktur des Dogfood Report, inklusive Summary Table und einzelner Issue-Blöcke mit Feldern wie Severity, Category, URL, Repro Video, Description und Repro Steps mit Screenshots.
Wenn du diese Dateien vor deinem ersten Run ansiehst, fällt es dir leichter, die Reports des dogfood Skills zu interpretieren und anzupassen.
When is dogfood not the right tool?
Der dogfood Skill ist nicht ideal, wenn:
- Du Nicht-Browser-Systeme testest (CLI-Tools, Desktop-Apps, Backend-Services), mit denen
agent-browsernicht interagieren kann. - Du Load-Testing oder synthetische Performance-Metriken brauchst, die über qualitative Beobachtungen hinausgehen.
- Du feingranulare, codierte Tests brauchst, die direkt in deiner CI-Pipeline laufen; in diesem Fall solltest du klassische Testframeworks zusätzlich zu dogfood verwenden.
In solchen Szenarien ist dogfood ein optionaler, ergänzender Layer, der sich auf reales Browserverhalten konzentriert – nicht als Ersatz für andere Testing-Tools.
