Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes - four-phase framework (root cause investigation, pattern analysis, hypothesis testing, implementation) that ensures understanding before attempting solutions.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Systematic Debugging
## Overview
Random fixes waste time and create new bugs. Quick patches mask underlying issues.
**Core principle:** ALWAYS find root cause before attempting fixes. Symptom fixes are failure.
**Violating the letter of this process is violating the spirit of debugging.**
## The Iron Law
```
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
```
If you haven't completed Phase 1, you cannot propose fixes.
## When to Use
Use for ANY technical issue:
- Test failures
- Bugs in production
- Unexpected behavior
- Performance problems
- Build failures
- Integration issues
**Use this ESPECIALLY when:**
- Under time pressure (emergencies make guessing tempting)
- "Just one quick fix" seems obvious
- You've already tried multiple fixes
- Previous fix didn't work
- You don't fully understand the issue
**Don't skip when:**
- Issue seems simple (simple bugs have root causes too)
- You're in a hurry (rushing guarantees rework)
- Manager wants it fixed NOW (systematic is faster than thrashing)
## The Four Phases
You MUST complete each phase before proceeding to the next.
### Phase 1: Root Cause Investigation
**BEFORE attempting ANY fix:**
…
The line at the top of this page pins the label git:20260204.611bfd1, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_c2dyombqcjuepfmy
GET https://markdownregistry.com/api/v1/resolve?ref=ed3dai/ed3d-plugins/systematic-debugging
GET https://markdownregistry.com/api/v1/blob/f69f833515dfd625dae9c494423f59f736b02347a39b6eb997c0160b9810ee73
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
ed3dai/ed3d-plugins · plugins/ed3d-basic-agents/skills/doing-a-simple-two-stage-fanout/SKILL.md · Use when analyzing a large corpus of text, code, or data that exceeds a single agent's effective context - orchestrates…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/creating-a-plugin/SKILL.md · Use when creating a new Claude Code plugin or setting up plugin structure - provides complete file organization…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/creating-an-agent/SKILL.md · Use when creating specialized subagents for Claude Code plugins or the Task tool - covers description writing for…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/maintaining-a-marketplace/SKILL.md · Use when creating, releasing, or maintaining a Claude Code Plugin Marketplace - covers marketplace.json schema, version…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/maintaining-project-context/SKILL.md · Use when completing development phases or branches to identify and update CLAUDE.md or AGENTS.md files that may have…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/prompt-security-hardening/SKILL.md · Use when writing skills, CLAUDE.md files, agent prompts, or any directives that involve shell commands, environment…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/testing-skills-with-subagents/SKILL.md · Use when creating or editing skills, before deployment, to verify they work under pressure and resist rationalization -…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/writing-claude-directives/SKILL.md · Use when writing instructions that guide Claude behavior - skills, CLAUDE.md files, agent prompts, system prompts…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/writing-claude-md-files/SKILL.md · Use when creating or updating CLAUDE.md files for projects or subdirectories - covers top-level vs domain-level…
ed3dai/ed3d-plugins · plugins/ed3d-extending-claude/skills/writing-skills/SKILL.md · Use when creating new skills, editing existing skills, or verifying skills work before deployment - applies TDD to…
mvschwarz/openrig · skills/_canonical/process/systematic-debugging/SKILL.md · Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
mvschwarz/openrig · packages/daemon/specs/agents/shared/skills/process/systematic-debugging/SKILL.md · Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
cbrock84/headcount · plugins/technology/skills/systematic-debugging/SKILL.md · Finds the root cause of a bug, test failure, or unexpected behavior before proposing any fix. Use this whenever…
a5c-ai/babysitter · library/methodologies/superpowers/skills/systematic-debugging/SKILL.md · Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes. Requires root cause…