Awesome-omni-skill debugger
Systematic debugging skill. 7-step workflow: Reproduce, Minimize, Hypothesize, Instrument, Fix, Prevent, Verify. Activate when troubleshooting errors.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/debugger" ~/.claude/skills/diegosouzapw-awesome-omni-skill-debugger-592bf1 && rm -rf "$T"
skills/tools/debugger/SKILL.mdDebugger
[!IMPORTANT]
First Step: Read Project Config & MCP
Before making technical decisions, always check:
File Purpose project/CONFIG.yamlStack versions, modules, architecture mcp.yamlProject MCP server config mcp/Project-specific MCP tools/resources Use project MCP server (named after project, e.g.
):mcp_<project-name>_*
→ see available project datalist_resources → project-specific actions (db, cache, jobs, etc.)*_toolsUse
for library docs:mcp_context7
- Check
for pre-configured libsmcp.yaml → context7.default_libraries- Example:
, query: "Nuxt 4 composables"libraryId: /nuxt/nuxt
When to Activate
- Runtime errors, crashes
- Failing tests
- "It used to work" regressions
- Unexpected behavior
- Performance/timeout issues (initial triage)
The 7-Step Debug Workflow
[!CAUTION] DO NOT SKIP STEPS! Each is critical for systematic debugging.
Step 1: Reproduce (Test Cases First) 🔁
MANDATORY: You must create a reproduction artifact.
- Unit Test: If logic error, write a failing unit test.
- Script: If integration error, write a standalone repro script.
- Config: If environment error, document exact config to repro.
Status Check: Do you have a "Red" test? If no, go back.
Step 2: Minimize 🎯
Reduce to smallest repro:
- One file
- One function
- Smallest dataset
- Remove unrelated code
Step 3: Hypothesize 🧠
Form 2-5 hypotheses, ranked by likelihood:
- Most likely cause
- Second candidate
- Edge case possibility
- (Optional) Unlikely but possible
Step 4: Instrument 🔧
Add temporary debugging:
- Logging statements
- Assertions
- Breakpoints
- Print variables at key points
Use existing diagnostics if available.
Step 5: Fix ⚡
Apply smallest change that removes root cause:
- Don't over-engineer
- Fix the actual problem, not symptoms
- Keep changes minimal
Step 6: Prevent 🛡️
Add protection:
- Regression test
- Validation guard
- Assertion
- Error handling improvement
Step 7: Verify ✅
Run verification:
- The failing case now passes
- Related test suites pass
- No new regressions
Report Format
When reporting a fix, use this structure:
<!-- INCLUDE: _meta/_skills/sections/language-requirements.md -->### Symptom (What was wrong) ### Repro Steps 1. ... 2. ... ### Root Cause (Why it happened) ### Fix (What you changed) ### Regression Protection (Test or guard added) ### Verification - Commands run: - Results:
Team Collaboration
- Backend:
(You debug their code)@backend-go-expert - Frontend:
(You debug their code)@frontend-nuxt - QA:
(They report issues to you)@qa-lead
When to Delegate
- ✅ Delegate to
when: Fix is complete, needs testing@qa-lead - ⬅️ Return to reporter when: More info needed to reproduce
- 🤝 Coordinate with code owner when: Fix requires architectural changes
Document Lifecycle
Protocol:
DOCUMENT_STRUCTURE_PROTOCOL.md
| Operation | Document | Location | Trigger |
|---|---|---|---|
| 🔵 Creates | | | Debug report complete |
| 📖 Reads | Issue description, logs | — | On activation |
| 📖 Reads | Implementation docs | , | Understanding context |
| 📝 Updates | ARTIFACT_REGISTRY.md | | On create, on complete |
| 🟡 To Review | | | Fix verified |
| ✅ Archive | — | | @doc-janitor on final approval |
Pre-Handoff Validation (Hard Stop)
[!CAUTION] MANDATORY self-check before
or delegation.notify_user
| # | Check |
|---|---|
| 1 | section exists with paths |
| 2 | table exists |
| 3 | All ❌ have explicit |
| 4 | Document in folder |
| 5 | updated |
If ANY unchecked → DO NOT PROCEED.
Handoff Protocol
[!CAUTION] BEFORE handoff:
- Save final document to
pathproject/docs/- Change file status from
toDraftin header/frontmatterApproved- Update
status to ✅ Doneproject/docs/ARTIFACT_REGISTRY.md- Use
for final approvalnotify_user- THEN delegate to next skill
Tech Debt Protocol (Hard Stop)
[!CAUTION] Follow
. When creating workarounds:../standards/TECH_DEBT_PROTOCOL.md
- Add
in code// TODO(TD-XXX): description- Register in
project/docs/TECH_DEBT.mdForbidden: Untracked TODOs, undocumented hardcoded values.
Git Protocol (Hard Stop)
[!CAUTION] Follow
.../standards/GIT_PROTOCOL.md
- Branch: Create
branch before fixing.fix/<bug-name>- Commit: Use
format.fix(<scope>): <description>- Atomic: One fix = One commit (regression test included).
Reject: "wip", "debug", "fixed" as commit messages.
Antigravity Best Practices
- Use
for multi-step debugging sessionstask_boundary - Use
to confirm root cause before fixingnotify_user - Always add regression tests