[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7EV8F32RHMHTX5F7APH5QRV":3,"skill-same:01M7EV8F32RHMHTX5F7APH5QRV":46},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":14,"repositoryHtmlUrl":28,"repositoryHomepageUrl":6,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":31,"updatedAt":32,"install":33,"resources":45},"01M7EV8F32RHMHTX5F7APH5QRV","principle-fix-root-causes",null,"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.","shreshthkapai\u002Fagent-workflows","shreshthkapai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F73650860?v=4","01M7EV5VN4GMWQ8R39WQ7KYFZQ","Shreshth","01M7EV5VNTDGPW78K42W4TYBAJ",0,"MIT","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Fprinciple-fix-root-causes\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: principle-fix-root-causes\ndescription: \"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.\"\ndisable-model-invocation: true\n---\n\n# Fix Root Causes\n\nWhen debugging, do not fix symptoms. Trace every problem to its root cause and fix it there.\n\n**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.\n\n**Pattern:**\n- Reproduce first\n- Ask \"why\" until you hit the root cause\n- Do not add guards (adding a nil check to silence a crash is a symptom fix)\n- If a workaround needs a paragraph-long comment to justify it, the code is wrong (fix the code, not the comment)\n- Check for the pattern, not just the instance (grep for the same pattern, fix all instances)\n- When stuck, instrument. Don't guess (add logging, read the actual error)\n- If the deciding fact took a deep dig to find, propose the cheap, always-on signal that would have shown it at first look\n\n**Restart bugs: suspect state before code**\n\nWhen 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.\n","# Fix Root Causes\n\nWhen debugging, do not fix symptoms. Trace every problem to its root cause and fix it there.\n\n**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.\n\n**Pattern:**\n- Reproduce first\n- Ask \"why\" until you hit the root cause\n- Do not add guards (adding a nil check to silence a crash is a symptom fix)\n- If a workaround needs a paragraph-long comment to justify it, the code is wrong (fix the code, not the comment)\n- Check for the pattern, not just the instance (grep for the same pattern, fix all instances)\n- When stuck, instrument. Don't guess (add logging, read the actual error)\n- If the deciding fact took a deep dig to find, propose the cheap, always-on signal that would have shown it at first look\n\n**Restart bugs: suspect state before code**\n\nWhen 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.\n",{"name":5,"description":7,"disable-model-invocation":24},true,"main","cafd398384400c1a0ce1da059a134394f28a690e","skills\u002Fprinciple-fix-root-causes","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows","https:\u002F\u002Fgithub.com\u002Fshreshthkapai","https:\u002F\u002Fshreshth-personal-website.vercel.app\u002F","Lost....in neural networks","2026-10-30 08:24:11",{"source":8,"skillName":5,"commands":34,"prompt":44,"zipAvailable":24},[35,38,41],{"tool":36,"command":37},"npx","npx skills add shreshthkapai\u002Fagent-workflows --skill principle-fix-root-causes",{"tool":39,"command":40},"bunx","bunx skills add shreshthkapai\u002Fagent-workflows --skill principle-fix-root-causes",{"tool":42,"command":43},"pnpm","pnpm dlx skills add shreshthkapai\u002Fagent-workflows --skill principle-fix-root-causes","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Fprinciple-fix-root-causes\u002FSKILL.md",[],[47,54,61,68,75,82],{"skillNo":48,"name":49,"nameZh":6,"description":50,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":51,"categories":52,"keywords":53,"publishedAt":19},"01M7EVBMVS4ZXTSPK19XNMYNT5","workflow","Concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work, with each task routed to a playbook. Use for \u002Fworkflow, or for requests to work in this style. `aw skills always workflow` loads it into every session.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Fworkflow\u002FSKILL.md",[],[],{"skillNo":55,"name":56,"nameZh":6,"description":57,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":58,"categories":59,"keywords":60,"publishedAt":19},"01M7EVBEEEVNYKRCGBH6V5SSFA","why","Use for 'why does X work this way', 'why we picked Y', design rationale, regressions, postmortems, or data-backed thresholds. Discovers available MCPs and queries each evidence category (source control, issue tracker, long-form docs, real-time chat, infrastructure observability, error tracking, product analytics warehouse) in parallel, then returns a cited read on decisions and tradeoffs. Use how for runtime behavior.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Fwhy\u002FSKILL.md",[],[],{"skillNo":62,"name":63,"nameZh":6,"description":64,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":65,"categories":66,"keywords":67,"publishedAt":19},"01M7EVBBK5G5QKHXWVYHTRKJ0B","unslop","Cut AI tells from any writing.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Funslop\u002FSKILL.md",[],[],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":19},"01M7EVB9ED5F0RVKN70D2ZKV9W","typescript-best-practices","TypeScript best practices. Use when reading or editing any .ts or .tsx file.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Ftypescript-best-practices\u002FSKILL.md",[],[],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":19},"01M7EVB568STK9X05C00C83KBD","technical-writing","Layered technical-writing standard: Diátaxis structure, Google developer style sentences, STE instruction rules, Global English syntax. Use for \u002Ftechnical-writing or when writing or reviewing docs, RFCs, readmes, PR descriptions, or commit messages.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Ftechnical-writing\u002FSKILL.md",[],[],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M7EVB0H4V10C6GQHXX4599Y2","teach","Explain a body of work plainly so a person actually understands it. Runs the `how` and `why` skills and weaves what they find into one clear explanation. Use for 'teach me this', 'help me really understand X', 'explain this change or subsystem to me'.","https:\u002F\u002Fgithub.com\u002Fshreshthkapai\u002Fagent-workflows\u002Fblob\u002Fmain\u002Fskills\u002Fteach\u002FSKILL.md",[],[]]