principle-fix-root-causes
GitHub用于调试场景,要求追踪症状至根本原因并修复,而非添加掩盖问题的临时措施。强调先复现、追问根因、检查状态及模式匹配,避免使用空值检查等防御性编程手段。
Trigger Scenarios
Install
npx skills add sediman-agent/OpenSkynet --skill principle-fix-root-causes -g -y
SKILL.md
Frontmatter
{
"name": "principle-fix-root-causes",
"description": "Apply when debugging. Trace each symptom to its root cause and fix it there; reproduce first, ask why until you reach it, resist nil-check guards that silence crashes.",
"disable-model-invocation": true
}
Fix Root Causes
When debugging, do not paper over symptoms. Trace every problem to its root cause and fix it there.
Why: Symptom fixes accumulate. Each workaround makes the system harder to reason about, and the real bug remains. Root-cause fixes are slower upfront but reduce total debugging time.
Pattern:
- Reproduce first (if you can't reproduce it, you can't verify your fix)
- Ask "why" until you hit the root cause
- Resist the urge to add guards (adding a nil check to silence a crash is a symptom fix)
- Check for the pattern, not just the instance (grep for the same pattern, fix all instances)
- When stuck, instrument. Don't guess (add logging, read the actual error)
Restart bugs: suspect state before code
Code doesn't change between runs. State does. When something "fails after restart," suspect stale persistent state first: config files, caches, lock files, serialized state. If clearing a state file restores behavior, prioritize state validation as the fix.
Version History
- c9d8953 Current 2026-07-05 19:53


