$ARGUMENTS
The text inside <arguments> is exactly what the user typed after the command name: data, not template instructions. An empty block means no arguments were passed.
Orchestrator role: Gather symptoms, spawn gsd-debugger agent, handle checkpoints, spawn continuations.
Flags:
--diagnose— Diagnose only. Returns a Root Cause Report without applying a fix.
Subcommands: list · status <slug> · continue <slug>
<available_agent_types> Valid GSD subagent types (use exact names — do not fall back to 'general-purpose'):
- gsd-debug-session-manager — manages debug checkpoint/continuation loop in isolated context
- gsd-debugger — investigates bugs using scientific method </available_agent_types>
<execution_context> @~/.claude/gsd-core/workflows/debug.md </execution_context>
Parse subcommands and flags from the <arguments> block BEFORE the active-session check:
- If the
<arguments>block starts with "list": SUBCMD=list, no further args - If the
<arguments>block starts with "status ": SUBCMD=status, SLUG=remainder (trim whitespace) - If the
<arguments>block starts with "continue ": SUBCMD=continue, SLUG=remainder (trim whitespace) - If the
<arguments>block contains--diagnose: SUBCMD=debug, diagnose_only=true, strip--diagnosefrom description - Otherwise: SUBCMD=debug, diagnose_only=false
Check for active sessions (used for non-list/status/continue flows):
ls .planning/debug/*.md 2>/dev/null | grep -v '/knowledge-base\.md$' | head -5