[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KKZBRSEAM3W9RQZGSB5ZYB":3,"skill-same:01M6KKZBRSEAM3W9RQZGSB5ZYB":70},{"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":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":63},"01M6KKZBRSEAM3W9RQZGSB5ZYB","readme-driven-development",null,"Develop a feature or system README-first — draft, grill, and settle a user-facing README as the canonical design contract before implementation.","nseng-ai\u002Fns","nseng-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F273792438?v=4","01M6KKN105A07WPV2TZKZXZGQF","nseng.ai","01M6KKN14MDSR9VF9739AWXG8M",2,"MIT","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Fagent-engineering\u002Freadme-driven-development\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"development","readme driven development","driven","README","develop","system","user","implementation","grill","draft","contract","feature","as","first","canonical","design contract","true","design","2026-11-10 10:12:30",false,"---\nname: readme-driven-development\ndisable-model-invocation: true\ndescription: Develop a feature or system README-first — draft, grill, and settle a user-facing README as the canonical design contract before implementation.\n---\n\n# readme-driven-development\n\nWrite the README before the software. The README is the canonical, exclusively user-facing contract: it describes the system as if it already exists — what a user sees, runs, and reads — never internal tasks or agent notes.\n\n\u003C!-- Lineage: Grill step melded from upstream grilling (mattpocock\u002Fskills, upstream path skills\u002Fproductivity\u002Fgrilling\u002F); pin + melded-surfaces registry: docs\u002Fagents\u002Fmatt-pocock-skills.md -->\n\n## Loop\n\n1. **Draft or read.** Locate the canonical README; draft one if missing. Write it as the finished product's documentation.\n2. **Grill.** Interview the user about every unsettled design decision the README exposes — one question at a time, with a recommended answer framed so a plain \"yes\" endorses it (never a \"no\" recommendation followed by \"Do you agree?\") — until the README is coherent: no contradictions, no silently invented commitments, a clear user-facing story. Explore the codebase instead of asking when the answer is discoverable.\n3. **Settle.** Fold answers back into the README. Edit obvious clarity and structure problems directly; ask before resolving contradictions, changing scope, or adding new commitments.\n4. **Report.** End with a concise pass report: README path, decisions settled, questions still open or deferred, supporting documents touched, recommended next action.\n\n## Rules\n\n- **The README is canonical.** Supporting documents may hold rationale, examples, and research, but a decision counts as settled only when it appears in — or is explicitly linked from — the README.\n- **Coherence, not completeness, is the bar.** A pass is done when the README reads as believable product documentation; open questions may remain as long as they are visible in the README.\n- **Execution state lives elsewhere.** Track slices, status, and tasks outside the README (roadmap, tracker); the README stays what a user would read.\n","# readme-driven-development\n\nWrite the README before the software. The README is the canonical, exclusively user-facing contract: it describes the system as if it already exists — what a user sees, runs, and reads — never internal tasks or agent notes.\n\n\u003C!-- Lineage: Grill step melded from upstream grilling (mattpocock\u002Fskills, upstream path skills\u002Fproductivity\u002Fgrilling\u002F); pin + melded-surfaces registry: docs\u002Fagents\u002Fmatt-pocock-skills.md -->\n\n## Loop\n\n1. **Draft or read.** Locate the canonical README; draft one if missing. Write it as the finished product's documentation.\n2. **Grill.** Interview the user about every unsettled design decision the README exposes — one question at a time, with a recommended answer framed so a plain \"yes\" endorses it (never a \"no\" recommendation followed by \"Do you agree?\") — until the README is coherent: no contradictions, no silently invented commitments, a clear user-facing story. Explore the codebase instead of asking when the answer is discoverable.\n3. **Settle.** Fold answers back into the README. Edit obvious clarity and structure problems directly; ask before resolving contradictions, changing scope, or adding new commitments.\n4. **Report.** End with a concise pass report: README path, decisions settled, questions still open or deferred, supporting documents touched, recommended next action.\n\n## Rules\n\n- **The README is canonical.** Supporting documents may hold rationale, examples, and research, but a decision counts as settled only when it appears in — or is explicitly linked from — the README.\n- **Coherence, not completeness, is the bar.** A pass is done when the README reads as believable product documentation; open questions may remain as long as they are visible in the README.\n- **Execution state lives elsewhere.** Track slices, status, and tasks outside the README (roadmap, tracker); the README stays what a user would read.\n",{"name":5,"description":7,"disable-model-invocation":42},true,"master","44a56f0d543f274b42239091b35fe4d23855f6b3","skills\u002Finternal\u002Fagent-engineering\u002Freadme-driven-development",0,"https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns","https:\u002F\u002Fgithub.com\u002Fnseng-ai","Keeping the clankers in check: Nonslop Engineering for AI","2026-10-02 12:48:53",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":42},[53,56,59],{"tool":54,"command":55},"npx","npx skills add nseng-ai\u002Fns --skill readme-driven-development",{"tool":57,"command":58},"bunx","bunx skills add nseng-ai\u002Fns --skill readme-driven-development",{"tool":60,"command":61},"pnpm","pnpm dlx skills add nseng-ai\u002Fns --skill readme-driven-development","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Fagent-engineering\u002Freadme-driven-development\u002FSKILL.md",[64],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"agents\u002Fopenai.yaml","REFERENCE","参考文档",43,"https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Fagent-engineering\u002Freadme-driven-development\u002Fagents\u002Fopenai.yaml",[71,92,121,143,166,177],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":77,"publishedAt":37},"01M6KM3VZ7JC4S6R4KATJ368EH","pr-make-accountable","Interview a PR author to establish shared understanding of intent and design decisions, then co-author the What \u002F Why \u002F Changes PR body with opt-in Requested reviewer focus.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Fpublic\u002Fprs\u002Fpr-make-accountable\u002FSKILL.md",[],[78,79,80,36,81,82,83,84,85,86,87,88,89,35,90,91],"pr","make","pr make accountable","why","reviewer","decisions","interview","intent","focus","shared","co","with","changes","pr body",{"skillNo":93,"name":94,"nameZh":6,"description":95,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":96,"categories":97,"keywords":103,"publishedAt":37},"01M6KM3NZCZ86VJ91RSVTRGTJW","typescript-style","Opinionated style guide for strict, portable TypeScript. Use when writing, designing, or reviewing TypeScript: type design, boundary validation, error handling, module architecture, and review discipline.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Ftypescript\u002Ftypescript-style\u002FSKILL.md",[98],{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",[104,105,106,36,107,108,109,110,111,24,112,22,113,114,115,116,117,118,119,120],"typescript","style","typescript style","writing","review","architecture","core","error handling","Rules","use","error-handling","study","module","error","case-study","style guide","for",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":130,"publishedAt":37},"01M6KM3HNY4WY42KMYRPS6KEJZ","typescript-fake-driven-testing","TypeScript fake-driven testing architecture. Use when writing or reviewing TS code with external dependencies, gateway interfaces, real adapters, in-memory fakes, or CLI scenario tests.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Ftypescript\u002Ftypescript-fake-driven-testing\u002FSKILL.md",[127],{"categoryNo":128,"categoryName":129,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000008","测试与质量",[131,104,21,132,133,107,134,135,109,136,137,113,138,139,140,141,89,142],"testing","fake driven testing","typescript fake driven testing","cli","memory","code","gateway","dependencies","tests","scenario","Adapters","in-memory",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":37},"01M6KM3AXC2539PENYVZJYKCP9","ns-typescript","TypeScript overlay for ns-style projects. Use when editing or reviewing TS in this repo: tsconfig baseline, pnpm\u002FVitest\u002Foxlint\u002Foxfmt\u002Fnative tsc commands, relative .ts imports, workspace subpath exports, and the exactOptionalPropertyTypes spread idiom. Repo-specific enforcement (test lanes, time seams, style guard) lives in the host repo's AGENTS.md.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Ftypescript\u002Fns-typescript\u002FSKILL.md",[],[104,150,151,152,153,154,155,156,113,157,158,159,160,105,161,162,163,120,164,165],"ns typescript","test","guard","vitest","projects","editing","repo","enforcement","references","time","host","oxlint","import","native","alternatives","imports",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":172,"publishedAt":37},"01M6KM36Y5KZ5V48M58MT42AHM","ns-typescript-style-tripwire","Invoke the ns TypeScript style Tripwire against a supplied diff or current branch.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Ftypescript\u002Fns-typescript-style-tripwire\u002FSKILL.md",[],[104,173,105,174,175,176,35],"tripwire","ns typescript style tripwire","branch","diff",{"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":37},"01M6KM313HANS0AV181X37ZM45","skill-management","Manage skills with `npx skills`: add, edit, remove, rename, update, or list skills (local or GitHub), and the nested `skills\u002F\u003Cdisposition>\u002F...\u002F\u003Cname>\u002F` \u002F flat `.agents\u002Fskills\u002F` layout conventions.","https:\u002F\u002Fgithub.com\u002Fnseng-ai\u002Fns\u002Fblob\u002Fmaster\u002Fskills\u002Finternal\u002Fskill-system\u002Fskill-management\u002FSKILL.md",[183],{"categoryNo":184,"categoryName":185,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000023","Skill与智能体开发",[187,188,189,190,191,176,192,193,54,194,195,89,196,197,198,199,200,201,35,202],"management","skill management","github","Bash","remove","nested","manage","local","cat","ln","ls","mkdir","mv","readlink","rg","lock"]