一键导入
gsd-debug
Systematic debugging with persistent state across context resets
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Systematic debugging with persistent state across context resets
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Design thinking and decision-making for web UI. Use when designing components, layouts, color schemes, typography, or creating aesthetic interfaces. Teaches principles, not fixed values.
Add an idea to the backlog parking lot (999.x numbering)
Add phase to end of current milestone in roadmap
Capture idea or task as todo from current conversation context
Autonomous audit-to-fix pipeline — find issues, classify, fix, test, commit
Audit milestone completion against original intent before archiving
| name | gsd-debug |
| description | Systematic debugging with persistent state across context resets |
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.
Flags:
--diagnose — Diagnose only. Find root cause without applying a fix. Returns a structured Root Cause Report. Use when you want to validate the diagnosis before committing to a fix.
<available_agent_types> Valid GSD subagent types (use exact names — do not fall back to 'general-purpose'):
Parse flags from $ARGUMENTS:
--diagnose is present, set diagnose_only=true and remove the flag from the issue description.diagnose_only=false.Check for active sessions:
ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
INIT=$(node ".agent/get-shit-done/bin/gsd-tools.cjs" state load)
if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
Extract commit_docs from init JSON. Resolve debugger model:
debugger_model=$(node ".agent/get-shit-done/bin/gsd-tools.cjs" resolve-model gsd-debugger --raw)
If active sessions exist AND no $ARGUMENTS:
If $ARGUMENTS provided OR user describes new issue:
Use AskUserQuestion for each:
After all gathered, confirm ready to investigate.
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: {if diagnose_only: "find_root_cause_only", else: "find_and_fix"}
</mode>
<debug_file>
Create: .planning/debug/{slug}.md
</debug_file>
Task(
prompt=filled_prompt,
subagent_type="gsd-debugger",
model="{debugger_model}",
description="Debug {slug}"
)
If ## ROOT CAUSE FOUND (diagnose-only mode):
goal: find_and_fix to apply the fix (see step 5)/gsd-plan-phase --gapsIf ## DEBUG COMPLETE (find_and_fix mode):
/gsd-plan-phase --gaps if further work neededIf ## CHECKPOINT REACHED:
human-verify:
If ## INVESTIGATION INCONCLUSIVE:
When user responds to checkpoint OR selects "Fix now" from diagnose-only results, spawn fresh agent:
<objective>
Continue debugging {slug}. Evidence is in the debug file.
</objective>
<prior_state>
<files_to_read>
- .planning/debug/{slug}.md (Debug session state)
</files_to_read>
</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",
model="{debugger_model}",
description="Continue debug {slug}"
)
<success_criteria>