[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DEQGW0QXDQWXFS5RXRT2BY":3,"skill-same:01M6DEQGW0QXDQWXFS5RXRT2BY":74},{"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":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":14,"repositoryHtmlUrl":38,"repositoryHomepageUrl":6,"ownerHtmlUrl":39,"ownerBlogUrl":40,"ownerDescription":6,"updatedAt":41,"install":42,"resources":55},"01M6DEQGW0QXDQWXFS5RXRT2BY","decision",null,"Capture strategic decisions from assessments or research. Walk findings, record adopt\u002Freject\u002Fdefer, write a linked SDR document.","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\u002Fdecision\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27],"research","capture","decisions","write","document","record","adopt","strategic","high","2026-11-10 10:12:30",false,"---\nname: \"cpo-review\"\ndescription: \"\u002Fcs:cpo-review \u003Cplan> — JTBD-driven interrogation of product roadmap, PMF signal, and portfolio focus. Use when committing a quarter's roadmap, deciding whether to kill a feature, or claiming PMF without a retention curve.\"\n---\n\n# \u002Fcs:cpo-review — CPO Forcing Questions\n\n**Command:** `\u002Fcs:cpo-review \u003Cplan>`\n\nThe JTBD-driven builder cuts the roadmap in half. Six questions to surface what to ship and what to kill.\n\n## When to Run\n\n- Before quarterly roadmap commitment\n- Before launching a new product line\n- Before adding > 3 features to a release\n- When retention is flat or declining\n- When the team is debating \"should we build X?\"\n\n## The Six CPO Questions\n\n### 1. JTBD\n**What job is this feature hired to do, in the user's words?**\n- Not \"improve onboarding.\" \"Help a new ops manager get their first deal closed within 7 days.\"\n- Job ≠ feature. Hire ≠ try.\n\n### 2. North Star Metric\n**What user behavior does this move, and how does that ladder to the North Star?**\n- The metric must be leading, behavior-based, and value-correlated.\n- If you can't trace the feature to the North Star, don't build it.\n\n### 3. PMF Signal\n**What's the retention curve for users who hire this job — is it flat, decaying, or smiling?**\n- Flat or smiling = PMF signal. Decaying = no PMF.\n- \"Users like it in surveys\" is not a signal.\n\n### 4. RICE Score\n**Reach, Impact, Confidence, Effort — what's the score and where does this rank in the queue?**\n```bash\npython product-team\u002Fskills\u002Fproduct-manager-toolkit\u002Fscripts\u002Frice_prioritizer.py\n```\n\n### 5. Opportunity Cost\n**What gets cut if this ships? Name the specific initiative or feature.**\n- Headcount and time are zero-sum. The cut list is the focus list.\n\n### 6. Kill Criteria\n**What signal would tell you in 90 days that this was the wrong bet?**\n- Define the metric and threshold in writing, before launch.\n- If you can't define a kill criterion, you can't ship responsibly.\n\n## Workflow\n\n1. **Run the analyses:**\n   ```bash\n   python ..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002Fscripts\u002Fpmf_scorer.py\n   python ..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002Fscripts\u002Fportfolio_analyzer.py\n   ```\n2. **Answer the six questions.**\n3. **Apply the verdict.**\n\n## Output Format\n\n```markdown\n# CPO Review: \u003Cfeature\u002Fplan>\n**Date:** YYYY-MM-DD\n\n## JTBD\n> \u003Cone sentence in user voice>\n\n## North Star Link\n- Metric moved: \u003Cname>\n- Expected delta: \u003C%>\n\n## PMF Signal\n- Retention curve shape: flat \u002F smiling \u002F decaying\n- Cohort sample size: N\n\n## Score\n- RICE: \u003Cnumber>\n- Rank in queue: #N of M\n\n## Cut List\n- Cut: \u003Cinitiative>\n- Reason: \u003Cwhy this matters more>\n\n## Kill Criteria (90 days)\n- Metric: \u003Cname>\n- Threshold: \u003Cvalue>\n- Action if missed: \u003Ckill | iterate>\n\n## Verdict\n? SHIP | ? SHARPEN | ? KILL\n```\n\n## Routing\n\n- `\u002Fcs:cmo-review` — does the positioning support this feature?\n- `\u002Fcs:execute` — build the 90-day plan\n- `\u002Fcs:post-mortem` — if kill criteria triggered\n\n## Related\n\n- Agent: [`cs-cpo-advisor`](..\u002F..\u002Fagents\u002Fcs-cpo-advisor.md)\n- Skill: [`cpo-advisor`](..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002FSKILL.md)\n- Execution: `product-team\u002Fskills\u002Fproduct-manager-toolkit\u002F`\n\n---\n\n**Version:** 1.0.0\n","# \u002Fcs:cpo-review — CPO Forcing Questions\n\n**Command:** `\u002Fcs:cpo-review \u003Cplan>`\n\nThe JTBD-driven builder cuts the roadmap in half. Six questions to surface what to ship and what to kill.\n\n## When to Run\n\n- Before quarterly roadmap commitment\n- Before launching a new product line\n- Before adding > 3 features to a release\n- When retention is flat or declining\n- When the team is debating \"should we build X?\"\n\n## The Six CPO Questions\n\n### 1. JTBD\n**What job is this feature hired to do, in the user's words?**\n- Not \"improve onboarding.\" \"Help a new ops manager get their first deal closed within 7 days.\"\n- Job ≠ feature. Hire ≠ try.\n\n### 2. North Star Metric\n**What user behavior does this move, and how does that ladder to the North Star?**\n- The metric must be leading, behavior-based, and value-correlated.\n- If you can't trace the feature to the North Star, don't build it.\n\n### 3. PMF Signal\n**What's the retention curve for users who hire this job — is it flat, decaying, or smiling?**\n- Flat or smiling = PMF signal. Decaying = no PMF.\n- \"Users like it in surveys\" is not a signal.\n\n### 4. RICE Score\n**Reach, Impact, Confidence, Effort — what's the score and where does this rank in the queue?**\n```bash\npython product-team\u002Fskills\u002Fproduct-manager-toolkit\u002Fscripts\u002Frice_prioritizer.py\n```\n\n### 5. Opportunity Cost\n**What gets cut if this ships? Name the specific initiative or feature.**\n- Headcount and time are zero-sum. The cut list is the focus list.\n\n### 6. Kill Criteria\n**What signal would tell you in 90 days that this was the wrong bet?**\n- Define the metric and threshold in writing, before launch.\n- If you can't define a kill criterion, you can't ship responsibly.\n\n## Workflow\n\n1. **Run the analyses:**\n   ```bash\n   python ..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002Fscripts\u002Fpmf_scorer.py\n   python ..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002Fscripts\u002Fportfolio_analyzer.py\n   ```\n2. **Answer the six questions.**\n3. **Apply the verdict.**\n\n## Output Format\n\n```markdown\n# CPO Review: \u003Cfeature\u002Fplan>\n**Date:** YYYY-MM-DD\n\n## JTBD\n> \u003Cone sentence in user voice>\n\n## North Star Link\n- Metric moved: \u003Cname>\n- Expected delta: \u003C%>\n\n## PMF Signal\n- Retention curve shape: flat \u002F smiling \u002F decaying\n- Cohort sample size: N\n\n## Score\n- RICE: \u003Cnumber>\n- Rank in queue: #N of M\n\n## Cut List\n- Cut: \u003Cinitiative>\n- Reason: \u003Cwhy this matters more>\n\n## Kill Criteria (90 days)\n- Metric: \u003Cname>\n- Threshold: \u003Cvalue>\n- Action if missed: \u003Ckill | iterate>\n\n## Verdict\n? SHIP | ? SHARPEN | ? KILL\n```\n\n## Routing\n\n- `\u002Fcs:cmo-review` — does the positioning support this feature?\n- `\u002Fcs:execute` — build the 90-day plan\n- `\u002Fcs:post-mortem` — if kill criteria triggered\n\n## Related\n\n- Agent: [`cs-cpo-advisor`](..\u002F..\u002Fagents\u002Fcs-cpo-advisor.md)\n- Skill: [`cpo-advisor`](..\u002F..\u002F..\u002Fc-level-advisor\u002Fskills\u002Fcpo-advisor\u002FSKILL.md)\n- Execution: `product-team\u002Fskills\u002Fproduct-manager-toolkit\u002F`\n\n---\n\n**Version:** 1.0.0\n",{"name":33,"description":34},"cpo-review","\u002Fcs:cpo-review \u003Cplan> — JTBD-driven interrogation of product roadmap, PMF signal, and portfolio focus. Use when committing a quarter's roadmap, deciding whether to kill a feature, or claiming PMF without a retention curve.","main","510dd2917e051cc953dc55f56fd6ef442aa01b38","skills\u002Fmomentum\u002Fskills\u002Fdecision","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":33,"commands":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add iamsteveholmes\u002Fmomentum --skill cpo-review",{"tool":48,"command":49},"bunx","bunx skills add iamsteveholmes\u002Fmomentum --skill cpo-review",{"tool":51,"command":52},"pnpm","pnpm dlx skills add iamsteveholmes\u002Fmomentum --skill cpo-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fdecision\u002FSKILL.md",true,[56,62,66,70],{"path":57,"resourceType":58,"resourceTypeDesc":59,"sizeBytes":60,"sourceHtmlUrl":61},"evals\u002Feval-decision-card-cap-and-floor.md","REFERENCE","参考文档",2648,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fdecision\u002Fevals\u002Feval-decision-card-cap-and-floor.md",{"path":63,"resourceType":58,"resourceTypeDesc":59,"sizeBytes":64,"sourceHtmlUrl":65},"evals\u002Feval-three-input-flows-and-decision-capture.md",9155,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fdecision\u002Fevals\u002Feval-three-input-flows-and-decision-capture.md",{"path":67,"resourceType":58,"resourceTypeDesc":59,"sizeBytes":68,"sourceHtmlUrl":69},"references\u002Fsdr-template.md",6172,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fdecision\u002Freferences\u002Fsdr-template.md",{"path":71,"resourceType":58,"resourceTypeDesc":59,"sizeBytes":72,"sourceHtmlUrl":73},"workflow.md",14689,"https:\u002F\u002Fgithub.com\u002Fiamsteveholmes\u002Fmomentum\u002Fblob\u002Fmain\u002Fskills\u002Fmomentum\u002Fskills\u002Fdecision\u002Fworkflow.md",[75,95,112,134,151,169],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":28},"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",[],[82,83,84,85,86,87,88,89,27,90,91,92,93,94],"upstream","upstream fix","fix","to spec","root cause","traces","fixes","at","root","rule","quality","workflow","spec",{"skillNo":96,"name":97,"nameZh":6,"description":98,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":99,"categories":100,"keywords":101,"publishedAt":28},"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",[],[97,102,103,104,5,105,106,107,27,108,109,110,111],"batch","intake","artifacts","queue","delegate","approve","observations","enrich","classify","gate",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":28},"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",[],[119,120,121,27,122,123,124,125,126,127,128,129,130,131,132,133,111],"planning","sprint","sprint planning","visual companion","plan gate","for","companion","sign","visual","selection","Composition","Story","plan","team","developer",{"skillNo":135,"name":136,"nameZh":6,"description":137,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":138,"categories":139,"keywords":140,"publishedAt":28},"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",[],[141,120,142,143,144,145,146,147,148,149,150],"sprint manager","manager","writer","stories","sprints","EPIC","transitions","json","index","state",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":157,"publishedAt":28},"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",[],[158,159,120,132,160,161,162,163,164,165,27,166,167,168,130],"dev","sprint dev","execution","team review","development","merge","review","dependency","post","avfl","driven",{"skillNo":170,"name":171,"nameZh":6,"description":172,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":173,"categories":174,"keywords":175,"publishedAt":28},"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",[],[171,176,177,27,178,120,23,130,179,180,181,182,183,93],"sprint retrospective","closure","dynamic workflow","engine","audit","verification","transcript","retrospective"]