Structured debugging with session persistence

VerifiedSafe

Scientific debugging workflow with subagent isolation and investigation tracking. Manages checkpoints and continuations with context persistence across sessions.

Sby Skills Guide Bot
DevelopmentAdvanced
306/2/2026
Claude Code
#debugging#workflow#scientific-method#subagent#session-persistence

Recommended for

Our review

This skill structures debugging using a scientific method with session persistence and investigation tracking.

Strengths

  • Systematic approach that prevents jumping to conclusions
  • Context preservation through checkpoints and persistent sessions
  • Subagent isolation to keep fresh context during deep investigation
  • Active session management to resume interrupted work

Limitations

  • Requires the Task tool and a dedicated subagent, increasing complexity
  • Can be overkill for trivial bugs that could be fixed quickly
  • Relies on user cooperation for symptom gathering and checkpoint responses
When to use it

Use this skill for complex, multi-step debugging where context is easily lost.

When not to use it

Avoid it for simple anomalies that you can resolve immediately without a formal process.

Security analysis

Safe
Quality score85/100

The skill uses Bash only for listing session files and potentially creating directories, with no arbitrary command execution or dangerous operations. User inputs are gathered via AskUserQuestion and not passed directly to Bash. No exfiltration, destruction, or obfuscation is present.

No concerns found

Examples

Debug API 500 error
Debug why my API returns 500 internal server error on the /users endpoint
Investigate memory leak
Investigate memory leak in production server after processing 10k requests
Find database timeout root cause
Find root cause of database connection timeout happening every hour

name: gsd-debug description: Structured debugging workflow with session persistence and investigation tracking allowed-tools: Task, Read, Edit, Bash argument-hint: [issue]

<objective> Debug issues using scientific method with subagent isolation.

Orchestrator role: Gather symptoms, spawn gsd-debugger agent, handle checkpoints, spawn continuations.

Why subagent: Investigation burns context fast (reading files, forming hypotheses, testing). Fresh 200k context per investigation. Main context stays lean for user interaction. </objective>

<context> User's issue: $ARGUMENTS

Check for active sessions:

ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
</context> <process>

1. Check Active Sessions

If active sessions exist AND no $ARGUMENTS:

  • List sessions with status, hypothesis, next action
  • User picks number to resume OR describes new issue

If $ARGUMENTS provided OR user describes new issue:

  • Continue to symptom gathering

2. Gather Symptoms (if new issue)

Use AskUserQuestion for each:

  1. Expected behavior - What should happen?
  2. Actual behavior - What happens instead?
  3. Error messages - Any errors? (paste or describe)
  4. Timeline - When did this start? Ever worked?
  5. Reproduction - How do you trigger it?

After all gathered, confirm ready to investigate.

3. Spawn gsd-debugger Agent

Fill prompt and spawn:

<objective>
Investigate issue: {slug}

**Summary:** {trigger}
</objective>

<symptoms>
expected: {expected}
actual: {actual}
errors: {errors}
reproduction: {reproduction}
timeline: {timeline}
</symptoms>

<mode>
symptoms_prefilled: true
goal: find_and_fix
</mode>

<debug_file>
Create: .planning/debug/{slug}.md
</debug_file>
Task(
  prompt=filled_prompt,
  subagent_type="gsd-debugger",
  description="Debug {slug}"
)

4. Handle Agent Return

If ## ROOT CAUSE FOUND:

  • Display root cause and evidence summary
  • Offer options:
    • "Fix now" - spawn fix subagent
    • "Plan fix" - suggest {{COMMAND_PREFIX}}plan-phase --gaps
    • "Manual fix" - done

If ## CHECKPOINT REACHED:

  • Present checkpoint details to user
  • Get user response
  • Spawn continuation agent (see step 5)

If ## INVESTIGATION INCONCLUSIVE:

  • Show what was checked and eliminated
  • Offer options:
    • "Continue investigating" - spawn new agent with additional context
    • "Manual investigation" - done
    • "Add more context" - gather more symptoms, spawn again

5. Spawn Continuation Agent (After Checkpoint)

When user responds to checkpoint, spawn fresh agent:

<objective>
Continue debugging {slug}. Evidence is in the debug file.
</objective>

<prior_state>
Debug file: @.planning/debug/{slug}.md
</prior_state>

<checkpoint_response>
**Type:** {checkpoint_type}
**Response:** {user_response}
</checkpoint_response>

<mode>
goal: find_and_fix
</mode>
Task(
  prompt=continuation_prompt,
  subagent_type="gsd-debugger",
  description="Continue debug {slug}"
)
</process>

<success_criteria>

  • [ ] Active sessions checked
  • [ ] Symptoms gathered (if new)
  • [ ] gsd-debugger spawned with context
  • [ ] Checkpoints handled correctly
  • [ ] Root cause confirmed before fixing </success_criteria>
Related skills