[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GKC4R5RT08S1RXPDZV2WTZ":3,"skill-same:01M6GKC4R5RT08S1RXPDZV2WTZ":105},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":6,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6GKC4R5RT08S1RXPDZV2WTZ","clv-modeling",null,"Use when the user mentions CLV, LTV, customer lifetime value, customer value prediction, lifetime revenue, CLV:CAC ratio, BG\u002FNBD, Gamma-Gamma, RFM summary, purchase frequency prediction, monetary value prediction, churn probability, customer retention modeling, expected transactions, customer-level forecasting, or high-value customer identification. Also trigger on 'which customers are most valuable' or 'predict future customer revenue.' For grouping customers into segments or cohort retention curves use audience-segmentation; for lead propensity scoring use crm-lead-scoring; this skill predicts per-customer future value. If transaction data is not yet in the workspace, run data-extraction first.","weisberg\u002Fagile_agentic_analytics","weisberg","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F5054710?v=4","01M6GK0MXK350SV8PMZ0D040SB","Brian Weisberg","01M6GK0N2F8X600FCTKCB3X2ZF",1,"MIT","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"modeling","clv modeling","false","segmentation","which","purchase","churn","retention","data-extraction","identification","trigger","transactions","first","probability","transaction","scoring","grouping","gamma","use","forecasting","2026-11-10 10:12:30",false,"---\nname: clv-modeling\ndescription: >\n  Use when the user mentions CLV, LTV, customer lifetime value, customer value\n  prediction, lifetime revenue, CLV:CAC ratio, BG\u002FNBD, Gamma-Gamma, RFM summary,\n  purchase frequency prediction, monetary value prediction, churn probability,\n  customer retention modeling, expected transactions, customer-level forecasting,\n  or high-value customer identification. Also trigger on 'which customers are most\n  valuable' or 'predict future customer revenue.' For grouping customers into\n  segments or cohort retention curves use audience-segmentation; for lead\n  propensity scoring use crm-lead-scoring; this skill predicts per-customer future\n  value. If transaction data is not yet in the workspace, run data-extraction first.\n\ndisable-model-invocation: false\n---\n\n# CLV Modeling\n\nProbabilistic customer lifetime value: BG\u002FNBD for purchase frequency, Gamma-Gamma\nfor monetary value, Beta-Geometric for subscriptions — with confidence intervals,\nCLV:CAC, cohort curves, and at-risk high-value alerts.\n\n## Contract\n\n**Role:** Advisory modeler. This skill computes and reports predicted value; it\ndoes not target, price, or contact customers. All numbers come from deterministic\nPython scripts, never from model estimation in prose.\n\n**Mode:**\n- `quick` — RFM summary + single-horizon MLE point estimates.\n- `standard` (default) — MLE BG\u002FNBD + Gamma-Gamma, CIs, tiers, at-risk list,\n  holdout validation.\n- `deep` — add Bayesian (PyMC-Marketing) posteriors and full uncertainty.\n\n**When to use:** predicting future per-customer revenue, CLV:CAC, at-risk\nhigh-value retention targets, purchase-frequency \u002F probability-alive scoring.\n\n**When NOT to use:** for building customer segments or cohort retention curves use\n`audience-segmentation`; for sales-lead propensity use `crm-lead-scoring`; for\nchannel ROI use `attribution-analysis`. See `..\u002F..\u002Freferences\u002Fskill-index.md` for\nthe full portfolio map.\n\n**Evidence required (inputs):**\n- `workspace\u002Fraw\u002Ftransactions.csv` — `customer_id`, `date`, `amount` (required for\n  non-contractual). If absent, STOP and run **data-extraction** first.\n- `workspace\u002Fraw\u002Fsubscriptions.csv` — `customer_id`, `start_date`, `end_date`,\n  `plan_value` (optional; enables contractual model).\n- `workspace\u002Fanalysis\u002Facquisition_costs.json` — CAC by customer\u002Fsegment (optional;\n  enables CLV:CAC).\n\n**Depends on:** data-extraction (raw transactions). **Feeds into:**\naudience-segmentation (value tiers), paid-media (bid targets), email-analytics\n(lifecycle triggers), attribution-analysis, reporting. Builder detail lives in\n`references\u002Fauthoring-notes.md`.\n\n**Hard STOP (data integrity):** stop and surface the issue before modeling if any\nof these appear — future-dated transactions, negative\u002Fzero amounts as a material\nshare, or fewer than ~2 repeat purchasers (BG\u002FNBD is unidentifiable). Do not emit\nCLV numbers from broken inputs.\n\nParse `$ARGUMENTS` for inline paths, horizon, discount rate, or model overrides.\n\n## Workflow\n\n1. **Validate & profile.** Load transactions; parse dates robustly (ISO\u002FUS\u002FEU).\n   Flag duplicates (same customer\u002Fdate\u002Famount), negative\u002Fzero amounts, and\n   impossible dates. Report customer count, date range, transaction volume. Apply\n   the Hard STOP gate above.\n\n2. **RFM summary.** Run `scripts\u002Frfm_summary.py` to build recency, frequency\n   (repeat purchases only), tenure (T), and mean repeat monetary value. One-time\n   purchasers: frequency=0, monetary=NaN (excluded from Gamma-Gamma).\n\n3. **Model-class gate (AskUserQuestion).** When both transaction and subscription\n   data exist, or the business model is ambiguous, ask before fitting:\n   - **Question:** \"Which lifetime model fits this business?\"\n   - **Options:** (a) *Non-contractual (BG\u002FNBD + Gamma-Gamma)* — purchases happen\n     at will, no fixed renewal; (b) *Contractual (Beta-Geometric)* — subscription\n     with renewal periods; (c) *Both, compared* — fit each and reconcile.\n   Skip the prompt when only one data type is present (default to it).\n\n4. **Fit.** Non-contractual: run `scripts\u002Ffit_bgnbd.py` (BetaGeoFitter MLE →\n   r, alpha, a, b; per-customer expected transactions and probability-alive; then\n   Gamma-Gamma on frequency>0 customers). Validate Gamma-Gamma independence:\n   if corr(frequency, monetary) > 0.3, warn and record potential bias.\n   Contractual: fit Beta-Geometric on renewal-period survival data.\n\n5. **Bayesian extension (deep mode).** Use `pymc_marketing.clv` BetaGeoModel and\n   GammaGammaModel; check R-hat \u003C 1.01, ESS > 400; report median CLV with 80% and\n   95% credible intervals per customer.\n\n6. **Predict & score.** Run `scripts\u002Fpredict_clv.py` for horizons (default 6\u002F12\u002F24\n   months) with point estimate + interval. Compute CLV = E[transactions] ×\n   E[monetary] × margin × discount_factor. If `acquisition_costs.json` is present,\n   compute CLV:CAC and flag ratio \u003C 1.0; if absent, flag transparently and skip.\n   Tier customers Platinum\u002FGold\u002FSilver\u002FBronze by CLV percentile. Build the at-risk\n   list: top-10% CLV × probability-alive dropped below 50% this quarter.\n\n7. **Validate.** Run `scripts\u002Fvalidate_clv.py` with a temporal holdout\n   (calibration\u002Fholdout split): report MAE, RMSE, and calibration ratio\n   (predicted\u002Factual, target 0.9–1.1).\n\n8. **Report.** Write outputs (below) and the HTML dashboard.\n\n## Output Format\n\nArtifacts:\n\n| File | Contents |\n|------|----------|\n| `workspace\u002Fanalysis\u002Fclv_predictions.json` | Customer-level CLV with confidence intervals |\n| `workspace\u002Fanalysis\u002Fclv_segments.json` | CLV tiers (Platinum\u002FGold\u002FSilver\u002FBronze) |\n| `workspace\u002Fanalysis\u002Fat_risk_customers.json` | High-value customers with declining probability-alive |\n| `workspace\u002Freports\u002Fclv_analysis.html` | CLV distributions, cohort curves, model diagnostics |\n\nEvery readout states: model class, horizon, discount rate, holdout MAE\u002Fcalibration\nratio, and whether CLV:CAC was computed or skipped.\n\n**Financial services mode:** aggregate CLV across products at the household level;\nsupport AUM-basis-point monetary components; compute relationship-level CLV for\nadvisor-intermediated books. Document model inputs for fair-lending review. If CLV\noutputs feed any customer-facing claim or projected-return copy, route that content\nthrough the **compliance-review** skill before distribution.\n\n**Completion status** — end every run with one:\n- `DONE` — models fit, holdout passed, artifacts written.\n- `DONE_WITH_CONCERNS` — shipped but note the caveat (e.g., Gamma-Gamma\n  independence violated, weak holdout calibration, CLV:CAC skipped).\n- `BLOCKED` — Hard STOP tripped or required input missing; state the fix.\n- `NEEDS_CONTEXT` — model-class or horizon ambiguity unresolved by the user.\n\n## Anti-Patterns\n\n- Emitting CLV numbers from data that failed the integrity gate (future dates,\n  negative amounts, too few repeat buyers).\n- Reporting point estimates without confidence\u002Fcredible intervals.\n- Running Gamma-Gamma on one-time purchasers, or ignoring a frequency–monetary\n  correlation above 0.3.\n- Presenting CLV:CAC when acquisition-cost data is missing instead of flagging it.\n- Using a random (not temporal) holdout — it leaks future information.\n- Letting the model narrate CLV or probability-alive instead of running the\n  scripts.\n- Defaulting to a contractual or non-contractual model without checking which data\n  the business actually has.\n","# CLV Modeling\n\nProbabilistic customer lifetime value: BG\u002FNBD for purchase frequency, Gamma-Gamma\nfor monetary value, Beta-Geometric for subscriptions — with confidence intervals,\nCLV:CAC, cohort curves, and at-risk high-value alerts.\n\n## Contract\n\n**Role:** Advisory modeler. This skill computes and reports predicted value; it\ndoes not target, price, or contact customers. All numbers come from deterministic\nPython scripts, never from model estimation in prose.\n\n**Mode:**\n- `quick` — RFM summary + single-horizon MLE point estimates.\n- `standard` (default) — MLE BG\u002FNBD + Gamma-Gamma, CIs, tiers, at-risk list,\n  holdout validation.\n- `deep` — add Bayesian (PyMC-Marketing) posteriors and full uncertainty.\n\n**When to use:** predicting future per-customer revenue, CLV:CAC, at-risk\nhigh-value retention targets, purchase-frequency \u002F probability-alive scoring.\n\n**When NOT to use:** for building customer segments or cohort retention curves use\n`audience-segmentation`; for sales-lead propensity use `crm-lead-scoring`; for\nchannel ROI use `attribution-analysis`. See `..\u002F..\u002Freferences\u002Fskill-index.md` for\nthe full portfolio map.\n\n**Evidence required (inputs):**\n- `workspace\u002Fraw\u002Ftransactions.csv` — `customer_id`, `date`, `amount` (required for\n  non-contractual). If absent, STOP and run **data-extraction** first.\n- `workspace\u002Fraw\u002Fsubscriptions.csv` — `customer_id`, `start_date`, `end_date`,\n  `plan_value` (optional; enables contractual model).\n- `workspace\u002Fanalysis\u002Facquisition_costs.json` — CAC by customer\u002Fsegment (optional;\n  enables CLV:CAC).\n\n**Depends on:** data-extraction (raw transactions). **Feeds into:**\naudience-segmentation (value tiers), paid-media (bid targets), email-analytics\n(lifecycle triggers), attribution-analysis, reporting. Builder detail lives in\n`references\u002Fauthoring-notes.md`.\n\n**Hard STOP (data integrity):** stop and surface the issue before modeling if any\nof these appear — future-dated transactions, negative\u002Fzero amounts as a material\nshare, or fewer than ~2 repeat purchasers (BG\u002FNBD is unidentifiable). Do not emit\nCLV numbers from broken inputs.\n\nParse `$ARGUMENTS` for inline paths, horizon, discount rate, or model overrides.\n\n## Workflow\n\n1. **Validate & profile.** Load transactions; parse dates robustly (ISO\u002FUS\u002FEU).\n   Flag duplicates (same customer\u002Fdate\u002Famount), negative\u002Fzero amounts, and\n   impossible dates. Report customer count, date range, transaction volume. Apply\n   the Hard STOP gate above.\n\n2. **RFM summary.** Run `scripts\u002Frfm_summary.py` to build recency, frequency\n   (repeat purchases only), tenure (T), and mean repeat monetary value. One-time\n   purchasers: frequency=0, monetary=NaN (excluded from Gamma-Gamma).\n\n3. **Model-class gate (AskUserQuestion).** When both transaction and subscription\n   data exist, or the business model is ambiguous, ask before fitting:\n   - **Question:** \"Which lifetime model fits this business?\"\n   - **Options:** (a) *Non-contractual (BG\u002FNBD + Gamma-Gamma)* — purchases happen\n     at will, no fixed renewal; (b) *Contractual (Beta-Geometric)* — subscription\n     with renewal periods; (c) *Both, compared* — fit each and reconcile.\n   Skip the prompt when only one data type is present (default to it).\n\n4. **Fit.** Non-contractual: run `scripts\u002Ffit_bgnbd.py` (BetaGeoFitter MLE →\n   r, alpha, a, b; per-customer expected transactions and probability-alive; then\n   Gamma-Gamma on frequency>0 customers). Validate Gamma-Gamma independence:\n   if corr(frequency, monetary) > 0.3, warn and record potential bias.\n   Contractual: fit Beta-Geometric on renewal-period survival data.\n\n5. **Bayesian extension (deep mode).** Use `pymc_marketing.clv` BetaGeoModel and\n   GammaGammaModel; check R-hat \u003C 1.01, ESS > 400; report median CLV with 80% and\n   95% credible intervals per customer.\n\n6. **Predict & score.** Run `scripts\u002Fpredict_clv.py` for horizons (default 6\u002F12\u002F24\n   months) with point estimate + interval. Compute CLV = E[transactions] ×\n   E[monetary] × margin × discount_factor. If `acquisition_costs.json` is present,\n   compute CLV:CAC and flag ratio \u003C 1.0; if absent, flag transparently and skip.\n   Tier customers Platinum\u002FGold\u002FSilver\u002FBronze by CLV percentile. Build the at-risk\n   list: top-10% CLV × probability-alive dropped below 50% this quarter.\n\n7. **Validate.** Run `scripts\u002Fvalidate_clv.py` with a temporal holdout\n   (calibration\u002Fholdout split): report MAE, RMSE, and calibration ratio\n   (predicted\u002Factual, target 0.9–1.1).\n\n8. **Report.** Write outputs (below) and the HTML dashboard.\n\n## Output Format\n\nArtifacts:\n\n| File | Contents |\n|------|----------|\n| `workspace\u002Fanalysis\u002Fclv_predictions.json` | Customer-level CLV with confidence intervals |\n| `workspace\u002Fanalysis\u002Fclv_segments.json` | CLV tiers (Platinum\u002FGold\u002FSilver\u002FBronze) |\n| `workspace\u002Fanalysis\u002Fat_risk_customers.json` | High-value customers with declining probability-alive |\n| `workspace\u002Freports\u002Fclv_analysis.html` | CLV distributions, cohort curves, model diagnostics |\n\nEvery readout states: model class, horizon, discount rate, holdout MAE\u002Fcalibration\nratio, and whether CLV:CAC was computed or skipped.\n\n**Financial services mode:** aggregate CLV across products at the household level;\nsupport AUM-basis-point monetary components; compute relationship-level CLV for\nadvisor-intermediated books. Document model inputs for fair-lending review. If CLV\noutputs feed any customer-facing claim or projected-return copy, route that content\nthrough the **compliance-review** skill before distribution.\n\n**Completion status** — end every run with one:\n- `DONE` — models fit, holdout passed, artifacts written.\n- `DONE_WITH_CONCERNS` — shipped but note the caveat (e.g., Gamma-Gamma\n  independence violated, weak holdout calibration, CLV:CAC skipped).\n- `BLOCKED` — Hard STOP tripped or required input missing; state the fix.\n- `NEEDS_CONTEXT` — model-class or horizon ambiguity unresolved by the user.\n\n## Anti-Patterns\n\n- Emitting CLV numbers from data that failed the integrity gate (future dates,\n  negative amounts, too few repeat buyers).\n- Reporting point estimates without confidence\u002Fcredible intervals.\n- Running Gamma-Gamma on one-time purchasers, or ignoring a frequency–monetary\n  correlation above 0.3.\n- Presenting CLV:CAC when acquisition-cost data is missing instead of flagging it.\n- Using a random (not temporal) holdout — it leaks future information.\n- Letting the model narrate CLV or probability-alive instead of running the\n  scripts.\n- Defaulting to a contractual or non-contractual model without checking which data\n  the business actually has.\n",{"name":5,"description":44,"disable-model-invocation":40},"Use when the user mentions CLV, LTV, customer lifetime value, customer value prediction, lifetime revenue, CLV:CAC ratio, BG\u002FNBD, Gamma-Gamma, RFM summary, purchase frequency prediction, monetary value prediction, churn probability, customer retention modeling, expected transactions, customer-level forecasting, or high-value customer identification. Also trigger on 'which customers are most valuable' or 'predict future customer revenue.' For grouping customers into segments or cohort retention curves use audience-segmentation; for lead propensity scoring use crm-lead-scoring; this skill predicts per-customer future value. If transaction data is not yet in the workspace, run data-extraction first.\n","main","8d9ce3e8c80ddfea03af44bb5b900afc16b07c19","plugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling",0,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics","https:\u002F\u002Fgithub.com\u002Fweisberg","www.betafactory.com","2026-11-11 22:15:54",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add weisberg\u002Fagile_agentic_analytics --skill clv-modeling",{"tool":59,"command":60},"bunx","bunx skills add weisberg\u002Fagile_agentic_analytics --skill clv-modeling",{"tool":62,"command":63},"pnpm","pnpm dlx skills add weisberg\u002Fagile_agentic_analytics --skill clv-modeling","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002FSKILL.md",true,[67,73,77,81,87,93,97,101],{"path":68,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":72},"references\u002Fauthoring-notes.md","REFERENCE","参考文档",2604,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Freferences\u002Fauthoring-notes.md",{"path":74,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":75,"sourceHtmlUrl":76},"references\u002Fclv_methodology.md",6652,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Freferences\u002Fclv_methodology.md",{"path":78,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":79,"sourceHtmlUrl":80},"references\u002Fpymc_marketing_clv.md",8200,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Freferences\u002Fpymc_marketing_clv.md",{"path":82,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":85,"sourceHtmlUrl":86},"routing-eval.jsonl","OTHER","其他",908,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Frouting-eval.jsonl",{"path":88,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":91,"sourceHtmlUrl":92},"scripts\u002Ffit_bgnbd.py","SCRIPT","脚本",20143,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Fscripts\u002Ffit_bgnbd.py",{"path":94,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":95,"sourceHtmlUrl":96},"scripts\u002Fpredict_clv.py",27589,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Fscripts\u002Fpredict_clv.py",{"path":98,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":99,"sourceHtmlUrl":100},"scripts\u002Frfm_summary.py",12064,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Fscripts\u002Frfm_summary.py",{"path":102,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":103,"sourceHtmlUrl":104},"scripts\u002Fvalidate_clv.py",24180,"https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fmarketing-analytics\u002Fskills\u002Fclv-modeling\u002Fscripts\u002Fvalidate_clv.py",[106,125,152,168,193,212],{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":117,"publishedAt":39},"01M6GKH0CNX0V8JYCFTFT0C8TJ","minimal-skill","Minimal shared skill fixture for marketplace renderer and validator examples.","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fminimal-plugin\u002Fskills\u002Fminimal-skill\u002FSKILL.md",[112],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[118,119,120,121,122,21,123,124],"minimal","minimal skill","shared","examples","fixture","marketplace","shared skill",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":136,"publishedAt":39},"01M6GKGW83KH0GN15MQGXM4596","roadmap","Use this skill when the user wants a product roadmap, initiative sequencing, Now\u002FNext\u002FLater plan, quarterly roadmap, release theme map, product strategy-to-roadmap translation, or executive roadmap narrative. Trigger on phrases like \"build a roadmap\", \"roadmap these initiatives\", \"what should be now next later\", \"sequence this backlog\", \"quarterly product roadmap\", \"theme-based roadmap\", or \"plan the next two quarters\". Do NOT trigger for drafting or reviewing a single PRD (use prd-writer or prd-review), converting a PRD into an agentic PLAN.md (use prd-to-plan), or scoring\u002Franking a set of options without a time horizon (use prioritization).","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fproduct-manager\u002Fskills\u002Froadmap\u002FSKILL.md",[131],{"categoryNo":132,"categoryName":133,"taxonomyType":134,"taxonomyTypeDesc":135},"01JBSEEDCAT000000000000031","产品经理","PROFESSION","适用职业",[127,137,138,139,140,141,142,143,29,144,145,146,147,148,37,149,21,150,151,34],"writer","SET","do","translation","theme","time","backlog","ranking","true","strategy","map","now","sequencing","agentic","Bash",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":159,"publishedAt":39},"01M6GKGQTF57NFBDM5NZ89CV06","prioritization","Use this skill when the user wants to rank, score, triage, or compare product opportunities, features, PRD requirements, backlog items, roadmap candidates, or initiatives using RICE, impact-effort, confidence, reach, value, effort, risk, or tradeoff analysis. Trigger on phrases like \"prioritize these features\", \"rank this backlog\", \"RICE score\", \"impact effort matrix\", \"what should we build first\", \"compare these initiatives\", or \"stack rank product bets\". Do NOT trigger for a time-based roadmap (use roadmap), writing or reviewing one PRD (use prd-writer or prd-review), turning a PRD into an agentic plan (use prd-to-plan), or analyzing experiment results (use ab-testing or experimentation skills).","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fproduct-manager\u002Fskills\u002Fprioritization\u002FSKILL.md",[158],{"categoryNo":132,"categoryName":133,"taxonomyType":134,"taxonomyTypeDesc":135},[154,137,139,160,142,143,29,161,145,162,163,37,21,127,150,151,164,165,166,167],"risk","testing","writing","impact","requirements","analysis","compare","review",{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":176,"publishedAt":39},"01M6GKGHEHWG9PF8EZHC7F1R21","prd-writer","Use this skill whenever the user wants to write, draft, create, or scaffold a PRD (Product Requirements Document), spec, product brief, one-pager, or \"working backwards\" PR\u002FFAQ from an idea, rough notes, discovery inputs, or an existing partial draft that needs authoring. Trigger on phrases like \"write a PRD\", \"draft a spec\", \"product doc for X\", \"one-pager\", \"PR\u002FFAQ\", \"feature brief\", or when the user describes a feature\u002Fproduct idea and asks for it to be turned into a written requirements document. Do NOT trigger for critique or approval-readiness review of an existing PRD (use prd-review), engineering design docs, RFCs, ADRs, prioritization, roadmaps, or technical architecture documents. The output of this skill is always a markdown file (or section thereof) that a real product team could ship from.","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fproduct-manager\u002Fskills\u002Fprd-writer\u002FSKILL.md",[174,175],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":132,"categoryName":133,"taxonomyType":134,"taxonomyTypeDesc":135},[137,177,178,179,180,21,181,182,183,184,167,185,186,154,187,188,189,190,191,192],"prd writer","prd","brief","design","product brief","documents","team","architecture","create","notes","critique","product","markdown","write","authoring","doc",{"skillNo":194,"name":195,"nameZh":6,"description":196,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":197,"categories":198,"keywords":201,"publishedAt":39},"01M6GKGBFB5FMNWY3TH3TDMMKR","prd-to-plan","Use this skill when the user has a PRD (Product Requirements Document), spec, or product brief and wants to turn it into an executable plan for agentic development — a plan that AI coding agents (Claude Code, sub-agents, orchestrators) can actually run. Trigger on phrases like \"turn this PRD into a plan\", \"agentic plan\", \"execution plan\", \"task graph\", \"break this down for Claude Code\", \"decompose this spec\", \"build plan\", \"implementation plan from PRD\", \"scrum-master plan\", or when the user provides a PRD\u002Fspec and asks \"what's next\" or \"how do we build this with agents\". The output is always a structured `PLAN.md` artifact with phases, tasks, dependencies, validation gates, sub-agent assignments, and context bundles. Do NOT trigger for: writing the PRD itself (use prd-writer), pure engineering design \u002F RFC \u002F ADR (architecture is a separate artifact), or generic project management plans without an agentic execution model.","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fproduct-manager\u002Fskills\u002Fprd-to-plan\u002FSKILL.md",[199,200],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":132,"categoryName":133,"taxonomyType":134,"taxonomyTypeDesc":135},[202,203,178,137,204,179,205,206,207,180,162,21,181,150,208,209,184,210,211,188],"plan","prd to plan","ai coding agents","agentic development","model","project","code","tasks","artifact","next",{"skillNo":213,"name":214,"nameZh":6,"description":215,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":216,"categories":217,"keywords":219,"publishedAt":39},"01M6GKG6WJ5ZPAR121DC1GBR70","prd-review","Use this skill when the user has an existing PRD, product spec, one-pager, or PR\u002FFAQ and wants critique, approval-readiness review, quality-bar scoring, required changes, or a red-team pass. Trigger on phrases like \"review this PRD\", \"critique my product spec\", \"is this PRD ready\", \"PRD quality bar\", \"red-team this requirements doc\", \"find gaps in this PR\u002FFAQ\", or \"what would block approval\". Do NOT trigger for drafting a new PRD from an idea (use prd-writer), converting an approved PRD into an agentic implementation plan (use prd-to-plan), building a roadmap (use roadmap), or ranking multiple initiatives (use prioritization).","https:\u002F\u002Fgithub.com\u002Fweisberg\u002Fagile_agentic_analytics\u002Fblob\u002Fmain\u002Fplugins\u002Fproduct-manager\u002Fskills\u002Fprd-review\u002FSKILL.md",[218],{"categoryNo":132,"categoryName":133,"taxonomyType":134,"taxonomyTypeDesc":135},[167,220,178,137,221,139,222,223,29,144,145,37,21,127,150,151,164,183,34,154],"prd review","red-team","ready","pr"]