用四阶段系统化调试方法先定位根因,再制定可靠修复方案。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "Systematic Debugging" 技能: 1. 下载 https://raw.githubusercontent.com/obra/clank/main/skills/debugging/systematic-debugging/SKILL.md 2. 保存为 ~/.claude/skills/systematic-debugging/SKILL.md 3. 装好后重载技能,告诉我可以用了
请用系统化调试的四个阶段帮我分析这个线上接口 500 错误:先定义问题与影响范围,再列出可能根因、设计验证步骤,最后给出修复与回归检查建议。已知现象:昨晚发布后订单创建接口偶发 500,日志提示数据库连接超时。
按阶段组织的调试分析,包括问题定义、假设清单、验证步骤、根因判断与修复建议。
我有一段 Python 数据清洗脚本,输出记录数比上周少了 30%。请不要直接改代码,而是按系统化调试流程:明确异常、检查输入变化、提出根因假设、安排验证实验,并在确认根因后再建议修复。
一份避免盲目修改的调试计划,帮助定位是数据源、逻辑变更还是运行环境导致异常。
请以系统化调试专家的方式处理这个问题:服务部署新版本后平均响应时间从 200ms 升到 900ms。请分四阶段输出,先收集症状和边界,再提出并排序根因假设,说明每个假设如何验证,最后给出最小风险修复方案。
一个可执行的性能问题排查框架,突出证据驱动的根因定位与低风险修复路径。
Random fixes waste time and create new bugs. Quick patches mask underlying issues.
Core principle: ALWAYS find root cause before attempting fixes. Symptom fixes are failure.
Violating the letter of this process is violating the spirit of debugging.
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
If you haven't completed Phase 1, you cannot propose fixes.
Use for ANY technical issue:
Use this ESPECIALLY when:
Don't skip when:
You MUST complete each phase before proceeding to the next.
BEFORE attempting ANY fix:
Read Error Messages Carefully
Reproduce Consistently
Check Recent Changes
Gather Evidence in Multi-Component Systems
WHEN system has multiple components (CI → build → signing, API → service → database):
BEFORE proposing fixes, add diagnostic instrumentation:
For EACH component boundary:
- Log what data enters component
- Log what data exits component
- Verify environment/config propagation
- Check state at each layer
Run once to gather evidence showing WHERE it breaks
THEN analyze evidence to identify failing component
THEN investigate that specific component
Example (multi-layer system):
# Layer 1: Workflow
echo "=== Secrets available in workflow: ==="
echo "IDENTITY: ${IDENTITY:+SET}${IDENTITY:-UNSET}"
# Layer 2: Build script
echo "=== Env vars in build script: ==="
env | grep IDENTITY || echo "IDENTITY not in environment"
# Layer 3: Signing script
echo "=== Keychain state: ==="
security list-keychains
security find-identity -v
# Layer 4: Actual signing
codesign --sign "$IDENTITY" --verbose=4 "$APP"
This reveals: Which layer fails (secrets → workflow ✓, workflow → build ✗)
Trace Data Flow
WHEN error is deep in call stack:
See skills/root-cause-tracing for backward tracing technique
Quick version:
Find the pattern before fixing:
Find Working Examples
Compare Against References
Identify Differences
Understand Dependencies
Scientific method:
…
先用伪代码梳理方案与迭代思路,再高效转成可执行代码。
帮助开发者用早返回或表驱动方式简化嵌套条件分支,提升代码可读性。
帮助你为变量选择清晰准确、易维护的命名,提升代码可读性。
帮助开发者保持类接口抽象一致,避免混杂序列化、持久化等无关职责。
帮助你撰写不过时的代码注释,聚焦做什么与为什么而非时序背景。
帮助用户检索过往 Claude Code 对话,快速找回事实、决策与上下文线索。
用四阶段系统化排查框架定位缺陷根因,再制定可靠修复方案。
系统化定位 bug、测试失败与异常行为,并在修复前梳理原因与排查步骤。
系统性沿调用链逆向排查缺陷,快速定位问题的最初触发点
系统化排查测试失败、构建中断与异常运行问题,帮助快速恢复开发进度
帮助你系统复现、定位并修复代码或环境中的复杂故障问题。
帮助你为复杂问题编写调试测试并反复验证,快速定位异常根因。