quality
Skill3 starsChanged 7 months agoMITView on GitHub
QA finalization gate — validates spec conformity, runs tests/build/lint, produces a structured QA report. Auto-dispatches the supervisor for rework on FAIL. Last gate before human merge.
12 other projects use a version of this.
Adopted by
Most recently taken up by
- ai-search-guru/getcito-worlds-first-open-source-aio-aeo-or-geo-tooltheir own version, first seen Nov 8, 2026
- menot-you/n-soultheir own version, first seen Nov 1, 2026
- ansvisor/ansvisortheir own version, first seen Nov 1, 2026
- DataWithBaraa/claude-code-data-engineering-skillstheir own version, first seen Nov 1, 2026
- tam159/next-roletheir own version, first seen Nov 1, 2026
- google-gemini/gemini-clitheir own version, first seen Oct 13, 2026
Used with
Projects with it also use analyze, report and 1 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
AnthropicSkillanalyze
Answer data questions -- from quick lookups to full analyses. Use when looking up a single metric, investigating what's driving a trend or drop, comparing segments over time, or preparing a formal data report for stakeholders.
Also in 3 projects that use this
MicrosoftSkillreport
Turn an exploration (threads, findings, charts) into a single Markdown report — note, blog post, executive summary, KPI dashboard, slide brief, or multi-section analytical report, with embedded charts.
Also in 3 projects that use this
AnthropicSkilldebug
Structured debugging session — reproduce, isolate, diagnose, and fix. Trigger with an error message or stack trace, "this works in staging but not prod", "something broke after the deploy", or when behavior diverges from expected and the cause isn't obvious.
Also in 4 projects that use this
Other versions12 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 12
- google-gemini/gemini-cli★ 109ksame name
- H-mmer/pentest-agents★ 815same name
- boostsecurityio/poutine★ 533same name
- ai-search-guru/getcito-worlds-first-open-source-aio-aeo-or-geo-tool★ 432same name
- ansvisor/ansvisor★ 233same name
- DataWithBaraa/claude-code-data-engineering-skills★ 84same name
- tam159/next-role★ 67same name
- ariaxhan/kernel-claude★ 15same name
- stevehansen/eidet★ 4same name
- GlamgarOnDiscord/claude-saas-blueprint★ 2same name
2 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository21 other files it gives its agents.
- skills/setup/templates/AGENTS.mdAGENTS.md
- skills/setup/templates/CLAUDE.mdCLAUDE.md
- add-supervisorSkill
- architectureSkill
- core-loopSkill
- doSkill
- implementationSkill
- investigateSkill
- manifestoSkill
- planSkill
- productSkill
- requirementsSkill
- researchSkill
- reviewSkill
- setupSkill
- specificationSkill
- specSkill
- subagents-disciplineSkill
- tasksSkill
- updateSkill
- workflowSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
24 rules. 0 are common, 15 are distinctive, and 9 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
15
Distinctive
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
If the user provides $ARGUMENTS, check if it contains a bead ID (e.g., bd-a3f, bd-001.2).
- Distinctive: line 16
If bead ID provided: use it directly.
- Very specific: line 19
Run bd list --label approved --json to get beads that passed code review
- Very specific: line 21
If no beads with approved label found, inform the user and stop
- Distinctive: line 22
Ask the user which task to QA </on-init>
- Very specific: line 27
REVIEW comment with APPROVE verdict must exist: Read bd comments {BEAD_ID}.
- Very specific: line 28
Implementation branch must exist: Check with git branch -a | grep {BEAD_ID}.
- Very specific: line 44
Read bead comments: bd comments {BEAD_ID}
- Distinctive: line 46
If spec references a Source PRD, note the path
- Distinctive: line 64
After the QA agent completes:
- Very specific: line 66
Read the QA comment: bd comments {BEAD_ID}
- Distinctive: line 72
Ask: "Do you want to close this bead?"
- Distinctive: line 74
If no: leave open for manual merge workflow
- Distinctive: line 78
Ask how to proceed:
- Distinctive: line 80
Follow-up: create new bead for gaps, merge as-is
- Distinctive: line 92
If rework: resolve branch instruction (continue existing or fresh)
- Very specific: line 124
If
parentis not empty: use it as {TARGET_EPIC_ID} - Distinctive: line 133
Only dispatch Fernando if MAJORs or MINORs exist: Use exactly these parameters — no more, no less:
- Distinctive: line 172
If PASS: brief summary of what was validated (conformity, tests, build, lint).
- Distinctive: line 173
If FAIL: for each BLOCKER/MAJOR, explain in natural language what failed, why it matters, and what needs to happen.
- Distinctive: line 174
Findings tracked: if Fernando created beads, list with plain-language descriptions.
- Distinctive: line 185
If PASS → close bead and merge
- Very specific: line 186
If FAIL + rework → supervisor dispatched (or user deferred to /do)
- Distinctive: line 187
If FAIL + follow-up → new bead created for gaps </on-next>
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Quality
Dispatch QA validation for a code-review-approved implementation. Last gate before merge.
<on-init>
If the user provides $ARGUMENTS, check if it contains a bead ID (e.g., `bd-a3f`, `bd-001.2`).If bead ID provided: use it directly.
If no bead ID provided:
- Run
bd list --label approved --jsonto get beads that passed code review - Present the list showing: ID, title, priority, and labels
- If no beads with
approvedlabel found, inform the user and stop - Ask the user which task to QA
</on-init>
<on-check>
1. **Bead must exist and have `approved` label.** Validate with `bd show {BEAD_ID} --json`.
2. **REVIEW comment with APPROVE verdict must exist.** Read `bd comments {BEAD_ID}`.
3. **Implementation branch must exist.** Check with `git branch -a | grep {BEAD_ID}`.
</on-check><on-check-fail if="bead">
Bead does not exist. Inform the user and stop.
</on-check-fail><on-check-fail if="approved">
This task hasn't passed code review yet. Recommend running `/review {BEAD_ID}` first.
</on-check-fail><on-execute>Step 1: Read Bead Context
- Parse bead JSON. Extract:
description,acceptance,design,notes,status,labels,parent - Read bead comments:
bd comments {BEAD_ID} - Locate the spec/design doc from the bead's
designfield or parent epic - If spec references a Source PRD, note the path
- Identify the implementation branch
Step 2: Dispatch QA Gate
Dispatch using exactly these parameters — no more, no less:
Agent(
subagent_type="qa-gate",
prompt="QA validate BEAD {BEAD_ID} on branch {branch-name}. Spec: {spec_path}. PRD: {prd_path}. Read the bead (bd show {BEAD_ID}) and comments (bd comments {BEAD_ID}) for full context — description, acceptance criteria, design notes, COMPLETED, DECISION, DEVIATION, and REVIEW comments. Run tests, build, and lint. Log a structured QA comment to the bead."
)Do NOT add extra parameters unless the user explicitly requests it.
Step 3: Present QA Results
After the QA agent completes:
- Read the QA comment:
bd comments {BEAD_ID} - Extract verdict:
PASSorFAIL - Present the QA summary
If PASS:
- Update labels:
bd label add {BEAD_ID} qa-passed - Ask: "Do you want to close this bead?"
- If yes:
bd close {BEAD_ID} - If no: leave open for manual merge workflow
- If yes:
If FAIL:
- Present specific failure reasons
- Ask how to proceed:
- Rework: address gaps — auto-dispatches supervisor
- Follow-up: create new bead for gaps, merge as-is
- Override: merge anyway — user's decision
- Update labels:
# If rework: bd label remove {BEAD_ID} approved bd label add {BEAD_ID} needs-rework bd update {BEAD_ID} --status in_progress # If follow-up or override: bd label add {BEAD_ID} qa-override - If rework: resolve branch instruction (continue existing or fresh)
Step 4: Track QA Findings
Extract actionable findings from the QA comment and apply the severity threshold policy:
| Severity | Action |
| BLOCKER | Addressed by rework (same bead) — never tracked separately |
| MAJOR | Individual bead — justifies its own pipeline |
| MINOR | Batched into a single "QA cleanup" bead per epic |
| EXTRA | Comment on the epic — deferred backlog, not a bead |
| RISK | Comment on the epic — deferred backlog, not a bead |
Filtering rules:
- PASS: track MAJORs as individual beads, batch MINORs into one bead, log EXTRA/RISK as epic comments
- FAIL + rework: BLOCKER/MAJOR addressed by rework; batch MINORs, log EXTRA/RISK as comments
- FAIL + follow-up/override: same as PASS policy
- If no MAJORs or MINORs exist: log EXTRA/RISK as epic comments only — do NOT dispatch Fernando for bead creation
- Findings beads (bead has any
finding:*label): the QA verdict (PASS / FAIL) and rework cycle operate normally — BLOCKERs and MAJORs are still fixed via rework on the same bead. However, Step 4 tracking is skipped: MINORs found during QA of a findings bead are reported in the QA comment for transparency but do NOT generate new beads. This breaks the recursive cycle where findings create findings indefinitely.
Log EXTRA/RISK as epic comments (deferred backlog — not beads):
bd comments add {TARGET_EPIC_ID} "DEFERRED from QA of {BEAD_ID}:
- [EXTRA] {description}
- [RISK] {description}"Resolve the target epic — findings go to the parent epic:
bd show {BEAD_ID} --json | python3 -c "import json,sys; d=json.load(sys.stdin); print(d[0].get('parent',''))"- If
parentis not empty: use it as{TARGET_EPIC_ID} - ONLY if
parentis empty: fall back to a "Review Findings" epic
Before dispatching Fernando, check what findings were already tracked from the review gate:
bd list --parent {TARGET_EPIC_ID} --json | python3 -c "import json,sys; issues=json.load(sys.stdin); tracked=[i for i in issues if any('discovered-from:{BEAD_ID}' in str(d) for d in i.get('deps',[]))]; print('\n'.join(f\"{i['id']}: {i['title']}\" for i in tracked))"Include this list in Fernando's dispatch prompt so he can deduplicate across gates.
Only dispatch Fernando if MAJORs or MINORs exist. Use exactly these parameters — no more, no less:
Agent(
subagent_type="beads-owner",
prompt="Create beads issues for the following QA findings from BEAD {BEAD_ID} QA validation. IMPORTANT: Each issue MUST use --parent {TARGET_EPIC_ID} flag to place it inside the epic, and --deps 'discovered-from:{BEAD_ID}' to link back to the validated task. Do NOT use 'bd dep add' to link tasks to epics — only --parent does that. Use label 'finding:{type}' (lowercase) for each. Include relevant context from QA report. BATCHING RULE: Create individual beads for MAJOR findings only. Batch ALL MINOR findings into a single bead titled 'QA cleanup: {BEAD_ID}' with each item as a checklist in the description. Do NOT create beads for EXTRA or RISK — those are already logged as epic comments. DEDUP CONTEXT: The following findings were already tracked from the review gate — deduplicate against them before creating new issues:\n{EXISTING_REVIEW_FINDINGS}\n\nFindings:\n\n{FINDINGS_LIST}"
)Do NOT add extra parameters unless the user explicitly requests it.
Step 5: Auto-Dispatch Supervisor (FAIL + rework only)
Skip when verdict is PASS, or user chose follow-up/override.
- Resolve supervisor from
assigneefield (same as/doStep 2) - Confirm before dispatch:
Ready to dispatch {resolved-supervisor} for QA rework of {BEAD_ID}: "{bead title}" Branch: {REWORK_BRANCH_INSTRUCTION summary} Failures to address: {N} BLOCKER + {M} MAJOR Proceed? [y/n] - If confirmed, dispatch using exactly these parameters — no more, no less:
Do NOT add extra parameters unless the user explicitly requests it.Agent( subagent_type="{resolved-supervisor}", prompt="QA rework for BEAD {BEAD_ID}. {REWORK_BRANCH_INSTRUCTION} Read the bead (bd show {BEAD_ID}) and comments (bd comments {BEAD_ID}) for full context. The latest QA comment contains BLOCKER and MAJOR failures that MUST be addressed — MINOR, EXTRA, RISK findings have been tracked as separate issues. After addressing failures, log a COMPLETED comment summarizing what was fixed." ) - If declined: inform "Run
/do {BEAD_ID}when ready." and stop.
</on-execute><on-complete>
Present the result following the **Presenting to the User** guidelines:- Headline: verdict in plain language — "QA passed — all checks green, ready to merge" or "QA found {N} issues: {brief summary}"
- What was found:
- If PASS: brief summary of what was validated (conformity, tests, build, lint). Highlight any EXTRA or RISK items logged as deferred backlog.
- If FAIL: for each BLOCKER/MAJOR, explain in natural language what failed, why it matters, and what needs to happen. Use a ASCII diagram if failures involve multi-component interactions.
- Findings tracked: if Fernando created beads, list with plain-language descriptions. If EXTRA/RISK items were logged to the epic, mention them.
- Repercussions: what breaks if FAIL findings aren't addressed
- Next step: close and merge (PASS) or confirm rework dispatch (FAIL)
- Technical details: raw QA comment, test/build/lint output, and conformity details in a
<details>block</on-complete>
<on-complete if="verdict=PASS">
Inform: "QA passed. All checks green. Ready for merge."
</on-complete><on-next>
- If PASS → close bead and merge
- If FAIL + rework → supervisor dispatched (or user deferred to `/do`)
- If FAIL + follow-up → new bead created for gaps
</on-next>Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

