Install Dogfood
Pick your agent. Every command is ready to paste.
npx skills add callstackincubator/agent-skills --skill dogfoodThe open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads dogfood when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the dogfood skill”. In Codex, type $dogfood.
The skill itself
SKILL.md
Dogfood (agent-device)
Systematically explore a mobile app, find issues, and produce a report with full reproduction evidence for every finding.
Setup
Only the Target app is required. Everything else has sensible defaults.
| Parameter | Default | Example override |
|---|---|---|
| Target app | (required) | Settings, com.example.app, deep link URL |
| Platform | Infer from user context; otherwise ask (ios or android) |
--platform ios |
| Session name | Slugified app/platform (for example settings-ios) |
--session my-session |
| Output directory | ./dogfood-output/ |
Output directory: /tmp/mobile-qa |
| Scope | Full app | Focus on onboarding and profile |
| Authentication | None | Sign in to user@example.com |
If the user gives enough context to start, begin immediately with defaults. Ask follow-up only when a required detail is missing (for example platform or credentials).
Prefer direct agent-device binary when available.
Workflow
1. Initialize Set up session, output dirs, report file
2. Launch/Auth Open app and sign in if needed
3. Orient Capture initial snapshot and map navigation
4. Explore Systematically test flows and states
5. Document Record reproducible evidence per issue
6. Wrap up Reconcile summary, close session
1. Initialize
mkdir -p {OUTPUT_DIR}/screenshots {OUTPUT_DIR}/videos
cp {SKILL_DIR}/templates/dogfood-report-template.md {OUTPUT_DIR}/report.md
2. Launch/Auth
Start a named session and launch target app:
agent-device --session {SESSION} open {TARGET_APP} --platform {PLATFORM}
agent-device --session {SESSION} snapshot -i
If login is required:
agent-device --session {SESSION} snapshot -i
agent-device --session {SESSION} fill @e1 "{EMAIL}"
agent-device --session {SESSION} fill @e2 "{PASSWORD}"
agent-device --session {SESSION} press @e3
agent-device --session {SESSION} wait 1000
agent-device --session {SESSION} snapshot -i
For OTP/email codes: ask the user, wait for input, then continue.
3. Orient
Capture initial evidence and navigation anchors:
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/initial.png
agent-device --session {SESSION} snapshot -i
Map top-level navigation, tabs, and key workflows before deep testing.
4. Explore
Read references/issue-taxonomy.md for severity/category calibration.
Strategy:
- Move through each major app area (tabs, drawers, settings pages).
- Test core journeys end-to-end (create, edit, delete, submit, recover).
- Validate edge states (empty/error/loading/offline/permissions denied).
- Use
diff snapshot -iafter UI transitions to avoid stale refs. - Periodically capture
logs pathand inspect the app log when behavior looks suspicious.
Useful commands per screen:
agent-device --session {SESSION} snapshot -i
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/{screen-name}.png
agent-device --session {SESSION} appstate
agent-device --session {SESSION} logs path
5. Document Issues (Repro-First)
Explore and document in one pass. When you find an issue, stop and fully capture evidence before continuing.
Interactive/behavioral issues
Use video + step screenshots:
- Start recording:
agent-device --session {SESSION} record start {OUTPUT_DIR}/videos/issue-{NNN}-repro.mp4
- Reproduce with visible pacing. Capture each step:
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/issue-{NNN}-step-1.png
sleep 1
# perform action
sleep 1
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/issue-{NNN}-step-2.png
- Capture final broken state:
sleep 2
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/issue-{NNN}-result.png
- Stop recording:
agent-device --session {SESSION} record stop
- Append issue immediately to report with numbered steps and screenshot references.
Static/on-load issues
Single screenshot is sufficient; no video required:
agent-device --session {SESSION} screenshot {OUTPUT_DIR}/screenshots/issue-{NNN}.png
Set Repro Video to N/A in the report.
6. Wrap Up
Target 5-10 well-evidenced issues, then finish:
- Reconcile summary severity counts in
report.md. - Close session:
agent-device --session {SESSION} close
- Report total issues, severity breakdown, and highest-risk findings.
Guidance
- Repro quality matters more than issue count.
- Use refs (
@eN) for fast exploration, selectors for deterministic replay assertions when needed. - Re-snapshot after any mutation (navigation, modal, list update, form submit).
- Use
fillfor clear-then-type semantics; usetypefor incremental typing behavior checks. - Keep logs optional and targeted: enable/read app logs only when useful for diagnosis.
- Never read source code of the app under test; findings must come from observed runtime behavior.
- Write each issue immediately to avoid losing evidence.
- Never delete screenshots/videos/report artifacts during a session.
References
| Reference | When to Read |
|---|---|
| references/issue-taxonomy.md | Start of session; severity/categories/checklist |
Templates
| Template | Purpose |
|---|---|
| templates/dogfood-report-template.md | Copy into output directory as the report file |
Tips for Dogfood
- • Start a fresh session after installing so your agent picks up the new skill.
- • It bundles reference files. The agent reads them only when needed, so they cost no context until then.
- • It is part of a pack with 13 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Dogfood
What does the Dogfood skill do?
Systematically explore and test a mobile app on iOS/Android with agent-device to find bugs, UX issues, and other problems. Use when asked to "dogfood", "QA", "exploratory test", "find issues", "bug hunt", or "test this app" on mobile. Produces a structured report with reproducible evidence: screenshots, optional repro videos, and detailed steps for every issue.
How do I install Dogfood?
Run "npx skills add callstackincubator/agent-skills --skill dogfood" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Dogfood work in Cursor and Codex?
Yes. Dogfood uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
Is Dogfood free?
Dogfood is open source on GitHub under the MIT license. It is free to install; check the license before commercial use.
Who made Dogfood?
Dogfood is published by Callstack in the callstackincubator/agent-skills repository, together with 12 other skills.





