debugging

Diagnose runtime bugs across languages and binaries with a hypothesis-driven investigation workflow.

Updated Jun 18, 2026
One-click install
npx skills add https://github.com/hugefiver/ocmm --skill debugging-hugefiver
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: debugging
Source: https://github.com/hugefiver/ocmm/tree/main/plugins/deepwork/skills/debugging
Command: npx skills add https://github.com/hugefiver/ocmm --skill debugging-hugefiver

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Debugging sessions often stall on guesswork, missed silent failures, and leftover instrumentation that pollutes the repository. This Skill enforces a disciplined, evidence-driven loop that finds root causes from observed runtime state instead of plausible stories, and guarantees a clean working tree when done. ## Core Features & Use Cases - Hypothesis-driven investigation: Form at least three orthogonal hypotheses, investigate them in parallel, and escalate to hard-reasoning only after two failed evidence rounds. - Runtime and tooling references: Dedicated guides for Python, Node.js, Rust, Go, native binaries, and bundled-JS binaries (Bun SEA, Electron, PyInstaller), plus specialist tools like Playwright, Ghidra, pwndbg, pwntools, and a DAP client. - Flaky-test triage: A three-run signature protocol classifies intermittent, order-dependent, and CI-only failures before any fix is attempted. - Use Case: A developer sees HTTP 200 responses with empty bodies in production. The Skill walks them through environment assessment, parallel hypothesis testing, root-cause confirmation via toggle proof, a failing-first test, manual QA with real requests, and artifact cleanup. ## Quick Start Ask the agent to debug why your application crashes or returns empty responses, and it will load the matching runtime reference and start the hypothesis-driven investigation loop.

Frequently Asked Questions about debugging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a silent failure that returns HTTP 200 with an empty body?▼

Form at least three hypotheses across orthogonal axes such as user-code logic, SDK behavior, and async timing, then gather runtime evidence for each. Confirm the root cause only when toggling the suspected cause toggles the bug, then lock it with a failing-first test.

How to triage a flaky test that passes in isolation but fails in CI?▼

Run the three-run signature protocol: an unchanged rerun, the failing test in isolation, and the smallest affected scope in a unique temp root. Classify the cause as a product race, fixture leakage, environment contention, or resource pressure before attempting any fix.

Can I reverse engineer a Bun or Electron compiled binary?▼

Yes. Bundled-JS binaries embed recoverable source: identify the bundler via string fingerprints, extract the bundle with the appropriate tool such as asar or pyinstxtractor, then analyze the plaintext source with grep instead of using Ghidra on the runtime.

Why do my breakpoints not fire when debugging tsx with node inspect?▼

The tsx plus node inspect CLI combination has a silent source-map failure where breakpoints by line number do not bind. The Node.js runtime reference documents the correct attach flags and source-map handling needed before starting a session.

When should I use Ghidra versus pwndbg for binary debugging?▼

Use Ghidra's decompiler when analyzing binaries without trustworthy source, such as closed libraries or firmware. Use pwndbg for live debugging sessions since it provides registers, stack, disassembly, and heap views as a strict superset of plain gdb.

What are the limitations of this debugging workflow?▼

The workflow requires the ability to gather runtime evidence, so bugs needing paid APIs, blocked networks, or missing hardware fall back to partial-evidence patterns. It also forbids git commits during the session and defers those to a separate step after user confirmation.