--- name: omd-debug description: "调试:复现失败,用证据定位根因,最小化修复,并用回归测试锁定。触发词:debug / 调试 / 报错 / 崩溃 / 为什么失败 / 修 bug / 排查。" --- # oh-my-dsh · Debug 结构化调试 按「复现 → 定位 → 最小修复 → 回归验证」排查故障,每一步都留证据。对应 OMC 的 `debug` 工具 skill。 ## 何时用 - 有报错/崩溃/异常行为,需要找出根因并修掉。 - 用户说「修一下」「为什么失败」「排查这个 bug」。 ## 调试纪律 1. **复现**:先用 `pwsh`/`bash` 拿到**确切的**报错信息(命令 + 完整 stderr + 退出码),别凭记忆。 2. **定位**:二分缩小范围——`read` 读相关代码、`grep` 追调用链、加日志/断点式打印,把根因锁定到具体 file:line。 3. **最小修复**:只改必要的,别顺手重构(配合 `omd-minimal-code-discipline`)。 4. **回归验证**:补/跑一条测试证明修好了,再确认没引入新问题。 ## 与其它模式的关系 - 定位「在哪里」用 `omd-deepsearch`;理解「为什么这么设计」用 `omd-deep-analyze`;`debug` 专注「为什么坏了 + 修好」。 - 修完交给 `omd-review` 复核;需要反复验证的交给 `omd-verify`。 ## 收尾:HUD 用 `omd-hud` 输出排查轨迹:`timeline`(复现→定位→修复→验证)+ `table`(根因/文件:行/修复/回归测试)。让「坏了什么、改了什么、怎么证明好了」一眼可见。 ## 反模式 - 别没复现就改——那是猜,不是 debug。 - 别只看第一处报错就下结论,追到根因。 - 别修完不验证就宣称「已修好」。