agentleFS
lilangMaxlilangMax/ClaudeCodeGameStudios/.claude/skills/bug-report/SKILL.md

bug-report

Skill8 starsChanged 7 months agoMITView on GitHub

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.

We split this skill into the rules it gives an agent

19 rules. 0 are common, 6 are distinctive, and 13 are very specific to this project.

  • 0

    Common

    Most of the 27 edited versions we read keep these.

  • 6

    Distinctive

    This author's own choices. Worth a look.

  • 13

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    No keyword → Description Mode: generate a structured bug report from the provided description

    line 13
  2. Distinctive:

    If no argument is provided, ask the user for a bug description before proceeding.

    line 18
  3. Very specific:

    Read production/qa/bugs/[BUG-ID].md.

    line 94
  4. Very specific:

    Ask: "May I update production/qa/bugs/[BUG-ID].md to set Status: Verified Fixed / Still Present / Cannot Verify?"

    line 106
  5. Very specific:

    If STILL PRESENT: reopen the bug, set Status back to Open, and suggest re-running /hotfix [BUG-ID].

    line 108
  6. Very specific:

    Read production/qa/bugs/[BUG-ID].md.

    line 114
  7. Very specific:

    Update the top-level Status: Open field to Status: Closed.

    line 129
  8. Very specific:

    Ask: "May I update production/qa/bugs/[BUG-ID].md to mark it Closed?"

    line 131
  9. Very specific:

    After closing, check production/qa/bug-triage-*.md — if the bug appears in an open triage report, note: "Bug [ID] is referenced in the …

    line 133
  10. Very specific:

    Ask: "May I write this to production/qa/bugs/BUG-[NNNN].md?"

    line 141
  11. Distinctive:

    If yes, write the file, creating the directory if needed.

    line 143
  12. Distinctive:

    If no, stop here. Verdict: BLOCKED — user declined write.

    line 145
  13. Distinctive:

    After saving, suggest based on mode:

    line 151
  14. Very specific:

    Run /bug-triage to prioritize alongside existing open bugs

    line 154
  15. Very specific:

    If S1 or S2: run /hotfix [BUG-ID] for emergency fix workflow

    line 155
  16. Very specific:

    Run /bug-report verify [BUG-ID] — confirm the fix actually works before closing

    line 158
  17. Distinctive:

    Never mark a bug closed without verification — a fix that doesn't verify is still Open

    line 159
  18. Very specific:

    Run /bug-report close [BUG-ID] — write the closure record and update status

    line 162
  19. Very specific:

    Run /bug-triage to refresh the open bug count and remove it from the active list

    line 163

“Common” is measured: kept by at least 6 in 10 of the 27 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Phase 1: Parse Arguments

Determine the mode from the argument:

  • No keyword → Description Mode: generate a structured bug report from the provided description
  • analyze [path] → Analyze Mode: read the target file(s) and identify potential bugs
  • verify [BUG-ID] → Verify Mode: confirm a reported fix actually resolved the bug
  • close [BUG-ID] → Close Mode: mark a verified bug as closed with resolution record

If no argument is provided, ask the user for a bug description before proceeding.


Phase 2A: Description Mode

  1. Parse the description for key information: what broke, when, how to reproduce it, and what the expected behavior is.
  2. Search the codebase for related files using Grep/Glob to add context (affected system, likely files).
  3. 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]

Phase 2B: Analyze Mode

  1. Read the target file(s) specified in the argument.
  2. Identify potential bugs: null references, off-by-one errors, race conditions, unhandled edge cases, resource leaks, incorrect state transitions.
  3. For each potential bug, generate a bug report using the template above, with the likely trigger scenario and recommended fix filled in.

Phase 2C: Verify Mode

Read production/qa/bugs/[BUG-ID].md. Extract the reproduction steps and expected result.

  1. Re-run reproduction steps — use Grep/Glob to check whether the root cause code path still exists as described. If the fix removed or changed it, note the change.
  2. Run the related test — if the bug's system has a test file in tests/, run it via Bash and report pass/fail.
  3. Check for regression — grep the codebase for any new occurrence of the pattern that caused the bug.

Produce a verification verdict:

  • VERIFIED FIXED — reproduction steps no longer produce the bug; related tests pass
  • STILL PRESENT — bug reproduces as described; fix did not resolve the issue
  • CANNOT VERIFY — automated checks inconclusive; manual playtest required

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].


Phase 2D: Close Mode

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**: Closed

Update 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."


Phase 3: Save Report

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.


Phase 4: Next Steps

After saving, suggest based on mode:

After filing (Description/Analyze mode):

  • Run /bug-triage to prioritize alongside existing open bugs
  • If S1 or S2: run /hotfix [BUG-ID] for emergency fix workflow

After fixing the bug (developer confirms fix is in):

  • Run /bug-report verify [BUG-ID] — confirm the fix actually works before closing
  • Never mark a bug closed without verification — a fix that doesn't verify is still Open

After verify returns VERIFIED FIXED:

  • Run /bug-report close [BUG-ID] — write the closure record and update status
  • Run /bug-triage to refresh the open bug count and remove it from the active list

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

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.