systematic-debugging
Use for investigating bugs, test failures, crashes, flaky behavior, build failures, or unexpected output
Skill by OrestesK
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/orestesk-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
Use cases: testing
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
- Use for investigating bugs, test failures, crashes, flaky behavior, build failures, or unexpected output
- License
- MIT
- Instructions
- 116 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Systematic Debugging No fixes without root-cause evidence Random changes waste time and create new bugs. Follow the phases in order ## Phase 1: Observe Read the actual failure completely: - Read the full error, stack trace, command output, or symptom report - Identify exact file, line, function, test, request, or data path involved - Reproduce with the narrowest permitted evidence unless reproduction is impossible, unsafe, or already captured reliably. When the best reproduction requires an opt-in command, recommend it instead of executing it - Check current diff and recent read-only history if relevant - Use `module_report`, `read_symbol`, `read_enclosing`, or LSP to inspect failing symbols before broad reads Do not propose a fix in this phase ## Phase 2: Trace Root Cause Find where the bad value, state, or behavior originates: - Trace inputs and outputs across each boundary - Compare expected vs actual values - Inspect callers and callees when necessary - Check configuration, environment, mocks, fixtures, and test setup - Find similar working code in the same project Fix at the source, not at the symptom ## Phase 3: Form One Hypothesis State exactly: ```text I believe the failure occurs because <specific cause>, based on <evidence>. Confidence: <low|moderate|high>. ``` Mark uncertain claims as `**[ASSUMPTION: ...]**` Do not hold multiple vague hypotheses and edit for all of them ## Phase 4: Test the Hypothesis Before implementing the fix: - Use the smallest read, probe, command, or temporary inspection that can validate the hypothesis - Change only one variable if a code change is needed to test - If wrong, return to observation with the new evidence Do not stack fixes on an unverified guess ## Phase 5: Fix Once root cause is supported: 1. Select the narrowest evidence that would catch the regression 2. Capture a reproduction or regression test when it materially improves the proof 3. Make the minimal root-cause fix 4. Collect the narrow permitted reproduction or selected evidence 5. Identify broader evidence when the change's risk justifies it No “while here” refactors unless the fix requires them ## Wait for observable conditions For asynchronous or flaky behavior: 1. Name the observable condition that proves readiness or completion 2. Poll or subscribe to that exact condition under a bounded deadline 3. Capture the last observed state when the deadline expires 4. Treat timeout as evidence rather than increasing the delay blindly 5. Use a fixed sleep only when elapsed timing is itself the behavior under test Keep the condition tied to the real lifecycle contract. Do not use a condition that hides a state the system cannot produce External polling still obeys authorization, rate, data, and cost boundaries Use `writing-tests` for any persistent test helper or fixture ## When Fix Progress Stalls Continue only while each attempted fix tests a supported root-cause hypothesis and produces material new evidence or progress Stop when: - failures repeat - progress stalls - each change reveals only unrelated symptoms - evidence invalidates the architecture or plan - you reach a material or protected boundary Summarize the attempts and evidence. Question the architecture or original plan, then route the next decision through the active workflow. Do not use an arbitrary attempt count ## Red Flags Stop if you catch yourself thinking: - “It is probably X I'll just change it” - “Quick fix first, investigate later” - “Try several things and see” - “The stack trace is long skip to the bottom” - “Tests are annoying manually verify” - “One more fix attempt” after repeated failures - “This reference is long skim and adapt” ## Reporting A debugging report should include: - observed symptom and reproduction, - root-cause evidence, - hypothesis and confidence, - fix made, - regression test or reason none was added, - verification commands/results, - remaining risks
From OrestesK/pi, MIT.
More from OrestesK/pi
- 0.563score
skill-authoring
OrestesK
Create, review, or make substantial changes to local Pi skills.
SkillBFreshness: B★ 2Claude Code +9 - 0.559score
browser-use
OrestesK
Use for navigating websites, testing web interfaces, filling forms, taking screenshots, or extracting web data when no other available tool meets the need
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
notion-documents
OrestesK
Write, edit, and format Notion documents.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
durable-memory
OrestesK
Curate durable Markdown memories.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
code-intelligence
OrestesK
Use when you need to find code ownership, structure, symbols, types, references, call relationships, structural patterns, or diagnostics
SkillBFreshness: B★ 2Claude Code +9 - 0.556score
session-reader
OrestesK
Use for reading or analyzing Pi session JSONL files and session history
SkillBFreshness: B★ 2Claude Code +9 - 0.556score
excalidraw-skill
OrestesK
Use for creating, refining, validating, or exporting Excalidraw technical diagrams
SkillBFreshness: B★ 2Claude Code +9 - 0.556score
grill-me
OrestesK
Manually interview the user about a plan or design until shared understanding is reached
SkillBFreshness: B★ 2Claude Code +9 - 0.554score
writing-plans
OrestesK
Use for technical specifications, technical designs, architecture proposals, and implementation plans after the goal is clear
SkillBFreshness: B★ 2Claude Code +9 - 0.551score
brainstorming
OrestesK
Use for refining ambiguous or nontrivial feature, behavior, UI, API, or architecture requests into an approved design
SkillBFreshness: B★ 2Claude Code +9 - 0.551score
github
OrestesK
Use for GitHub pull requests, issues, CI workflows, and API queries
SkillBFreshness: B★ 2Claude Code +9 - 0.551score
github-pr-comments
OrestesK
Use for drafting, verifying, or posting actionable GitHub PR review comments
SkillBFreshness: B★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 11, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/OrestesK/pi
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from OrestesK
- 0.570score
authenticated-web-access
OrestesK
Reuse an existing browser login for bounded authenticated website requests when the user asks to read site data, download a file, inspect a network-backed…
SkillAFreshness: AClaude Code +9 - 0.567score
excalidraw-skill
OrestesK
Use for planning, creating, refining, validating, or exporting Excalidraw technical diagrams, including text-only layout proposals before drawing
SkillAFreshness: AClaude Code +9 - 0.565score
pr-slack-post
OrestesK
Draft a short Slack message that posts a pull request for review.
SkillAFreshness: AClaude Code +9 - 0.565score
pi-config
OrestesK
Write and maintain clear, consistent Oh My Pi configuration.
SkillAFreshness: AClaude Code +9 - 0.565score
skill-authoring
OrestesK
Write or revise reusable skill instructions.
SkillAFreshness: AClaude Code +9 - 0.564score
grill-me
OrestesK
Manually interview the user about a plan, design, or idea until shared understanding is reached
SkillAFreshness: AClaude Code +9
Cite this page
systematic-debugging skill. Agent Mart. https://agentmart.dev/skills/orestesk-systematic-debugging (last updated 2026-10-24)