Catalog
NousResearch/dogfood

NousResearch

dogfood

Exploratory QA of web apps: find bugs, evidence, reports.

global
New~1.5k
v1.0Saved Jul 12, 2026

Dogfood: Systematic Web Application QA Testing

Overview

This skill guides you through systematic exploratory QA testing of web applications using the browser toolset. You will navigate the application, interact with elements, capture evidence of issues, and produce a structured bug report.

Prerequisites

  • Browser toolset must be available (browser_navigate, browser_snapshot, browser_click, browser_type, browser_vision, browser_console, browser_scroll, browser_back, browser_press)
  • A target URL and testing scope from the user

Inputs

The user provides:

  1. Target URL — the entry point for testing
  2. Scope — what areas/features to focus on (or "full site" for comprehensive testing)
  3. Output directory (optional) — where to save screenshots and the report (default: ./dogfood-output)

Workflow

Follow this 5-phase systematic workflow:

Phase 1: Plan

  1. Create the output directory structure:
    {output_dir}/
    ├── screenshots/       # Evidence screenshots
    └── report.md          # Final report (generated in Phase 5)
    
  2. Identify the testing scope based on user input.
  3. Build a rough sitemap by planning which pages and features to test:
    • Landing/home page
    • Navigation links (header, footer, sidebar)
    • Key user flows (sign up, login, search, checkout, etc.)
    • Forms and interactive elements
    • Edge cases (empty states, error pages, 404s)

Phase 2: Explore

For each page or feature in your plan:

  1. Navigate to the page:

    browser_navigate(url="https://example.com/page")
    
  2. Take a snapshot to understand the DOM structure:

    browser_snapshot()
    
  3. Check the console for JavaScript errors:

    browser_console(clear=true)
    

    Do this after every navigation and after every significant interaction. Silent JS errors are high-value findings.

  4. Take an annotated screenshot to visually assess the page and identify interactive elements:

    browser_vision(question="Describe the page layout, identify any visual issues, broken elements, or accessibility concerns", annotate=true)
    

    The annotate=true flag overlays numbered [N] labels on interactive elements. Each [N] maps to ref @eN for subsequent browser commands.

  5. Test interactive elements systematically:

    • Click buttons and links: browser_click(ref="@eN")
    • Fill forms: browser_type(ref="@eN", text="test input")
    • Test keyboard navigation: browser_press(key="Tab"), browser_press(key="Enter")
    • Scroll through content: browser_scroll(direction="down")
    • Test form validation with invalid inputs
    • Test empty submissions
  6. After each interaction, check for:

    • Console errors: browser_console()
    • Visual changes: browser_vision(question="What changed after the interaction?")
    • Expected vs actual behavior

Phase 3: Collect Evidence

For every issue found:

  1. Take a screenshot showing the issue:

    browser_vision(question="Capture and describe the issue visible on this page", annotate=false)
    

    Save the screenshot_path from the response — you will reference it in the report.

  2. Record the details:

    • URL where the issue occurs
    • Steps to reproduce
    • Expected behavior
    • Actual behavior
    • Console errors (if any)
    • Screenshot path
  3. Classify the issue using the issue taxonomy (see references/issue-taxonomy.md):

    • Severity: Critical / High / Medium / Low
    • Category: Functional / Visual / Accessibility / Console / UX / Content

Phase 4: Categorize

  1. Review all collected issues.
  2. De-duplicate — merge issues that are the same bug manifesting in different places.
  3. Assign final severity and category to each issue.
  4. Sort by severity (Critical first, then High, Medium, Low).
  5. Count issues by severity and category for the executive summary.

Phase 5: Report

Generate the final report using the template at templates/dogfood-report-template.md.

The report must include:

  1. Executive summary with total issue count, breakdown by severity, and testing scope
  2. Per-issue sections with:
    • Issue number and title
    • Severity and category badges
    • URL where observed
    • Description of the issue
    • Steps to reproduce
    • Expected vs actual behavior
    • Screenshot references (use MEDIA:<screenshot_path> for inline images)
    • Console errors if relevant
  3. Summary table of all issues
  4. Testing notes — what was tested, what was not, any blockers

Save the report to {output_dir}/report.md.

Tools Reference

Tool Purpose
browser_navigate Go to a URL
browser_snapshot Get DOM text snapshot (accessibility tree)
browser_click Click an element by ref (@eN) or text
browser_type Type into an input field
browser_scroll Scroll up/down on the page
browser_back Go back in browser history
browser_press Press a keyboard key
browser_vision Screenshot + AI analysis; use annotate=true for element labels
browser_console Get JS console output and errors

Tips

  • Always check browser_console() after navigating and after significant interactions. Silent JS errors are among the most valuable findings.
  • Use annotate=true with browser_vision when you need to reason about interactive element positions or when the snapshot refs are unclear.
  • Test with both valid and invalid inputs — form validation bugs are common.
  • Scroll through long pages — content below the fold may have rendering issues.
  • Test navigation flows — click through multi-step processes end-to-end.
  • Check responsive behavior by noting any layout issues visible in screenshots.
  • Don't forget edge cases: empty states, very long text, special characters, rapid clicking.
  • When reporting screenshots to the user, include MEDIA:<screenshot_path> so they can see the evidence inline.
Files3
3 files · 6.1 KB

Select a file to preview

Overall Score

87/100

Grade

A

Excellent

Safety

88

Quality

88

Clarity

87

Completeness

84

Summary

Dogfood is a systematic exploratory QA testing skill that guides an agent through structured web application testing using browser toolset commands. The agent navigates pages, interacts with elements, captures screenshots and console output, identifies bugs, and generates a detailed QA report organized by severity and category.

Detected Capabilities

browser navigation and page interactionscreenshot and DOM snapshot captureJavaScript console monitoringfile system write (output directory creation and report generation)markdown report generationelement annotation and interaction (click, type, scroll, keyboard navigation)

Trigger Keywords

Phrases that MCP clients use to match this skill to user intent.

test web applicationexploratory QAfind bugs systematicallyqa testing reportbrowser interaction testingform validation testingscreenshot evidencejs console errorsaccessibility auditresponsive design testing

Risk Signals

INFO

File system writes to user-specified output directory

Phase 1: Plan section
INFO

Browser navigation to arbitrary URLs provided by user

Phase 2: Explore, browser_navigate examples
INFO

Screenshot and media capture via browser_vision tool

Phase 3: Collect Evidence
INFO

Console output inspection and error logging

Phase 2: Explore step 3, Phase 3: Collect Evidence

Referenced Domains

External domains referenced in skill content, detected by static analysis.

example.com

Use Cases

  • Exploratory QA testing of new web application features to identify regressions and bugs before release
  • Comprehensive site audit to systematically map out issues across all pages and user flows
  • Testing form validation and error handling across multiple input scenarios
  • Identifying JavaScript console errors and network failures affecting user experience
  • Accessibility and responsive design validation with visual evidence collection
  • Generate structured bug reports with screenshots, reproduction steps, and severity classification for development teams

Quality Notes

  • Skill has excellent structure with five clearly defined phases (Plan, Explore, Collect Evidence, Categorize, Report)
  • Comprehensive 5-step workflow in Phase 2 covers systematic navigation, visual inspection, console monitoring, and interaction testing
  • Supporting files (issue-taxonomy.md, dogfood-report-template.md) provide complete taxonomy for classifying issues by severity and category
  • Detailed tips section covers critical testing practices (console checking, annotation, form validation, edge cases)
  • Tools reference table is complete and accurate
  • Well-defined inputs and prerequisites section sets clear expectations
  • Good balance between prescriptive guidance and flexibility (e.g., user-specified scope and output directory)
  • Template provides concrete structure for final report with example field placeholders
  • Scope is appropriately bounded to browser-based QA workflows only
Model: claude-haiku-4-5-20251001Analyzed: Jul 12, 2026

Reviews

Add this skill to your library to leave a review.

No reviews yet

Be the first to share your experience.

Use NousResearch/dogfood in your dev environment

Command Palette

Search for a command to run...