[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71NSN59ZV9BVTKYF8QZCZ7R":3,"skill-same:01M71NSN59ZV9BVTKYF8QZCZ7R":65},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":13,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":50,"install":51,"resources":64},"01M71NSN59ZV9BVTKYF8QZCZ7R","to-prd",null,"Use when the user wants to turn the current conversation context into a PRD and submit it as a GitHub issue. No interview — synthesizes what has already been discussed.","max-kharena\u002Fnous","max-kharena","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F249811097?v=4","01M71NQQ2DRKPEV4AF9J318N31","01M71NQQ303XV5QX5DHCZKM41V",0,"MIT","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fto-prd\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000031","产品经理","PROFESSION","适用职业",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"to prd","prd","conversation","interview","as","github","planning","submit","github issue","issue","use","when","it","user","context","2026-11-10 10:56:23",false,"---\nname: to-prd\ndescription: Use when the user wants to turn the current conversation context into a PRD and submit it as a GitHub issue. No interview — synthesizes what has already been discussed.\nversion: 0.1.0\ntype: planning\nrisk: medium\n---\n\n# To PRD\n\nTake the current conversation context and codebase understanding and produce a PRD as a GitHub issue. Do NOT interview the user — synthesize what you already know.\n\n## Workflow\n\n1. Explore the repo to understand the current state of the codebase, if you have not already.\n\n2. Sketch the major modules you would build or modify to complete the implementation. Actively look for opportunities to extract deep modules that can be tested in isolation.\n\n   A deep module — as opposed to a shallow module — encapsulates a lot of functionality behind a simple, testable interface that rarely changes. See `improve-codebase-architecture` for the deepening discipline.\n\n   Check with the user that these modules match their expectations. Check which modules they want tests written for.\n\n3. Write the PRD using the template below and submit it as a GitHub issue with `gh issue create`.\n\n## PRD template\n\n```md\n## Problem Statement\n\nThe problem the user is facing, from the user's perspective.\n\n## Solution\n\nThe solution to the problem, from the user's perspective.\n\n## User Stories\n\nA LONG, numbered list of user stories. Each in the format:\n\n1. As an \u003Cactor>, I want a \u003Cfeature>, so that \u003Cbenefit>\n\nThis list should be extensive and cover all aspects of the feature.\n\n## Implementation Decisions\n\nDecisions made during synthesis:\n\n- The modules that will be built or modified\n- The interfaces of those modules that will change\n- Technical clarifications from the developer\n- Architectural decisions\n- Schema changes\n- API contracts\n- Specific interactions\n\nDo NOT include specific file paths or code snippets. They go stale quickly.\n\n## Testing Decisions\n\n- A description of what makes a good test (only test external behavior, not implementation details)\n- Which modules will be tested\n- Prior art for the tests (similar tests already in the codebase)\n\n## Out of Scope\n\nWhat is deliberately not in this PRD.\n\n## Further Notes\n\nAnything else worth recording.\n```\n\n## Rules\n\n- Do NOT interview the user. The skill exists to compress shared context into an artifact.\n- Use the project's domain language (`UBIQUITOUS_LANGUAGE.md` \u002F `CONTEXT.md` if present) for entities and module names.\n- No file paths or line numbers in the issue body.\n- After filing, print the issue URL and a one-line summary of what the PRD covers.\n","# To PRD\n\nTake the current conversation context and codebase understanding and produce a PRD as a GitHub issue. Do NOT interview the user — synthesize what you already know.\n\n## Workflow\n\n1. Explore the repo to understand the current state of the codebase, if you have not already.\n\n2. Sketch the major modules you would build or modify to complete the implementation. Actively look for opportunities to extract deep modules that can be tested in isolation.\n\n   A deep module — as opposed to a shallow module — encapsulates a lot of functionality behind a simple, testable interface that rarely changes. See `improve-codebase-architecture` for the deepening discipline.\n\n   Check with the user that these modules match their expectations. Check which modules they want tests written for.\n\n3. Write the PRD using the template below and submit it as a GitHub issue with `gh issue create`.\n\n## PRD template\n\n```md\n## Problem Statement\n\nThe problem the user is facing, from the user's perspective.\n\n## Solution\n\nThe solution to the problem, from the user's perspective.\n\n## User Stories\n\nA LONG, numbered list of user stories. Each in the format:\n\n1. As an \u003Cactor>, I want a \u003Cfeature>, so that \u003Cbenefit>\n\nThis list should be extensive and cover all aspects of the feature.\n\n## Implementation Decisions\n\nDecisions made during synthesis:\n\n- The modules that will be built or modified\n- The interfaces of those modules that will change\n- Technical clarifications from the developer\n- Architectural decisions\n- Schema changes\n- API contracts\n- Specific interactions\n\nDo NOT include specific file paths or code snippets. They go stale quickly.\n\n## Testing Decisions\n\n- A description of what makes a good test (only test external behavior, not implementation details)\n- Which modules will be tested\n- Prior art for the tests (similar tests already in the codebase)\n\n## Out of Scope\n\nWhat is deliberately not in this PRD.\n\n## Further Notes\n\nAnything else worth recording.\n```\n\n## Rules\n\n- Do NOT interview the user. The skill exists to compress shared context into an artifact.\n- Use the project's domain language (`UBIQUITOUS_LANGUAGE.md` \u002F `CONTEXT.md` if present) for entities and module names.\n- No file paths or line numbers in the issue body.\n- After filing, print the issue URL and a one-line summary of what the PRD covers.\n",{"name":5,"risk":43,"type":29,"version":44,"description":7},"medium","0.1.0","main","05ddbcce9e3471b880e9edc7c63e4bdd40359861","skills\u002Fto-prd","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous","https:\u002F\u002Fgithub.com\u002Fmax-kharena","2026-04-28 22:54:20",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add max-kharena\u002Fnous --skill to-prd",{"tool":57,"command":58},"bunx","bunx skills add max-kharena\u002Fnous --skill to-prd",{"tool":60,"command":61},"pnpm","pnpm dlx skills add max-kharena\u002Fnous --skill to-prd","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fto-prd\u002FSKILL.md",true,[],[66,92,112,127,150,168],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":77,"publishedAt":38},"01M71NSZ170Z45TAP4CWY74YH3","write-a-skill","Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when the user wants to create, write, or build a new skill.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fwrite-a-skill\u002FSKILL.md",[72],{"categoryNo":73,"categoryName":74,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[78,79,80,81,82,83,84,85,36,86,87,88,89,33,34,90,91],"write a skill","write","a skill","create","structure","build","new skill","with","new agent","resources","progressive","new","progressive disclosure","Meta",{"skillNo":93,"name":94,"nameZh":6,"description":95,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":96,"categories":97,"keywords":101,"publishedAt":38},"01M71NSX1D1C2MK3NJ42E1GQ47","verification-before-completion","Use when about to claim work is complete, fixed, passing, ready, merged, shippable, reviewed, or verified.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fverification-before-completion\u002FSKILL.md",[98],{"categoryNo":99,"categoryName":100,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000037","律师与法务",[102,103,33,34,104,105,106,107,108,109,110,111],"verification","verification before completion","verified","claim","complete","quality","about","high","work","ready",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":38},"01M71NSVRTWNA5RYBRRRBQ4830","using-nous","Use when a request needs NOUS command routing or personality-driven planning.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fusing-nous\u002FSKILL.md",[],[119,120,121,34,33,122,123,29,124,125,126],"using nous","personality","driven","command routing","request","command","routing","router",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":133,"publishedAt":38},"01M71NST398KW57VNX72Z35MC2","using-git-worktrees","Use when NOUS execution needs isolated implementation branches, phase worktrees, parallel worktrees, or safe branch setup before executing a plan.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fusing-git-worktrees\u002FSKILL.md",[],[134,135,136,137,138,139,140,141,142,109,143,144,34,33,145,146,147,148,149],"git","worktrees","git worktrees","using git worktrees","Using git","execution","branch setup","implementation","safe","plan","phase","parallel worktrees","setup","branches","branch","parallel",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":156,"publishedAt":38},"01M71NSRQ1VYJT15323W6HE1X1","ubiquitous-language","Use when the user wants to define domain terms, build a glossary, harden terminology, or extract a DDD-style ubiquitous language. Saves to UBIQUITOUS_LANGUAGE.md.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Fubiquitous-language\u002FSKILL.md",[],[157,158,159,160,83,161,162,163,33,36,164,165,166,34,167],"language","ubiquitous language","define","ddd","domain","style","terminology","extract","terms","harden","glossary",{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":174,"publishedAt":38},"01M71NSPGTE0PY0YJ9HSDWB62B","triage-issue","Use when the user reports a bug and wants it investigated and filed as a durable GitHub issue with a TDD-based fix plan.","https:\u002F\u002Fgithub.com\u002Fmax-kharena\u002Fnous\u002Fblob\u002Fmain\u002Fskills\u002Ftriage-issue\u002FSKILL.md",[],[32,175,176,31,36,35,177,107,178,28,143,85,179,34,33,180,27],"triage issue","triage","bug","tdd","reports","fix"]