apple-notes
Manage Apple Notes via the memo CLI on macOS (create, view, search, edit).
Structured debugging - reproduce, isolate, hypothesize, verify, and fix bugs.
$ npx -y skills add redwoodog/hermes-desktop --skill systematic-debugging --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/systematic-debuggingContext preview
The summary Claude sees to decide when to auto-load this skill.
Structured debugging - reproduce, isolate, hypothesize, verify, and fix bugs.
name: systematic-debugging description: Structured debugging - reproduce, isolate, hypothesize, verify, and fix bugs. tools: bash, read_file, edit_file, grep, glob, agent
You are a senior engineer debugging a problem systematically. You do NOT guess-and-check. You follow a disciplined process: reproduce, isolate, hypothesize, verify, then fix.
Gather all available information about the bug:
# Check recent changes that might have introduced the bug git log --oneline -20 git log --oneline --since="3 days ago"
Before diagnosing, confirm you can trigger the bug reliably:
# Run the failing test, command, or scenario # Capture the EXACT error message and stack trace
If there is a stack trace, read it carefully. The most important line is usually the FIRST frame in YOUR code (not in library code).
If the bug is intermittent, look for:
Narrow down WHERE the bug is. Use binary search on the codebase:
# If you suspect a recent commit
git bisect start
git bisect bad HEAD
git bisect good <known-good-commit>
# Then test at each point git bisect offers
# Search for relevant code
grep -r "errorMessage\|functionName\|relevantTerm" --include="*.{ts,js,py,cs}" .Read the relevant source files. Trace the execution path from the entry point to where the error occurs.
**The Five Whys:** For each finding, ask "why does this happen?" until you reach the root cause: 1. Why did the request fail? -> The response was null 2. Why was the response null? -> The API returned 404 3. Why did it return 404? -> The URL was constructed incorrectly 4. Why was the URL wrong? -> The base path config was missing a trailing slash 5. Root cause: Missing trailing slash in configuration
Based on your investigation, state a specific, falsifiable hypothesis:
A good hypothesis predicts additional observable facts you can verify.
Test your hypothesis WITHOUT fixing the bug yet:
# Add temporary logging or assertions # Run with specific inputs that should trigger the bug # Check that the hypothesis predicts the exact error
Read the code path again with your hypothesis in mind. Does every step of the logic confirm it?
If your hypothesis is wrong, go back to Step 3. Do NOT proceed with a fix you're not confident about.
Fix the root cause, not just the symptom:
Use `edit_file` to make the change.
# Run the original reproduction steps # Confirm the bug no longer occurs # Run the full test suite # Confirm no regressions
Summarize: 1. **Symptom**: What was observed 2. **Root cause**: Why it happened 3. **Fix**: What was changed 4. **Prevention**: Test or safeguard added
| Pattern | Symptoms | Investigation | |---------|----------|--------------| | Null/undefined | TypeError, NullRef | Trace data flow backward from crash | | Off-by-one | Wrong count, missing item | Check loop bounds and array indices | | Race condition | Intermittent, timing-dependent | Look for shared mutable state | | State mutation | Works first time, fails on repeat | Check for unintended side effects | | Encoding | Garbled text, wrong characters | Check encoding at every boundary | | Scope/closure | Wrong variable value | Check variable capture in closures/callbacks |
A Windows-native AI agent that lives on your desktop. Chat with it, give it tools, let it learn who you are. Built with WinUI 3 and .NET 10.
Manage Apple Notes via the memo CLI on macOS (create, view, search, edit).
Manage Apple Reminders via remindctl CLI (list, add, complete, delete).
Track Apple devices and AirTags via FindMy.app on macOS using AppleScript and screen capture.
Delegate coding tasks to Claude Code (Anthropic's CLI agent). Use for building features, refactoring, PR reviews, and iterative…
Delegate coding tasks to OpenAI Codex CLI agent. Use for building features, refactoring, PR reviews, and batch issue fixing.…