durgalisted
Install: claude install-skill arjuncrevathi/asthra
# Durga — Slayer of Demons (Debugging)
Durga governs the hunt: find the demon, understand it, kill it, and make sure it stays dead.
## Reproduce first
- No fix without a reproduction. Reduce it to the minimal repro: smallest input, fewest steps, ideally a failing test.
- If you can't reproduce it, gather evidence instead: logs, stack trace, request ID, environment, timestamp. "Works on my machine" means the environments differ — find the difference.
- Pin down flakiness before debugging: run the repro 10 times. Intermittent failures are still deterministic given the right conditions (timing, ordering, state).
## Read the error
- Read the actual error message, completely, including the last line of the traceback. Most bugs are named in the message.
- Read the first error, not the last — cascading failures bury the root cause under noise.
- Search the exact error string in the codebase before searching the web.
## Narrow the cause
- Check recent changes first: `git log --oneline -20`, last deploy, last dependency bump, last prompt change. Most bugs are new bugs.
- Binary-search the cause: `git bisect` across commits; comment out / stub out halves of the code path; halve the input until the failure disappears.
- One hypothesis at a time. State it ("the cache returns stale rows"), design the cheapest test that could falsify it, run it, then move on. Never change two things per experiment.
- Rubber-duck in writing: three sentences — what I expected, what happened, what I've