systematic-debugging
Applies a modified Fagan Inspection methodology to resolve persistent bugs and complex issues.
Skill by sammcj
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/sammcj-systematic-debugging
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/systematic-debugging
What's inside
- Skill name
systematic-debugging- Description
- Applies a modified Fagan Inspection methodology to resolve persistent bugs and complex issues. Use when several fix or debugging attempts have already failed and a methodical root-cause analysis warranting a Fagan inspection is needed. Do not use for simple troubleshooting.
- License
- Apache-2.0
- Instructions
- 110 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Systematic Debugging with Fagan Inspection This skill applies a modified Fagan Inspection methodology for systematic problem resolution when facing complex problems or stubborn bugs that have resisted multiple fix attempts. ## Process Overview Create tasks for each of the four phases, then work them to completion, marking each done before starting the next. Follow these four phases sequentially. Do not skip phases or attempt fixes before completing the inspection. ### Phase 1: Initial Overview Establish a clear understanding of the problem before analysis: - **Explain the problem** in plain language without technical jargon - **State expected behaviour** - what should happen - **State actual behaviour** - what is happening instead - **Document symptoms** - error messages, logs, observable failures - **Context** - when does it occur, how often, under what conditions - **Prior fix attempts** - list each attempt, what it changed, and why it failed; treat these as eliminated hypotheses that Phase 3 must account for **Output:** A clear problem statement that anyone could understand. ### Phase 2: Systematic Inspection Perform a line-by-line walkthrough as the "Reader" role in Fagan Inspection. **Identify defects without attempting to fix them yet** - this is pure inspection. Check against these defect categories: 1. **Logic Errors** 2. **Boundary Conditions** 3. **Error Handling** 4. **Data Flow Issues** 5. **Integration Points** Talk through the code step by step, as the Reader does in a Fagan inspection. For each section of code: - State what the code is intended to do - Identify any discrepancies between intent and implementation - Flag assumptions or unclear aspects - Use ultrathink to think deeper on complex sections **Output:** A categorised list of identified defects with line numbers and specific descriptions. ### Phase 3: Root Cause Analysis After identifying issues, trace back to find the fundamental cause - not just symptoms. **Five Whys Technique:** - Ask "why" repeatedly (at least 3-5 times) to get to the underlying issue - State each "why" explicitly in your analysis - Example: - Why did the API call fail? → Because the request was malformed - Why was it malformed? → Because the data wasn't serialised correctly - Why wasn't it serialised? → Because the serialiser expected a different type - Why did it expect a different type? → Because the schema was updated but code wasn't - Root cause: Schema versioning mismatch between services **Consider:** - Environmental factors (configuration, dependencies, runtime environment) - Timing and concurrency (race conditions, async issues) - Hidden assumptions in the code or system design - Historical context (recent changes, migrations, updates) **State assumptions explicitly:** - "I'm assuming X because..." - "This presumes that Y is always..." - Flag any assumptions that need verification **Output:** A clear statement of the root cause, the chain of reasoning that led to it, and any assumptions that need validation. ### Phase 4: Solution & Verification Now propose specific fixes for each identified issue. **For each proposed solution:** 1. **Describe the fix** - what code/configuration changes are needed 2. **Explain why it resolves the root cause** - connect it back to Phase 3 analysis 3. **Consider side effects** - what else might this change affect 4. **Define verification steps** - how to confirm the fix works **Verification Planning:** - Specific test cases that would have caught this bug - Manual verification steps - Monitoring or logging to add - Edge cases to validate **Use a sub-agent** as a sounding board to provide critical feedback on your proposed solutions and verification plan. **Output:** A summary of findings (key defects and root cause), a prioritised list of proposed fixes with rationale, and a verification plan for confirming the fixes work. ## Important Guidelines - **Complete each phase thoroughly** before moving to the next - **Flag unclear aspects** rather than guessing - if something is uncertain, say so - **Use available tools** - read files, search code, run tests, check logs - **Focus on systematic analysis** over quick fixes - **Validate flagged aspects** - after completing all phases, revisit any unclear points and verify them with tools ## Final Output After completing all four phases, unless the user indicates otherwise, proceed to implement the proposed solutions. ## When This Skill Should NOT Be Used - For simple, obvious bugs with clear fixes - When the first debugging attempt is still underway - For new features (this is for debugging existing code) - When the problem is clearly environmental (config, infrastructure) and doesn't require code inspection
From sammcj/agentic-coding, Apache-2.0.
More from sammcj/agentic-coding
- 0.740score
release-debrief
Sam McLeod (adapted from Arjen Schwarz)
Summarises the delta between a tool's latest release and the last summary the user saw.
SkillBFreshness: B★ 167Claude Code - 0.732score
ambitious-model-use
sammcj
Use when the user asks to be more ambitious with an AI task: aim at the outcome behind it, work it like a field-leading expert from raw data, or bring in…
SkillAFreshness: A★ 167Claude Code +9 - 0.732score
rewrite-slop
sammcj
Use when explicitly asked to review or rewrite AI-generated text or UI so it reads as human, or with phrasings like "de-slop", "humanise this", "make it sound…
SkillAFreshness: A★ 167Claude Code +9 - 0.732score
ai-changelog
sammcj
Set up an AI-driven changelog system in any project, code or not.
SkillAFreshness: A★ 167Claude Code +9 - 0.732score
extract-wisdom
sammcj
Extract wisdom, insights, and actionable takeaways from YouTube videos, blog posts, articles, or text files.
SkillAFreshness: A★ 167Claude Code - 0.729score
retro
sammcj
Retrospective on a coding session that proposes changes to the agent's environment (checks, pointers, steering, tooling) so the next run goes better.
SkillAFreshness: A★ 167Claude Code +9 - 0.728score
skill-creator-primer
sammcj
You **MUST** load this skill before the skill-creator skill AND before making ANY change to, or conducting a review of ANY Agent Skill.
SkillAFreshness: A★ 167Claude Code +9 - 0.728score
deferred-task-execution
sammcj
Delays execution of a task until a specified time or after a duration.
SkillAFreshness: A★ 167Claude Code +9 - 0.727score
prompt-enhancer
sammcj
Transform poor or overly simple prompts with expert-level framing.
SkillAFreshness: A★ 167Claude Code +9 - 0.727score
find-docs
sammcj
Retrieves up-to-date documentation, API references and code examples for any developer technology.
SkillAFreshness: A★ 167Claude Code +9 - 0.727score
backlog
sammcj
Capture single backlog items, or list and triage an existing project backlog.
SkillAFreshness: A★ 167Claude Code +9 - 0.727score
creating-development-plans
sammcj
Creates structured development plans with phased task breakdowns, requirements, and QA checklists.
SkillAFreshness: A★ 167Claude Code +9
Signals
- Stars
- 167
- Forks
- 25
- Open issues
- 0
- Last commit (this folder)
- Oct 4, 2026 (24 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/sammcj/agentic-coding
- Website
- smcleod.net
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from sammcj
- 0.732score
extract-wisdom
sammcj
Extract wisdom, insights, and actionable takeaways from YouTube videos, blog posts, articles, or text files.
SkillAFreshness: A★ 167Claude Code - 0.732score
rewrite-slop
sammcj
Use when explicitly asked to review or rewrite AI-generated text or UI so it reads as human, or with phrasings like "de-slop", "humanise this", "make it sound…
SkillAFreshness: A★ 167Claude Code +9 - 0.732score
ai-changelog
sammcj
Set up an AI-driven changelog system in any project, code or not.
SkillAFreshness: A★ 167Claude Code +9 - 0.732score
ambitious-model-use
sammcj
Use when the user asks to be more ambitious with an AI task: aim at the outcome behind it, work it like a field-leading expert from raw data, or bring in…
SkillAFreshness: A★ 167Claude Code +9 - 0.729score
retro
sammcj
Retrospective on a coding session that proposes changes to the agent's environment (checks, pointers, steering, tooling) so the next run goes better.
SkillAFreshness: A★ 167Claude Code +9 - 0.728score
deferred-task-execution
sammcj
Delays execution of a task until a specified time or after a duration.
SkillAFreshness: A★ 167Claude Code +9
Cite this page
systematic-debugging skill. Agent Mart. https://agentmart.dev/skills/sammcj-systematic-debugging (last updated 2026-10-24)