Systematic debugging workflow to find and fix bugs efficiently. Use this skill when troubleshooting errors, investigating issues, or when code doesn't work as expected.
Pro shows the line behind each finding and how to fix it
Scanned 2/12/2026
npx -y skills add lovedragonball/power-ranger-toolkit --skill debugging --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Debugging?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/lovedragonball-debugging)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: debugging
description: Systematic debugging workflow to find and fix bugs efficiently. Use this skill when troubleshooting errors, investigating issues, or when code doesn't work as expected.
---
# 🐛 Debugging Skill
## Workflow
### Step 1: Reproduce 🔄
```
- [ ] ทำซ้ำปัญหาให้ได้
- [ ] บันทึกขั้นตอนที่ทำให้เกิด error
- [ ] ตรวจสอบ error message/stack trace
```
### Step 2: Isolate 🎯
```
- [ ] หาไฟล์/function ที่เกี่ยวข้อง
- [ ] ใช้ console.log หรือ debugger
- [ ] ตัด code ออกทีละส่วนจนหาจุดที่พัง
```
### Step 3: Root Cause Analysis 🔬
```
- [ ] ถาม "ทำไม" 5 ครั้ง (5 Whys)
- [ ] ดู git blame/history
- [ ] ตรวจ dependencies versions
```
### Step 4: Fix 🔧
```
- [ ] แก้ไขที่ root cause ไม่ใช่ symptom
- [ ] ทำให้ fix เล็กที่สุดเท่าที่จะทำได้
- [ ] ไม่ทำให้อย่างอื่นพัง
```
### Step 5: Verify ✅
```
- [ ] ทดสอบว่า bug หายแล้ว
- [ ] ทดสอบ edge cases
- [ ] Run existing tests
```
### Step 6: Document 📝
```
- [ ] บันทึกลง solutions.md
- [ ] บันทึกลง lessons.md (ถ้าเรียนรู้อะไรใหม่)
- [ ] Update changelog
```
## Common Debugging Commands
```powershell
# Check process
Get-Process | Where-Object { $_.Name -like "*node*" }
# Check ports
netstat -ano | findstr ":3000"
# Kill process
Stop-Process -Name "node" -Force
```
## Decision Tree
```
Error occurred
├── Has error message? → Google it first
├── Works locally but not in prod? → Check env variables
├── Works yesterday? → Check git diff
└── Random/intermittent? → Check async/race conditions
```
---
## 🤖 AI-Assisted Debugging
### Auto Root Cause Analysis
| Error Pattern | Likely Cause | Fix Suggestion |
|--------------|--------------|----------------|
| `Cannot read property of undefined` | Missing null check | Add optional chaining `?.` |
| `ECONNREFUSED` | Service not running | Start the service |
| `CORS error` | Missing headers | Add CORS middleware |
| `Module not found` | Missing dependency | `npm install` |
| `Maximum call stack` | Infinite recursion | Check recursion base case |
### AI Debug Patterns
```javascript
// Pattern: Add context to errors
try {
await processData(input);
} catch (error) {
console.error('processData failed:', {
input,
error: error.message,
stack: error.stack,
timestamp: new Date().toISOString()
});
throw error;
}
```
### Quick Fix Commands
```bash
# Clear caches
npm cache clean --force
rm -rf node_modules && npm install
# Reset DB
npx prisma migrate reset
# Check environment
node -e "console.log(process.env)"
```
---
## 🔧 Auto-Fix Suggestions
### Common Fixes
| Issue | Auto-Fix |
|-------|----------|
| TypeScript errors | Regenerate types |
| Build failures | Clear build cache |
| Test failures | Update snapshots |
| Lock file conflicts | Delete & regenerate |
### Debug Logging Template
```javascript
const DEBUG = process.env.DEBUG === 'true';
function log(...args) {
if (DEBUG) console.log('[DEBUG]', new Date().toISOString(), ...args);
}
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!