bug-report
GitHub将模糊的故障描述转化为结构化、可复现的缺陷报告。通过精确标题、复现步骤、预期与实际结果对比及环境信息,辅助开发者快速定位修复问题,减少沟通成本。
Trigger Scenarios
Install
npx skills add mohitagw15856/pm-claude-skills --skill bug-report -g -y
SKILL.md
Frontmatter
{
"name": "bug-report",
"description": "Write a clear, reproducible bug report that gets fixed fast. Use when asked to write a bug report, file a defect, report an issue, or turn 'it's broken' into an actionable ticket. Produces a structured report — a precise title, steps to reproduce, expected vs. actual, environment, severity\/priority, and evidence — so a developer can reproduce and fix it without a back-and-forth."
}
Bug Report Skill
A bug report is only useful if someone else can reproduce it. The best ones are precise: an exact title, numbered steps, what you expected vs. what happened, and the environment it happened in. This skill turns a vague "it's broken" into a ticket a developer can act on immediately — no clarifying round-trips.
Working from a brief
Given "the export button doesn't work", write the full report anyway — infer the likely repro steps, expected behaviour, and environment, marking inferences (confirm). Keep facts (what was observed) separate from guesses (likely cause). Never invent logs/errors; flag them to attach.
Required Inputs
Ask for these only if they aren't already provided (else infer and label):
- What's wrong — what you did, what happened, and what you expected instead.
- Steps to reproduce — the exact sequence (and whether it's consistent or intermittent).
- Environment — device, OS, browser/app version, account/role, and any relevant data state.
- Evidence — screenshots, a screen recording, console/network errors, logs, request IDs.
Output Format
Bug Report
- Title — a precise one-liner: what's broken + where + the key condition ("Export to CSV fails for >1,000 rows on Safari").
- Severity / Priority — impact (blocker/critical/major/minor) and how widespread, kept distinct from urgency.
- Environment — device/OS/browser+version, app/build version, account/role, region/data as relevant.
- Steps to reproduce — numbered, exact, starting from a known state; note frequency (always / ~X% / once).
- Expected result — what should happen.
- Actual result — what actually happens (the observable failure — error text, wrong value, crash).
- Evidence — screenshots/recording, console & network errors, logs, request/correlation IDs (listed/attached).
- Notes (optional) — a workaround, when it started/regressed, and any suspected cause clearly marked as a hypothesis, not fact.
Quality Checks
- The title is specific enough to identify the bug at a glance
- Steps reproduce from a known starting state and note frequency (consistent vs. intermittent)
- Expected vs. actual are both explicit and the actual is the observable failure
- Environment (versions, role, data) is captured — the usual reason a bug "can't be reproduced"
- Severity (impact) is separated from priority (urgency)
- Observed facts are kept separate from suspected cause; evidence is referenced
Anti-Patterns
- Do not write "doesn't work" — state the exact action, expectation, and observed failure
- Do not omit environment/version — it's the top reason bugs aren't reproducible
- Do not merge expected and actual into one sentence — keep them distinct
- Do not present a guessed cause as fact — label hypotheses
- Do not bundle several bugs in one report — one defect per ticket
Based On
Defect-reporting practice — reproducibility-first reports with precise titles, expected/actual separation, environment capture, and impact/urgency distinction.
Version History
- a38bc30 Current 2026-07-05 11:25


