api-and-interface-desi…
Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints,…
Exploratory QA of web apps: find bugs, evidence, reports.
$ npx -y skills add kevinnft/ai-agent-skills --skill dogfood --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/dogfoodContext preview
The summary Claude sees to decide when to auto-load this skill.
Exploratory QA of web apps: find bugs, evidence, reports.
name: dogfood
description: "Exploratory QA of web apps: find bugs, evidence, reports."
version: 1.0.0
metadata:
hermes:
tags: [qa, testing, browser, web, dogfood]
related_skills: []
origin: aggregated
source_license: MIT
source_repo: NousResearch/hermes-agent
source_url: https://github.com/NousResearch/hermes-agent/tree/main/skills/dogfood
language: enThis 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.
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`)
Follow this 5-phase systematic workflow:
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:
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:
6. **After each interaction**, check for:
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**:
3. **Classify the issue** using the issue taxonomy (see `references/issue-taxonomy.md`):
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.
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:
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`.
| 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 |
191 attribution-first agent skills for Hermes Agent, Claude Code, Cursor — one installer, 28 categories, searchable catalog. See NOTICE for upstream attribution.
Repo: kevinnft/ai-agent-skills
Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints,…
Tests in real browsers. Use when building or debugging anything that runs in a browser. Use when you need to inspect the DOM, capture console errors, analyze…
Automates CI/CD pipeline setup. Use when setting up or modifying build and deployment pipelines. Use when you need to automate quality gates, configure test…
Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to…
Simplifies code for clarity. Use when refactoring code for clarity without changing behavior. Use when code works but is harder to read, maintain, or extend…
Optimizes agent context setup. Use when starting a new session, when agent output quality degrades, when switching between tasks, or when you need to configure…