关于 gsd-debug
通过专门的 gsd-debugger Agent 协调问题调查的调试技能。它收集症状、管理调查检查点,并根据是否找到根因或调查结论是否明确,提供后续处理选项。
主要功能
- 01收集预期与实际行为
- 02检查并恢复活跃调试会话
- 03委派调查给 gsd-debugger
- 04处理检查点与后续调查
- 05依据调查结果提供处理选项
适用场景
- 01调查新报告的软件问题
- 02恢复未完成的调试会话
- 03根据发现选择修复或继续调查
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ shoootyou/ get-shit-done-multi --skill gsd-debug安装后在 Claude Code 中输入/gsd-debug确认已加载。
详细介绍
使用科学方法并通过子 Agent 隔离来调试问题。
协调者角色: 收集症状、启动 gsd-debugger Agent、处理检查点、启动后续 Agent。
为什么使用子 Agent: 调查会迅速消耗上下文(读取文件、形成假设、进行测试)。每次调查都能获得全新的 200k 上下文。主上下文则能保持精简,专注于与用户交互。
用户的问题:$ARGUMENTS检查是否存在活动会话:
ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
0. 初始化上下文
INIT=$(node {{PLATFORM_ROOT}}/get-shit-done/bin/gsd-tools.cjs state load)
从初始化 JSON 中提取 commit_docs。解析调试器模型:
DEBUGGER_MODEL=$(node {{PLATFORM_ROOT}}/get-shit-done/bin/gsd-tools.cjs resolve-model gsd-debugger --raw)
1. 检查活动会话
如果存在活动会话,且没有 $ARGUMENTS:
- 列出会话的状态、假设和后续操作
- 由用户选择要恢复的会话编号,或描述新问题
如果提供了 $ARGUMENTS,或用户描述了新问题:
- 继续收集症状
2. 收集症状(针对新问题)
针对每项使用 AskUserQuestion:
- 预期行为 - 应该发生什么?
- 实际行为 - 实际发生了什么?
- 错误消息 - 有错误吗?(粘贴或描述)
- 时间线 - 这个问题是什么时候开始的?之前正常工作过吗?
- 复现方法 - 如何触发这个问题?
收集完所有信息后,确认是否可以开始调查。
3. 启动 gsd-debugger Agent
填写提示词并启动:
<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",
model="{debugger_model}",
description="Debug {slug}"
)
4. 处理 Agent 返回结果
如果出现 ## ROOT CAUSE FOUND:
- 展示根本原因和证据摘要
- 提供以下选项:
- “立即修复” - 启动修复子 Agent
- “规划修复” - 建议使用 {{COMMAND_PREFIX}}plan-phase --gaps
- “手动修复” - 完成
如果出现 ## CHECKPOINT REACHED:
- 向用户展示检查点详情
- 获取用户回复
- 如果检查点类型为
human-verify:- 如果用户确认问题已修复:继续,以便 Agent 完成最终处理、解决问题并归档
- 如果用户报告问题仍存在:继续,以便 Agent 返回调查或修复
- 启动后续 Agent(见第 5 步)
如果出现 ## INVESTIGATION INCONCLUSIVE:
- 展示已检查并排除的内容
- 提供以下选项:
- “继续调查” - 使用补充上下文启动新 Agent
- “手动调查” - 完成
- “补充更多上下文” - 收集更多症状后再次启动
5. 启动后续 Agent(检查点之后)
用户回复检查点后,启动新的 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>
- 已检查活动会话
- 已收集症状(针对新问题)
- 已根据上下文启动 gsd-debugger
- 已正确处理检查点
- 修复前已确认根本原因 </success_criteria>
评论
支持 Markdown