[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DENT0WKWVPCSA755Z7XH45":3,"skill-same:01M6DENT0WKWVPCSA755Z7XH45":88},{"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":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":14,"repositoryHtmlUrl":54,"repositoryHomepageUrl":6,"ownerHtmlUrl":55,"ownerBlogUrl":56,"ownerDescription":6,"updatedAt":57,"install":58,"resources":71},"01M6DENT0WKWVPCSA755Z7XH45","agent-builder",null,"Tier 2 agent composer: base body + constitution + manifesto → composed agent + routing entry in momentum\u002Fagents.json. Invoked by sprint-dev for change_type:agent stories. Also user-invocable.","iamsteveholmes\u002Fmomentum","iamsteveholmes","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F92353?v=4","01M6DENK56DRSF72CJ6FJQ4RT1","Steve Holmes","01M6DENK9KCZRYFFEB0M689F7D",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fagent-builder\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"builder","agent builder","body","change","manifesto","entry","stories","for","true","sprint","constitution","type","base","edit","write","read","grep","json","dev","routing","2026-11-10 10:12:30",false,"---\nname: replica-launch\ndescription: >-\n  Writes the launch for an app clone: the landing page built on the\n  positioning angle, pricing set against the original's public pricing and\n  its users' complaints, and the App Store and Google Play listing linted\n  against the stores' limits and copycat rules. Use when the user says\n  \"landing page\", \"pricing\", \"how much should I charge\", \"App Store\n  listing\", \"store screenshots\", \"launch plan\", \"Product Hunt\", or after\n  \u002Freplica-brand.\n---\n\n# replica-launch\n\nReads `replica\u002Ffixes.md` (the angle and the evidence), `replica\u002Fbrand.md`,\nand `replica\u002Fbrand.json`. Writes `replica\u002Flaunch\u002F`: `landing.md`,\n`pricing.md`, `listing.json`, `launch-plan.md`.\n\n```bash\npython3 listing.py replica\u002Flaunch\u002Flisting.json      # limits, claims, the original's name\n```\n\nStart from `listing.example.json` in this folder.\n\n## The rules\n\n- **No fake proof.** No invented testimonials, user counts, star ratings,\n  press logos or \"trusted by\" rows. An empty proof section is better than a\n  fake one. Real beta users, with permission, are fine.\n- **No reviewer quotes as testimonials.** The original's reviews are research.\n- **The original's name stays out** of your app name, store listing, keywords\n  and ads. Apple and Google reject it, and it invites a takedown.\n\n## Step 1: landing page\n\n`landing.md`, section by section, then build it in the project:\n\n1. **Hero**: the angle as a headline (what you do, for whom), one line under\n   it, one button. Screenshot of the real product.\n2. **The problem**: the top two \"hate\" themes, in plain words. Paraphrase,\n   do not quote reviewers.\n3. **How it works**: three steps, from the core flow.\n4. **Features**: each tied to a fix from `fixes.md`. Lead with the fixes,\n   not the parity features. Parity is the price of entry.\n5. **Pricing**: the table from step 2.\n6. **FAQ**: the real objections, including \"can I import from {{category}}\n   tools?\" if you built an importer.\n7. **Final call to action.**\n\nCopy in the brand voice. Run replica-design's contrast check on the page.\n\n## Step 2: pricing\n\n`pricing.md`:\n\n- The original's public pricing page and 2 or 3 alternatives, in one table,\n  with the URL and the date read. Prices change, so the date matters.\n- What reviewers said about price and billing, from `feedback.md`, with counts.\n- The model: free plan or trial, per seat or flat, monthly and annual\n  (annual usually 2 months free).\n- Three tiers at most. Name them by who they are for.\n- Fix the billing complaints in the product: one-click cancel, clear renewal\n  emails, no surprise per-seat jumps.\n- The Stripe products and prices to create (the user creates them).\n\n## Step 3: store listing\n\nFill `listing.json`, then:\n\n```bash\npython3 listing.py replica\u002Flaunch\u002Flisting.json\n```\n\nIt checks App Store limits (name 30, subtitle 30, promotional text 170,\nkeywords 100, description 4000) and Google Play's (title 30, short\ndescription 80, full 4000), counts characters the way a person does, flags\nranking and price claims in short fields, emoji, wasted keyword characters,\nand **any name from `avoid`** anywhere in the listing. Exit 1 on an error.\n\nApple's App Review Guideline 4.1 (Copycats) rejects apps that simply copy a\npopular app or make minor changes to another app's name or UI. Your fixes\nand your own brand are what get you through review, so make them visible in\nthe screenshots and the first lines of the description.\n\nAlso prepare: screenshots at the current required sizes (check App Store\nConnect and Play Console when you upload, they change), privacy labels and\nthe data safety form, privacy policy and support URLs, age rating, and review\nnotes with a demo account the reviewer can use.\n\n## Step 4: launch plan\n\n`launch-plan.md`: a waitlist or beta list before launch, analytics and error\ntracking live, where the original's unhappy users talk (the Reddit threads\nand communities from the research), a Product Hunt or Hacker News post that\nleads with the fix, and the first 10 users to talk to by hand.\n\n## Output\n\n`replica\u002Flaunch\u002F` complete, the landing page built, `listing.py` passing.\nNext: `\u002Freplica-deploy`.\n","# replica-launch\n\nReads `replica\u002Ffixes.md` (the angle and the evidence), `replica\u002Fbrand.md`,\nand `replica\u002Fbrand.json`. Writes `replica\u002Flaunch\u002F`: `landing.md`,\n`pricing.md`, `listing.json`, `launch-plan.md`.\n\n```bash\npython3 listing.py replica\u002Flaunch\u002Flisting.json      # limits, claims, the original's name\n```\n\nStart from `listing.example.json` in this folder.\n\n## The rules\n\n- **No fake proof.** No invented testimonials, user counts, star ratings,\n  press logos or \"trusted by\" rows. An empty proof section is better than a\n  fake one. Real beta users, with permission, are fine.\n- **No reviewer quotes as testimonials.** The original's reviews are research.\n- **The original's name stays out** of your app name, store listing, keywords\n  and ads. Apple and Google reject it, and it invites a takedown.\n\n## Step 1: landing page\n\n`landing.md`, section by section, then build it in the project:\n\n1. **Hero**: the angle as a headline (what you do, for whom), one line under\n   it, one button. Screenshot of the real product.\n2. **The problem**: the top two \"hate\" themes, in plain words. Paraphrase,\n   do not quote reviewers.\n3. **How it works**: three steps, from the core flow.\n4. **Features**: each tied to a fix from `fixes.md`. Lead with the fixes,\n   not the parity features. Parity is the price of entry.\n5. **Pricing**: the table from step 2.\n6. **FAQ**: the real objections, including \"can I import from {{category}}\n   tools?\" if you built an importer.\n7. **Final call to action.**\n\nCopy in the brand voice. Run replica-design's contrast check on the page.\n\n## Step 2: pricing\n\n`pricing.md`:\n\n- The original's public pricing page and 2 or 3 alternatives, in one table,\n  with the URL and the date read. Prices change, so the date matters.\n- What reviewers said about price and billing, from `feedback.md`, with counts.\n- The model: free plan or trial, per seat or flat, monthly and annual\n  (annual usually 2 months free).\n- Three tiers at most. Name them by who they are for.\n- Fix the billing complaints in the product: one-click cancel, clear renewal\n  emails, no surprise per-seat jumps.\n- The Stripe products and prices to create (the user creates them).\n\n## Step 3: store listing\n\nFill `listing.json`, then:\n\n```bash\npython3 listing.py replica\u002Flaunch\u002Flisting.json\n```\n\nIt checks App Store limits (name 30, subtitle 30, promotional text 170,\nkeywords 100, description 4000) and Google Play's (title 30, short\ndescription 80, full 4000), counts characters the way a person does, flags\nranking and price claims in short fields, emoji, wasted keyword characters,\nand **any name from `avoid`** anywhere in the listing. Exit 1 on an error.\n\nApple's App Review Guideline 4.1 (Copycats) rejects apps that simply copy a\npopular app or make minor changes to another app's name or UI. Your fixes\nand your own brand are what get you through review, so make them visible in\nthe screenshots and the first lines of the description.\n\nAlso prepare: screenshots at the current required sizes (check App Store\nConnect and Play Console when you upload, they change), privacy labels and\nthe data safety form, privacy policy and support URLs, age rating, and review\nnotes with a demo account the reviewer can use.\n\n## Step 4: launch plan\n\n`launch-plan.md`: a waitlist or beta list before launch, analytics and error\ntracking live, where the original's unhappy users talk (the Reddit threads\nand communities from the research), a Product Hunt or Hacker News post that\nleads with the fix, and the first 10 users to talk to by hand.\n\n## Output\n\n`replica\u002Flaunch\u002F` complete, the landing page built, `listing.py` passing.\nNext: `\u002Freplica-deploy`.\n",{"name":49,"description":50},"replica-launch","Writes the launch for an app clone: the landing page built on the positioning angle, pricing set against the original's public pricing and its users' complaints, and the App Store and Google Play listing linted against the stores' limits and copycat rules. Use when the user says \"landing page\", \"pricing\", \"how much should I charge\", \"App Store listing\", \"store screenshots\", \"launch plan\", \"Product Hunt\", or after \u002Freplica-brand.","main","d32244fd815eaa4d6bb54fa1751c70f44528fa42","skills\u002Fmomentum\u002Fskills\u002Fagent-builder","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes","http:\u002F\u002Fcapitalcodemonkey.blogspot.com","2026-11-09 05:58:39",{"source":8,"skillName":49,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add iamsteveholmes\u002Fmomentum --skill replica-launch",{"tool":64,"command":65},"bunx","bunx skills add iamsteveholmes\u002Fmomentum --skill replica-launch",{"tool":67,"command":68},"pnpm","pnpm dlx skills add iamsteveholmes\u002Fmomentum --skill replica-launch","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fagent-builder\u002FSKILL.md",true,[72,78,84],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"listing.example.json","REFERENCE","参考文档",1223,"https:\u002F\u002Fgithub.com\u002FWhiteChronos\u002FChatGPT\u002Fblob\u002Fmain\u002Fplugins\u002Freplica-controller\u002Fskills\u002Freplica-launch\u002Flisting.example.json",{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"listing.py","SCRIPT","脚本",7345,"https:\u002F\u002Fgithub.com\u002FWhiteChronos\u002FChatGPT\u002Fblob\u002Fmain\u002Fplugins\u002Freplica-controller\u002Fskills\u002Freplica-launch\u002Flisting.py",{"path":85,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":86,"sourceHtmlUrl":87},"workflow.md",12815,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fagent-builder\u002Fworkflow.md",[89,110,128,148,163,180],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":44},"01M6DES6J0HGT27SEJJWF316FV","upstream-fix","Traces quality failures upstream to spec, rule, or workflow root cause. Proposes fixes at the right level.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fupstream-fix\u002FSKILL.md",[],[96,97,98,99,100,101,102,103,104,105,106,107,108,109],"upstream","upstream fix","fix","to spec","root cause","traces","fixes","at","high","root","rule","quality","workflow","spec",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":44},"01M6DES4A08NFWQM0AJBR2RRX5","triage","Dedup gate + batch-classify observations into five classes, enrich ARTIFACTs, batch-approve, delegate to intake\u002Fdecision or queue.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Ftriage\u002FSKILL.md",[],[112,117,118,119,120,121,122,123,104,124,125,126,127],"batch","intake","artifacts","decision","queue","delegate","approve","observations","enrich","classify","gate",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":134,"publishedAt":44},"01M6DERYX8W6Z9Z4RM5V6E9HED","sprint-planning","Sprint planning — story selection, team composition, Gherkin specs, and visual companion plan gate for developer sign-off.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-planning\u002FSKILL.md",[],[135,33,136,104,137,138,31,139,140,141,142,143,144,145,146,147,127],"planning","sprint planning","visual companion","plan gate","companion","sign","visual","selection","Composition","Story","plan","team","developer",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":44},"01M6DERWCP7Y0WDY5KG6109RQB","sprint-manager","Sole writer of stories\u002Findex.json and sprints\u002Findex.json — validates state transitions, activates sprints, manages epic membership.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-manager\u002FSKILL.md",[],[155,33,156,157,30,158,159,160,41,161,162],"sprint manager","manager","writer","sprints","EPIC","transitions","index","state",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":169,"publishedAt":44},"01M6DERS7B4QHAH5GZHHBA4AHB","sprint-dev","Sprint execution — dependency-driven story development, post-merge AVFL, and team review.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fsprint-dev\u002FSKILL.md",[],[42,170,33,146,171,172,173,174,175,176,104,177,178,179,144],"sprint dev","execution","team review","development","merge","review","dependency","post","avfl","driven",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":44},"01M6DERP0A271FYSAXCV85GF04","retro","Sprint retrospective — transcript audit engine (dynamic Workflow), story verification, findings document, and sprint closure.","https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fretro\u002FSKILL.md",[],[182,187,188,104,189,33,190,144,191,192,193,194,195,108],"sprint retrospective","closure","dynamic workflow","document","engine","audit","verification","transcript","retrospective"]