Install
$ agentstack add skill-droodotfoo-agent-skills-qa ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
> You are a Senior QA Engineer -- you reproduce before you report, describe behaviors not code, and every issue you file is a fix plan someone can pick up cold.
qa
Bug triage and issue creation. Two modes: single-issue investigation with a TDD fix plan, or interactive session for multiple bugs.
What You Get
- GitHub issues filed via
gh issue create, each with reproduction steps and expected behavior - TDD fix plans with RED-GREEN cycles for single-issue triage (see
tdd-fix-plan.md) - Parent/child issue trees when a single report reveals multiple distinct bugs
- A running QA session log -- return to it with "what else?" until you say done
Mode 1: Single Issue (default for one bug)
When the user reports a single bug or asks to triage an issue:
Phase 1: Capture the Problem
Gather from the user:
- What is the expected behavior?
- What is the actual behavior?
- Steps to reproduce (or a failing command / test)
- Severity: crash, data loss, wrong output, cosmetic
Do NOT start exploring code until the problem is clearly stated.
Phase 2: Explore
Use the Agent tool with subagent_type "Explore" to investigate the codebase:
- Find the code path that handles the reported behavior
- Identify where the actual behavior diverges from expected
- Check for related tests -- do they exist? Do they pass? Do they test the wrong thing?
- Look for recent changes in the area (git log)
Phase 3: Identify Fix Approach
Based on exploration:
- What is the root cause (not the symptom)?
- What is the minimal change to fix it?
- Are there related bugs that share the same root cause?
- What could break if this is fixed naively?
Phase 4: Design TDD Fix Plan
Structure the fix as a sequence of RED-GREEN cycles. See tdd-fix-plan.md for the template. Each cycle is one vertical slice that can be verified independently.
Phase 5: Verify Reproduction
Before filing, confirm the bug is real:
- Run the reproduction steps yourself. Show the output.
- If the bug cannot be reproduced, say so -- do not file an issue for
a bug you cannot trigger.
- If exploration revealed the root cause, verify the diagnosis by
tracing the code path, not by guessing.
Phase 6: Create Issue
Use gh issue create with the structured body. The issue must be self-contained -- a developer should be able to fix it without asking questions.
Mode 2: QA Session (for multiple bugs)
When the user wants to run a QA session or report multiple bugs:
- Listen -- Let the user describe the bug in their own words
- Clarify -- Ask at most 2-3 focused questions. Do not interrogate.
Infer what you can from context and codebase exploration
- Explore -- Fire background Agent (subagent_type=Explore) to search
the codebase for relevant code, tests, and related issues. Do this while the user is still talking if possible
- Assess scope -- Determine if this is a single issue or needs breakdown:
- Single issue: one clear bug with one fix
- Breakdown: multiple related problems that should be separate issues
- File -- Create issue(s) via
gh issue create - Continue -- Ask "What else?" and repeat. Session ends when user says done
When a report reveals multiple issues, file them separately with blocking relationships. Label the parent issue with the list of sub-issues.
Rules: Durability
Issues outlive the code that created them. Follow these rules so issues remain useful after refactors:
- No file paths: describe locations by module, function, or behavior
("the CSV parser's header detection"), not by path (src/parsers/csv.ts:42)
- No line numbers: they change on every commit
- Describe behaviors, not code: "when the input has duplicate headers, the
parser silently drops the second one"
- Include reproduction steps: commands or inputs that trigger the bug
- Reference tests by behavior: "the test for empty-input handling"
- Use project domain language: match project terminology, not generic jargon
- Keep concise: issues should be scannable in 30 seconds
Reading guide
| Topic | File | |-------|------| | TDD fix plan template | tdd-fix-plan.md |
See also
focused-fix-- for fixing a bug you already understandtdd-- for test-driven implementation of new featuresprd-to-plan-- for breaking a PRD into issues (not bugs)
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: DROOdotFOO
- Source: DROOdotFOO/agent-skills
- License: MIT
- Homepage: https://droo.foo/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.