Creates a structured bug report from a description, or analyzes code to identify potential bugs. Ensures every bug report has full reproduction steps, severity assessment, and context.
63
76%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.claude/skills/bug-report/SKILL.mdDetermine the mode from the argument:
analyze [path] → Analyze Mode: read the target file(s) and identify potential bugsverify [BUG-ID] → Verify Mode: confirm a reported fix actually resolved the bugclose [BUG-ID] → Close Mode: mark a verified bug as closed with resolution recordIf no argument is provided, ask the user for a bug description before proceeding.
Parse the description for key information: what broke, when, how to reproduce it, and what the expected behavior is.
Search the codebase for related files using Grep/Glob to add context (affected system, likely files).
Draft the bug report:
# Bug Report
## Summary
**Title**: [Concise, descriptive title]
**ID**: BUG-[NNNN]
**Severity**: [S1-Critical / S2-Major / S3-Minor / S4-Trivial]
**Priority**: [P1-Immediate / P2-Next Sprint / P3-Backlog / P4-Wishlist]
**Status**: Open
**Reported**: [Date]
**Reporter**: [Name]
## Classification
- **Category**: [Gameplay / UI / Audio / Visual / Performance / Crash / Network]
- **System**: [Which game system is affected]
- **Frequency**: [Always / Often (>50%) / Sometimes (10-50%) / Rare (<10%)]
- **Regression**: [Yes/No/Unknown -- was this working before?]
## Environment
- **Build**: [Version or commit hash]
- **Platform**: [OS, hardware if relevant]
- **Scene/Level**: [Where in the game]
- **Game State**: [Relevant state -- inventory, quest progress, etc.]
## Reproduction Steps
**Preconditions**: [Required state before starting]
1. [Exact step 1]
2. [Exact step 2]
3. [Exact step 3]
**Expected Result**: [What should happen]
**Actual Result**: [What actually happens]
## Technical Context
- **Likely affected files**: [List of files based on codebase search]
- **Related systems**: [What other systems might be involved]
- **Possible root cause**: [If identifiable from the description]
## Evidence
- **Logs**: [Relevant log output if available]
- **Visual**: [Description of visual evidence]
## Related Issues
- [Links to related bugs or design documents]
## Notes
[Any additional context or observations]Read the target file(s) specified in the argument.
Identify potential bugs: null references, off-by-one errors, race conditions, unhandled edge cases, resource leaks, incorrect state transitions.
For each potential bug, generate a bug report using the template above, with the likely trigger scenario and recommended fix filled in.
Read production/qa/bugs/[BUG-ID].md. Extract the reproduction steps and expected result.
tests/, run it via Bash and report pass/fail.Produce a verification verdict:
Ask: "May I update production/qa/bugs/[BUG-ID].md to set Status: Verified Fixed / Still Present / Cannot Verify?"
If STILL PRESENT: reopen the bug, set Status back to Open, and suggest re-running /hotfix [BUG-ID].
Read production/qa/bugs/[BUG-ID].md. Confirm Status is Verified Fixed before closing. If status is anything else, stop: "Bug [ID] must be Verified Fixed before it can be closed. Run /bug-report verify [BUG-ID] first."
Append a closure record to the bug file:
## Closure Record
**Closed**: [date]
**Resolution**: Fixed — [one-line description of what was changed]
**Fix commit / PR**: [if known]
**Verified by**: qa-tester
**Closed by**: [user]
**Regression test**: [test file path, or "Manual verification"]
**Status**: ClosedUpdate the top-level **Status**: Open field to **Status**: Closed.
Ask: "May I update production/qa/bugs/[BUG-ID].md to mark it Closed?"
After closing, check production/qa/bug-triage-*.md — if the bug appears in an open triage report, note: "Bug [ID] is referenced in the triage report. Run /bug-triage to refresh the open bug count."
Present the completed bug report(s) to the user.
Ask: "May I write this to production/qa/bugs/BUG-[NNNN].md?"
If yes, write the file, creating the directory if needed. Verdict: COMPLETE — bug report filed.
If no, stop here. Verdict: BLOCKED — user declined write.
After saving, suggest based on mode:
After filing (Description/Analyze mode):
/bug-triage to prioritize alongside existing open bugs/hotfix [BUG-ID] for emergency fix workflowAfter fixing the bug (developer confirms fix is in):
/bug-report verify [BUG-ID] — confirm the fix actually works before closingAfter verify returns VERIFIED FIXED:
/bug-report close [BUG-ID] — write the closure record and update status/bug-triage to refresh the open bug count and remove it from the active list984023d
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.