[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6PVF7HATBEX1G7N50E2QT57":3,"skill-same:01M6PVF7HATBEX1G7N50E2QT57":67},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":46,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6PVF7HATBEX1G7N50E2QT57","systematic-debugging",null,"4-phase bug-fix protocol (evidence, pattern, hypothesis, verify). Use when investigating any error, failure, or unexpected behavior, handling bug reports from users or monitoring, or diagnosing test failures with non-obvious causes.","muratovv\u002Fai-hats","muratovv","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F7502801?v=4","01M6JGCBN4KEJX012GPJVSH04T","Fedor Muratov","01M6JGCBSNMN7CW3RGTPPE0MN2",3,"MIT","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fsystematic-debugging\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"systematic debugging","debugging","systematic","phase","test","bug-fix","with","error","users","pattern","reports","bug","evidence","use","fix","behavior","verify","hypothesis","monitoring","protocol","2026-11-10 10:12:30",false,"---\nname: systematic-debugging\ndescription: >-\n  4-phase bug-fix protocol (evidence, pattern, hypothesis, verify). Use\n  when investigating any error, failure, or unexpected behavior, handling\n  bug reports from users or monitoring, or diagnosing test failures with\n  non-obvious causes.\nlicense: MIT\nai_hats:\n  schema_version: 1\n  type: skill\n---\n# Systematic Debugging\n\n4-phase protocol for bug fixing and error investigation. No guess-and-check.\n\n## When to Use\nCode-level root-cause via a failing test — evidence before fixes, no\nguess-and-check. Its sibling for *production* trouble is **incident-response**: a\nlive outage with an on-call \u002F mitigation dimension starts there (stop the\nbleeding first) and only then drops into this protocol for the underlying bug.\nIf there's no running-system urgency, you're in the right place.\n\n## Phase 1: Evidence Gathering\n- Read full stack traces and error logs.\n- Inspect environment state (env vars, active processes, disk space).\n- Map affected files using `rg` and `fd`.\n\n## Phase 2: Pattern Analysis\n- Is this isolated or part of a larger pattern?\n- Identify blast radius: what else could this affect?\n- Check if it's a regression from a recent change (`git log`, `git bisect`).\n\n## Phase 3: Hypothesis & Strategy\n- State a falsifiable hypothesis: \"The error happens because [X] is in state [Y].\"\n- Design a minimal reproduction script or failing test.\n- Only then draft the fix.\n\n## Phase 4: Implementation & Verification\n- Apply minimal, surgical changes.\n- Run the reproduction script to confirm the fix.\n- Run the full test suite for regression check.\n- A task is not done until behavioral correctness is verified.\n\n## Completion\n- Root cause identified and documented\n- Fix applied with minimal surgical changes\n- Reproduction script or failing test confirms the fix\n- Full test suite passes (no regressions)\n\n## Bundled Rules\n\n### Pessimistic Verification\n1. **Anti-Momentum**: Do NOT proceed to the next step until the current one is physically verified (tests, lint, check command).\n2. **Assumption Audit**: Before execution, list assumptions. If testable, test first.\n3. **Foundation First**: When modifying shared components, sanity check after every file modification.\n4. **No Premature Optimization**: Do not clean up unrelated code during a critical fix.\n\n## Anti-Patterns\n- Guess-and-check — changing things randomly hoping it works\n- Fixing symptoms instead of root cause — the bug will return\n- Swallowing the failure, returning a default, or skipping the crashing case, while the cause stays. That handler is not the fix. The fix is the change that makes the failing test green because the cause is gone.\n- Skipping regression check — fix one bug, introduce two more\n","# Systematic Debugging\n\n4-phase protocol for bug fixing and error investigation. No guess-and-check.\n\n## When to Use\nCode-level root-cause via a failing test — evidence before fixes, no\nguess-and-check. Its sibling for *production* trouble is **incident-response**: a\nlive outage with an on-call \u002F mitigation dimension starts there (stop the\nbleeding first) and only then drops into this protocol for the underlying bug.\nIf there's no running-system urgency, you're in the right place.\n\n## Phase 1: Evidence Gathering\n- Read full stack traces and error logs.\n- Inspect environment state (env vars, active processes, disk space).\n- Map affected files using `rg` and `fd`.\n\n## Phase 2: Pattern Analysis\n- Is this isolated or part of a larger pattern?\n- Identify blast radius: what else could this affect?\n- Check if it's a regression from a recent change (`git log`, `git bisect`).\n\n## Phase 3: Hypothesis & Strategy\n- State a falsifiable hypothesis: \"The error happens because [X] is in state [Y].\"\n- Design a minimal reproduction script or failing test.\n- Only then draft the fix.\n\n## Phase 4: Implementation & Verification\n- Apply minimal, surgical changes.\n- Run the reproduction script to confirm the fix.\n- Run the full test suite for regression check.\n- A task is not done until behavioral correctness is verified.\n\n## Completion\n- Root cause identified and documented\n- Fix applied with minimal surgical changes\n- Reproduction script or failing test confirms the fix\n- Full test suite passes (no regressions)\n\n## Bundled Rules\n\n### Pessimistic Verification\n1. **Anti-Momentum**: Do NOT proceed to the next step until the current one is physically verified (tests, lint, check command).\n2. **Assumption Audit**: Before execution, list assumptions. If testable, test first.\n3. **Foundation First**: When modifying shared components, sanity check after every file modification.\n4. **No Premature Optimization**: Do not clean up unrelated code during a critical fix.\n\n## Anti-Patterns\n- Guess-and-check — changing things randomly hoping it works\n- Fixing symptoms instead of root cause — the bug will return\n- Swallowing the failure, returning a default, or skipping the crashing case, while the cause stays. That handler is not the fix. The fix is the change that makes the failing test green because the cause is gone.\n- Skipping regression check — fix one bug, introduce two more\n",{"name":5,"ai_hats":44,"license":15,"description":7},{"type":45,"schema_version":46},"skill",1,"master","f922a7f627276366873d546942d9ad899a86f71a","packages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fsystematic-debugging","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats","https:\u002F\u002Fgithub.com\u002Fmuratovv","2026-11-05 20:59:10",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add muratovv\u002Fai-hats --skill systematic-debugging",{"tool":59,"command":60},"bunx","bunx skills add muratovv\u002Fai-hats --skill systematic-debugging",{"tool":62,"command":63},"pnpm","pnpm dlx skills add muratovv\u002Fai-hats --skill systematic-debugging","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fsystematic-debugging\u002FSKILL.md",true,[],[68,93,116,140,154,177],{"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":39},"01M6PVFB1SM738R2SRSRSF7CY6","tool-evaluation-protocol","Time-bounded protocol for evaluating new tools, libraries, or methodologies before adoption. Use when evaluating a candidate dependency for the project, researching a methodology (e.g. ML\u002FLLM frameworks, testing approaches), or following up on a hype-driven recommendation.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Ftool-evaluation-protocol\u002FSKILL.md",[],[75,76,77,38,32,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92],"tool evaluation protocol","tool","Evaluation","candidate","bounded","for","recommendation","project","time","frameworks","up","dependency","testing","Tools","methodology","adoption","libraries","ml",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":104,"publishedAt":39},"01M6PVF3MTQN3RPF73AN34856J","skill-template","Canonical template and validation guide for ai-hats skills. Use when creating a new skill, reviewing an existing one for structural compliance, or deciding which pattern fits a new behavior.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fskill-template\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[105,106,32,107,80,108,109,110,28,111,112,34,113,114,115],"skill template","template","Existing","which","canonical","structural","new skill","guide","hats","compliance","validation",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":123,"publishedAt":39},"01M6PVF06SCV28QARM5MQPANC9","skill-optimization","Audit and refactor library components to eliminate redundancy and staleness. Use during periodic library maintenance, after adding multiple new skills or rules, when a role's token budget is too high, or after retrospectives identify component issues.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fskill-optimization\u002FSKILL.md",[122],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},[124,125,126,127,128,129,130,131,132,32,133,134,135,136,137,138,139],"Optimization","skill optimization","role","token budget","high","library","token","maintenance","periodic","Rules","Budget","refactor","audit","issues","component","components",{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":146,"publishedAt":39},"01M6PVEXM9717016T9MW82HDCT","silent-fallback-gate","PreToolUse hook — refuses an Edit or Write that adds an inert broad except. Use when a Python edit was blocked for a silent fallback.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fsilent-fallback-gate\u002FSKILL.md",[],[147,148,149,150,151,152,80,153,32],"silent fallback gate","fallback","gate","write","python","edit","hook",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":161,"publishedAt":39},"01M6PVESM49C5NT7SB7N3F76VS","retro-to-framework","Convert an observation about agent behavior — from a retrospective or from a single incident — into a framework-level change (hook, rule, skill, skill update). Use after a retrospective identifies problems that are not project-specific, after an incident where an agent misapplied a component it had read, when CLAUDE.md band-aids accumulate (more than 3 per-project rules that could be generic), or when the same problem recurs across multiple projects.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fretro-to-framework\u002FSKILL.md",[160],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},[162,163,164,82,165,166,167,168,169,170,171,172,173,32,34,133,174,175,138,176],"retro to framework","retro","framework","generic","single","change","skill update","more","about","problem","across","incident","convert","projects","retrospective",{"skillNo":178,"name":179,"nameZh":6,"description":180,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":181,"categories":182,"keywords":186,"publishedAt":39},"01M6PVEQ05ETVVB2NX7FSYXRV2","py-security-lint","PostToolUse hook — reports the project's own ruff security (`S`) findings on every `.py` you Edit\u002FWrite, non-blockingly; fail-open, no manual invocation.","https:\u002F\u002Fgithub.com\u002Fmuratovv\u002Fai-hats\u002Fblob\u002Fmaster\u002Fpackages\u002Fai-hats-library\u002Fsrc\u002Fai_hats_library\u002Fexperimental\u002Fusage\u002Fskills\u002Fpy-security-lint\u002FSKILL.md",[183],{"categoryNo":184,"categoryName":185,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000007","代码审查",[187,188,189,29,190,82,191,150,152,153,192,193],"security","lint","py security lint","ruff","open","you","manual"]