Skip to main content

hello-debug

调试错误、修复 bug、排查失败测试、处理异常行为,或代码行为与预期不符时使用。

Source facts

Repository
hellowind777/helloagents
Last source activity
April 29, 2026 at 12:38
Detected SKILL.md language
Chinese
Stars
710
Forks
97

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
hello-debug
description
调试错误、修复 bug、排查失败测试、处理异常行为,或代码行为与预期不符时使用。
调试相关工作必须遵循以下规范。 ## 编码前 禁止未经根因分析直接修复。 先建立可运行、可重复、可判断的反馈循环;没有反馈循环,不直接猜原因或改代码。 ## Git 作为记忆 每次调试前,先读取相关的 git 历史: - `git log --oneline -20` 查看最近变更 - `git log --all --grep="revert"` 查看过去的失败回滚 - 如果发现之前已经尝试并回滚过类似修复 → 不要重复同样的方向 ## 反馈循环优先 反馈循环是调试入口,必须能证明“问题出现 / 问题消失”: - 优先写失败测试;不适合写测试时,用 HTTP 脚本、CLI 样例输入、浏览器脚本、请求 / 事件回放、最小验证脚本、差异对比或压力循环复现 - 循环要尽量快、稳定、断言具体症状,不用“没有崩溃”代替正确性 - 非确定性问题先提高复现率,记录触发次数、失败比例和关键条件 - 实在无法建立循环时,停止并说明已尝试方式,向用户请求日志、录屏、请求记录、环境访问或授权加临时观测点 ## 四阶段调试法 ### 1. 定位 - 完整读取错误信息(不截断、不猜测) - 用反馈循环稳定复现问题(确定触发条件) - 反向追踪数据流(从错误点向上游追溯) ### 2. 分析 - 找到类似的正常工作代码,对比差异 - 检查最近的变更(git log/diff) - 识别所有隐含假设 ### 3. 假设 - 形成 3-5 个按可能性排序的假设 - 每个假设必须可证伪:写清“如果原因是 X,那么改变或观测 Y 会出现 Z” - 单变量测试(一次只改一个东西) - 记录每次尝试和结果 ### 4. 修复 - 先写失败测试复现 bug - 实现最小修复(针对根因,不是症状) - 验证修复有效且无回归 ## 临时观测点 - 临时日志必须带唯一前缀,如 `[DEBUG-a4f2]` - 禁止“到处打印再搜索”;每个观测点都要对应一个假设 - 收尾前搜索前缀,删除所有临时日志、临时验证脚本和实验文件;确需保留时移动到明确的 debug 目录并说明原因 ## 卡住升级机制 连续修复失败时,按以下阶梯升级策略: 第 1-2 次失败:正常反思,调整修复方向 第 3 次失败:停止。3 次失败意味着可能是架构问题而非局部 bug。重新从根因分析开始,质疑当前方向是否正确 第 4 次失败:扩大范围——重读所有相关文件,审查 git 历史中的相关变更,检查是否有隐藏的依赖或副作用 第 5 次失败:必须与用户讨论。提出以下选项: 1. 组合之前接近成功的尝试 2. 尝试完全相反的方向 3. 重构架构而非继续局部修补 4. 重新定义问题 超过 5 次:停止自主尝试,转为用户决策。 ## 交付检查 - [ ] 根因已识别并记录 - [ ] 已建立能证明问题出现 / 消失的反馈循环 - [ ] 有失败测试复现 bug,或已说明没有合适测试切入点并给出替代验证 - [ ] 单一修复针对根因 - [ ] 临时观测点和实验文件已清理 - [ ] 无回归引入
View on GitHub