[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7BJ1SFC5FCSEK4MPZZFDVTZ":3,"skill-same:01M7BJ1SFC5FCSEK4MPZZFDVTZ":45},{"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":6,"ownerDescription":30,"updatedAt":31,"install":32,"resources":44},"01M7BJ1SFC5FCSEK4MPZZFDVTZ","principle-laziness-protocol",null,"Apply when refactoring, evaluating diff size, or tempted to add abstractions, layers, or signal threading. Bias toward deletion and the smallest change that solves the problem.","negativeblueprint\u002Fpstack-claude","negativeblueprint","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F60052762?v=4","01M7BHZAPMRNRQDH1P6WGJZDVJ","Blueprint","01M7BHZAQ8PP31JVGG46PBWCFM",0,"MIT","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Fprinciple-laziness-protocol\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: principle-laziness-protocol\ndescription: \"Apply when refactoring, evaluating diff size, or tempted to add abstractions, layers, or signal threading. Bias toward deletion and the smallest change that solves the problem.\"\ndisable-model-invocation: true\n---\n\n# Laziness Protocol\n\nWriting code is cheap for you, which makes over-engineering easy. Counter it by borrowing a human maintainer's fatigue. Aim for the most result with the least code and complexity.\n\n- **Prefer deletion.** When asked to refactor or improve, look for removals before additions.\n- **Maintain a flat call hierarchy.** Avoid deep call chains. A rich interface that hides substantial work is not a deep call chain. If answering a question requires tracing through more than 3 files or layers, flatten it.\n- **Consolidate decisions.** Do not repeat the same choice in several places. Put it behind one source of truth and pass the result as a simple flag.\n- **Minimize the diff.** Make the smallest change that solves the problem. Fewer lines beat \"elegant\" boilerplate.\n- **Question the threading.** If a task asks you to pass a new signal through types, schemas, pipelines, or similar layers, stop and look for a more direct path.\n- **Sweat the small leaks.** Remove tiny pass-throughs, representation leaks, and duplicated choices before they spread. Small leaks compound into permanent coordination costs.\n\n**Prime directive:** If a human developer would find the code exhausting to maintain, it is a bad solution. Be lazy. Stay simple.\n","# Laziness Protocol\n\nWriting code is cheap for you, which makes over-engineering easy. Counter it by borrowing a human maintainer's fatigue. Aim for the most result with the least code and complexity.\n\n- **Prefer deletion.** When asked to refactor or improve, look for removals before additions.\n- **Maintain a flat call hierarchy.** Avoid deep call chains. A rich interface that hides substantial work is not a deep call chain. If answering a question requires tracing through more than 3 files or layers, flatten it.\n- **Consolidate decisions.** Do not repeat the same choice in several places. Put it behind one source of truth and pass the result as a simple flag.\n- **Minimize the diff.** Make the smallest change that solves the problem. Fewer lines beat \"elegant\" boilerplate.\n- **Question the threading.** If a task asks you to pass a new signal through types, schemas, pipelines, or similar layers, stop and look for a more direct path.\n- **Sweat the small leaks.** Remove tiny pass-throughs, representation leaks, and duplicated choices before they spread. Small leaks compound into permanent coordination costs.\n\n**Prime directive:** If a human developer would find the code exhausting to maintain, it is a bad solution. Be lazy. Stay simple.\n",{"name":5,"description":7,"disable-model-invocation":24},true,"main","6137b8c66011f1527a5bb011a5b371b4f9ca804e","skills\u002Fprinciple-laziness-protocol","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint","i do data science and everything else","2026-09-15 02:06:20",{"source":8,"skillName":5,"commands":33,"prompt":43,"zipAvailable":24},[34,37,40],{"tool":35,"command":36},"npx","npx skills add negativeblueprint\u002Fpstack-claude --skill principle-laziness-protocol",{"tool":38,"command":39},"bunx","bunx skills add negativeblueprint\u002Fpstack-claude --skill principle-laziness-protocol",{"tool":41,"command":42},"pnpm","pnpm dlx skills add negativeblueprint\u002Fpstack-claude --skill principle-laziness-protocol","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Fprinciple-laziness-protocol\u002FSKILL.md",[],[46,53,60,67,74,81],{"skillNo":47,"name":48,"nameZh":6,"description":49,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":50,"categories":51,"keywords":52,"publishedAt":19},"01M7BJ3QKR686R0GCTMYSXV8V4","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\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Fwhy\u002FSKILL.md",[],[],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":19},"01M7BJ3NSE0PNS7GDD8WG3KARB","unslop","Cut AI tells from any writing. Must always apply.","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Funslop\u002FSKILL.md",[],[],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M7BJ3M7KD8JPTD8DXEA0DRV3","typescript-best-practices","TypeScript best practices. Use when reading or editing any .ts or .tsx file.","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Ftypescript-best-practices\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M7BJ3GSRGSR7D7TZMKWEHSFH","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\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Ftechnical-writing\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M7BJ3E7EFS7Q3YFXP3VQ4P9R","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\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Fteach\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M7BJ3BPZ5BMSZC2NVX9NWDS9","tdd","Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious cheap local test target. Skip when the test path is unclear, expensive, integration-heavy, or not requested.","https:\u002F\u002Fgithub.com\u002Fnegativeblueprint\u002Fpstack-claude\u002Fblob\u002Fmain\u002Fskills\u002Ftdd\u002FSKILL.md",[],[]]