Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
Coding
Troubleshooting Computer Issues
Try itUse when addressing computer configuration failures, software or package installation errors, command line exceptions, network connectivity bugs, or system runtime crashes.
What it does
Use when addressing computer configuration failures, software or package installation errors, command line exceptions, network connectivity bugs, or system runtime crashes.
The skill document
Troubleshooting Computer Issues
Overview
A structured, platform-agnostic engine designed to systematically debug, verify, and resolve computer software and configuration issues while recording long-term troubleshooting memory.
Core Flow
digraph troubleshooting_flow {
"User reports software issue" [shape=doublecircle];
"Initial Classification\n(Simple/Medium/Hard/Extreme)" [shape=box];
"Verify Class Correctness\nDuring Diagnosis" [shape=diamond];
"Adjust Level" [shape=box];
"Execute Level Strategy" [shape=box];
"Ask Clarifying Details\n(Avoid dead ends)" [shape=box];
"Verify Issue Fully Resolved?" [shape=diamond];
"Mark as SOLVED\nUpdate SOLUTIONS.md" [shape=box];
"Mark as UNSOLVED\nUpdate UNRESOLVED.md" [shape=box];
"User reports software issue" -> "Initial Classification\n(Simple/Medium/Hard/Extreme)";
"Initial Classification\n(Simple/Medium/Hard/Extreme)" -> "Execute Level Strategy";
"Execute Level Strategy" -> "Verify Class Correctness\nDuring Diagnosis";
"Verify Class Correctness\nDuring Diagnosis" -> "Adjust Level" [label="incorrect"];
"Verify Class Correctness\nDuring Diagnosis" -> "Ask Clarifying Details\n(Avoid dead ends)" [label="correct"];
"Adjust Level" -> "Execute Level Strategy";
"Ask Clarifying Details\n(Avoid dead ends)" -> "Verify Issue Fully Resolved?";
"Verify Issue Fully Resolved?" -> "Mark as SOLVED\nUpdate SOLUTIONS.md" [label="yes"];
"Verify Issue Fully Resolved?" -> "Mark as UNSOLVED\nUpdate UNRESOLVED.md" [label="no (after max effort)"];
}
Level Strategies
Refer to diagnostic-templates.md for full checklists.
| Difficulty | Diagnostic Strategy | Verification Method |
|---|---|---|
| Simple (简单) | Use existing knowledge base & quick references | Manual/verbal verification |
| Medium (中等) | Network search (docs/blogs) + deep thinking mode | Check version/logs |
| Hard (困难) | Medium strategy + run terminal/diagnostic commands | Execute validation scripts/commands |
| Extreme (极其困难) | Hard strategy + parallel subagent tasks + iterate | Complete test passes & regression check |
Rules & Common Mistakes
- Never guess fixes: Run diagnostic commands for Hard/Extreme issues before proposing changes. Refer to systematic-debugging.
- Dynamic Reclassification: If search fails or environmental complexity increases, adjust the difficulty level immediately.
- Strict Resolution Gate: Only mark as SOLVED after the user explicitly verifies the fix. If unresolved after maximum effort, mark as UNSOLVED.
- Memory Documentation: Every attempt must write to
.troubleshooting-memory/as detailed in memory-format.md.
Quick References
- Diagnostic Templates
- Memory Format Specification
- Common Solutions Index
Related skills
Diagnose a bug systematically instead of guessing — reproduce, isolate, form hypotheses, and test them to root cause. Use when debugging, chasing a defect, a...
Diagnose a tangled git situation and give the exact, safe commands to fix it. Use when asked to undo a commit, recover lost work, fix a bad merge or rebase,...
Diagnose and harden Linux hosts across permissions, processes, systemd, networking, boot, and security.
Troubleshoot an Alibaba Cloud ECS Linux OS. Use when a user needs to diagnose a specified ECS Linux instance, such as instance stuck in Starting, boot stuck, SSH/VNC/Workbench login failure, network issues, disk/FS issues, performance anomalies, suspected mining or hidden processes, crash/hang, clock drift, or configuration not taking effect.
Write a clear, reproducible bug report that gets fixed fast. Use when asked to write a bug report, file a defect, report an issue, or turn 'it's broken' into...