debugging

Document failure evidence and isolate root causes with hypothesis testing.

2|Updated Mar 16, 2021
One-click install
npx skills add https://github.com/karitham/dotfiles --skill debugging-karitham
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: debugging
Source: https://github.com/karitham/dotfiles/tree/main/modules/opencode/skills/debugging
Command: npx skills add https://github.com/karitham/dotfiles --skill debugging-karitham

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Systematic debugging protocol emphasizing empirical investigation over code reasoning to avoid incorrect conclusions and reduce wasted time. It guides observers to collect concrete evidence from logs, tests, and history, forms precise hypotheses, and designs experiments to distinguish between competing explanations.

Core Features & Use Cases

  • Empirical observation: gather failure details from runtime outputs, logs, and version history
  • Hypothesis-driven experiments: narrow the failure space with minimal, verifiable tests
  • Actionable guidance: apply to crashes, flaky tests, or unexpected behavior across complex systems
  • Reproducibility focus: create minimal reproductions and controlled experiments for remediation

Quick Start

Observe system behavior, formulate hypotheses, and design targeted experiments to isolate the root cause.

Frequently Asked Questions about debugging

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

FAQPage Schema
How do I find the root cause of a crash using empirical debugging?

Empirical debugging isolates root causes by collecting concrete evidence from logs and traces, forming precise hypotheses, and running targeted experiments to distinguish between competing explanations for system crashes.

What is the best way to debug flaky tests in complex systems?

Debugging flaky tests requires empirical observation of runtime outputs and version history to identify exact failure behaviors, followed by iterative hypothesis testing to isolate environmental or configuration variables causing the inconsistency.

How do I create minimal reproduction steps for unexpected application behavior?

Create minimal reproductions by observing system behavior to document exact failures, formulating hypotheses based on empirical evidence, and designing controlled experiments that reliably trigger the unexpected behavior for diagnosis.

Why does my debugging process lead to incorrect conclusions?

Incorrect conclusions often result from relying on code reasoning over empirical investigation; systematically gathering concrete evidence from logs, tests, and history, then testing hypotheses, prevents wasted time and false diagnoses.

Can I use hypothesis-driven experiments to debug configuration issues?

Yes, hypothesis-driven experiments narrow the failure space by applying minimal, verifiable tests across code, configuration, and environment to isolate whether configuration mismatches are the actual root cause of the observed failure.

When should I not use empirical debugging for troubleshooting?

Empirical debugging is less effective when runtime logs, traces, or test outputs are unavailable, as the methodology depends on gathering concrete evidence and observing exact failure behaviors to formulate and test hypotheses.