systematic-debugging
This skill should be used when the user reports a "bug", "not working", "fix this", "debug", "test failing", or when investigating unexpected behavior. Four-phase framework ensuring root cause understanding before attempting solutions.
What this skill does
# Systematic Debugging Find root cause before attempting fixes. Symptom fixes mask underlying issues. ## The Four Phases ### Phase 1: Root Cause Investigation Before attempting any fix: 1. **Read error messages carefully** — they often contain the solution. Read stack traces completely; note line numbers, file paths, error codes. 2. **Reproduce consistently** — exact steps, every time. If not reproducible, gather more data. 3. **Check recent changes** — git diff, new dependencies, config changes, environmental differences. 4. **Trace data flow** — where does the bad value originate? For deep call stack errors, use the **root-cause-tracing** skill. For multi-component systems, add diagnostic logging at each component boundary before proposing fixes. Log what enters and exits each component. ### Phase 2: Pattern Analysis 1. **Find working examples** — similar working code in the same codebase. 2. **Compare against references** — read reference implementations completely, not skimmed. 3. **Identify differences** — list every difference, however small. 4. **Understand dependencies** — settings, config, environment assumptions. ### Phase 3: Hypothesis and Testing 1. **Form single hypothesis** — "I think X is the root cause because Y." 2. **Test minimally** — smallest possible change, one variable at a time. 3. **Verify** — didn't work? Form new hypothesis. Don't stack fixes. ### Phase 4: Implementation 1. **Create failing test** — simplest reproduction. Use the **test-driven-development** skill. 2. **Implement single fix** — address the root cause. One change at a time. No "while I'm here" improvements. 3. **Verify fix** — test passes, no other tests broken, issue resolved. 4. **If fix doesn't work** — return to Phase 1 with new information. If 3+ fixes have failed, see below. ## When 3+ Fixes Fail: Question Architecture If each fix reveals a new problem in a different place, this is not a failed hypothesis — it's a wrong architecture. Stop and question fundamentals: - Is this pattern fundamentally sound? - Are we sticking with it through inertia? - Should we refactor architecture vs. continue fixing symptoms? Discuss with the user before attempting more fixes. Present findings: "3 fix attempts, each revealed new problem." ## Quick Reference | Phase | Key Activities | Success Criteria | |-------|---------------|-----------------| | 1. Root Cause | Read errors, reproduce, trace | Understand WHAT and WHY | | 2. Pattern | Find working examples, compare | Identify differences | | 3. Hypothesis | Form theory, test minimally | Confirmed or new hypothesis | | 4. Implementation | Create test, fix, verify | Bug resolved, tests pass | ## Red Flags — Stop and Return to Phase 1 - Proposing fixes before tracing data flow - "Quick fix for now, investigate later" - "I don't fully understand but this might work" - Each fix reveals a new problem in a different place - 3+ failed fix attempts without questioning architecture ## Integration - **root-cause-tracing** — for deep call stack errors (Phase 1) - **test-driven-development** — for failing test case (Phase 4) - **defense-in-depth** — add validation layers after fix - **verification-before-completion** — verify fix before claiming success
Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.