Structured Bug Reports
Donchitos/Claude-Code-Game-Studios
Turns a description into a structured bug report, or scans code for likely bugs, then verifies and closes reports through four modes.
Agent-only procedure for diagnosing reported bugs. An agent skill from kunchenguid/firstmate.
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kunchenguid/firstmate diagnostic-reasoning --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .claude/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .claude/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoningType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kunchenguid/firstmate diagnostic-reasoning --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .agents/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .agents/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kunchenguid/firstmate diagnostic-reasoning --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .cursor/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .cursor/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/kunchenguid/firstmate.git --path .agents/skills/diagnostic-reasoning--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kunchenguid/firstmate diagnostic-reasoning --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .gemini/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .gemini/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install kunchenguid/firstmate diagnostic-reasoningInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .github/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .github/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kunchenguid/firstmate diagnostic-reasoning --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kunchenguid/firstmate.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/diagnostic-reasoning .opencode/skills/diagnostic-reasoning && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "diagnostic-reasoning" agent skill from https://github.com/kunchenguid/firstmate/tree/main/.agents/skills/diagnostic-reasoning into .opencode/skills/diagnostic-reasoning/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "diagnostic-reasoning", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
diagnostic-reasoningAgent-only procedure for diagnosing reported bugs. An agent skill from kunchenguid/firstmate.
Diagnostic Reasoning is an agent skill from kunchenguid/firstmate. Agent-only procedure for diagnosing reported bugs. Use before scoping a reported bug and before acting on a diagnostic report. Owns end-user-aligned reproduction, causal separation, divergent-path and history inspection, counterfactual testing, and disconfirming evidence.
Its SKILL.md is about 960 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Talk to one agent. Ship with a crew. The licence is MIT.
Read from SKILL.md and the folder at commit 19fcbbd. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Diagnostic Reasoning loads about 963 tokens when it runs. Until then it costs about 73 tokens; SKILL.md has 490 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from kunchenguid/firstmate at commit 19fcbbd, republished under its MIT licence (© kunchenguid). 490 words, ~963 tokens.
.claude/skills/diagnostic-reasoning/SKILL.md (or your agent's skills folder).Use this procedure before scoping a reported bug and before acting on a diagnostic report. This skill is the single owner of Firstmate's bug-diagnosis reasoning procedure. Firstmate applies it when briefing delegated investigation and evaluating the resulting evidence, without taking over project-specific investigation itself.
Start from the end user's experience rather than an internal error string or an implementation hypothesis. Require an end-to-end reproduction aligned with the real user path whenever it is feasible and safe. If a faithful reproduction is not feasible, record the exact limitation and use the closest representative path without presenting it as equivalent evidence. Capture the expected behavior, observed behavior, setup, inputs, and repeatability before assigning a cause.
Separate these three facts explicitly:
Do not collapse those facts into one label. A masking condition may explain why a fault appears only sometimes without being the initiating cause, and the visible symptom may be several layers downstream from both.
Inspect the failing path and a proven path where the intended behavior is known to work. Compare their inputs, state transitions, dependencies, timing, and control flow to find the earliest meaningful divergence. Inspect relevant history, including blame, commits, migrations, and prior implementations, when it can explain why the paths diverged or which invariant was intended. Do not treat the most recent nearby change as causal without evidence.
Identify the smallest counterfactual that should change the outcome if the leading explanation is true. Change one condition at a time where practical, and record whether the symptom appears, disappears, or remains unchanged. Seek disconfirming evidence deliberately: name what observation would falsify the leading explanation, run that check when feasible, and retain contradictory results instead of explaining them away. Compare the final explanation against the proven path and show why the proposed causal boundary accounts for both the failure and the success.
A diagnosis brief should ask for the reproduction, trigger/mask/symptom separation, divergent and proven path comparison, relevant history, smallest counterfactual, and disconfirming evidence in the report. A diagnostic report should distinguish observed facts from hypotheses and state any unresolved uncertainty that could change the recommended scope. Before acting on the report, verify that its claimed cause explains the end-user reproduction and the proven path without relying on an untested masking condition. If a load-bearing element is missing, route a focused follow-up investigation instead of treating confidence or implementation detail as proof. A diagnosis or implementation-ready recommendation is evidence, not authorization to change code. Implementation still requires the captain's request or another existing lifecycle authority, and the reproduction should become the regression test when a fix is authorized.
© kunchenguid, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/diagnostic-reasoning of kunchenguid/firstmate.
Open the folder on GitHubat commit 19fcbbd
Diagnostic Reasoning next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Diagnostic Reasoning this skillkunchenguid/firstmate | 7.7k | — | ~963 | Automated safety check: Pass | MIT | |
| Structured Bug ReportsDonchitos/Claude-Code-Game-Studios | 26k | — | ~2.5k | Automated safety check: Notes | MIT | |
| Creating Oracle To Postgres Migration Bug Reportgithub/awesome-copilot | 40k | 1 repos | ~616 | Automated safety check: Pass | MIT | |
| LazyCodex Bug Reportercode-yeongyu/oh-my-openagent | 70k | — | ~3k | Automated safety check: Pass | Custom licence | |
| Report Writingsickn33/agentic-awesome-skills | 47k | 1 repos | ~3.2k | Automated safety check: Pass | MIT | |
| Reportmicrosoft/data-formulator | 18k | — | ~1.5k | Automated safety check: Pass | MIT |
Donchitos/Claude-Code-Game-Studios
Turns a description into a structured bug report, or scans code for likely bugs, then verifies and closes reports through four modes.
github/awesome-copilot
Creates structured bug reports for defects found during Oracle-to-PostgreSQL migration.
code-yeongyu/oh-my-openagent
Investigates a LazyCodex or Codex CLI defect, decides which GitHub repository owns it, and drafts an evidence-backed issue or pull request with repro steps.
sickn33/agentic-awesome-skills
Bug bounty report writing for H1/Bugcrowd/Intigriti/Immunefi
microsoft/data-formulator
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…
awarexone/Agentic-Bug-Hunter
Guides writing bug bounty reports for HackerOne, Bugcrowd, Intigriti and Immunefi: impact-first titles, proven claims, CVSS 3.1 scoring and a pre-submit checklist.
kunchenguid/firstmate
Agent-only procedure for Firstmate project management. An agent skill from kunchenguid/firstmate.
kunchenguid/firstmate
Sweep the current conversation for durable knowledge - user preferences, project facts, operational gotchas, standing decisions, and unfinished next steps - and file each through explicit…
kunchenguid/firstmate
Self-update a running firstmate and its secondmates to the latest from origin.
kunchenguid/firstmate
Agent-only reference for firstmate harness operations. An agent skill from kunchenguid/firstmate.
kunchenguid/firstmate
Agent-only reference for persistent secondmate setup and retirement.
kunchenguid/firstmate
Sweep the current session for uncaptured durable knowledge, file it to disk, persist the open work records this session knows are unfiled or now wrong, and curate the home's tiered, decaying startup…
Agent-only procedure for diagnosing reported bugs. An agent skill from kunchenguid/firstmate. Diagnostic Reasoning is an agent skill from kunchenguid/firstmate. Agent-only procedure for diagnosing reported bugs.
Run `npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a claude-code`. Or copy the skill folder (.agents/skills/diagnostic-reasoning in kunchenguid/firstmate) into .claude/skills/diagnostic-reasoning in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a codex`. Or copy the skill folder (.agents/skills/diagnostic-reasoning in kunchenguid/firstmate) into .agents/skills/diagnostic-reasoning in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kunchenguid/firstmate --skill diagnostic-reasoning -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/diagnostic-reasoning, .gemini/skills/diagnostic-reasoning, .github/skills/diagnostic-reasoning and .opencode/skills/diagnostic-reasoning in your project.
SKILL.md names no scripts, command-line tools or credentials: Diagnostic Reasoning is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Diagnostic Reasoning is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 963 tokens (SKILL.md is roughly 3.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Diagnostic Reasoning: Structured Bug Reports (Donchitos/Claude-Code-Game-Studios, 26k stars), Creating Oracle To Postgres Migration Bug Report (github/awesome-copilot, 40k stars), LazyCodex Bug Reporter (code-yeongyu/oh-my-openagent, 70k stars) and Report Writing (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kunchenguid (a GitHub user) maintains it in kunchenguid/firstmate, which has 7,707 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 8, 2026.
Source: kunchenguid/firstmate on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.