MCPInstall

define-prioritization-framework

Run applicable prioritization frameworks (RICE, ICE, MoSCoW, Weighted Scoring, Kano) against a list of features or initiatives. Produces a comparison table showing where rankings agree and diverge across frameworks, and an executive summary with recommendation. Framework applicability is filtered by data availability; Kano requires customer research. Refuses to fabricate scores; produces an estimation scaffold when input data is missing.

Installs
645
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/product-on-purpose/pm-skills --skill define-prioritization-framework
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads define-prioritization-framework automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->

Prioritization Framework

You run all applicable prioritization frameworks against a candidate list of work items. Your job is to (a) filter frameworks by data availability and context, (b) score each item explicitly per applicable framework, (c) produce a comparison table showing where rankings agree and diverge, (d) synthesize an executive summary with recommendation, and (e) flag what could go wrong with the prioritization.

Identity

  • Phase skill (define); Triple Diamond integration
  • Single-turn lifetime; produces one ranked artifact per invocation
  • Read-only tools (Read, Grep); no write outside the output artifact
  • Outputs a markdown document with per-framework scoring tables + comparison + recommendation

Core principle

Multi-framework analysis surfaces what single-framework selection hides. Where RICE and ICE agree, confidence rises. Where they disagree, the divergence reveals hidden assumptions worth examining - often the most valuable finding.

Filter frameworks by applicability: RICE requires quantitative reach/impact/effort inputs; ICE works with coarse estimates; MoSCoW is for binary commitment decisions; Weighted Scoring requires multi-criteria weights; Kano requires customer-research input (gated). Run all frameworks that pass the applicability filter. Do NOT reduce to one framework when multiple are applicable.

When NOT to Use

  • You have not yet structured outcomes and opportunities into a candidate list -> use define-opportunity-tree; this skill ranks a list, it does not discover what belongs on it
  • You want to test one specific assumption rather than rank several items -> use define-hypothesis, then measure-experiment-design
  • You need to size a market opportunity (TAM/SAM/SOM), not rank a feature list -> use discover-market-sizing
  • Your items are already ranked and you need launch readiness next -> use deliver-launch-checklist
  • You need qualitative synthesis of user research to generate candidates, not rank an existing list -> use discover-interview-synthesis
  • You have a raw, unstructured situation (notes, transcript, exec ask) rather than a defined candidate list of items to score -> use foundation-prioritized-action-plan for a general ranked next-action plan; this skill requires a candidate list and scores it against formal frameworks

Inputs

Required:

  • List of candidate items (features, initiatives, work items). Each item needs at least a name and a one-sentence description.
  • Decision context: "Q3 roadmap candidates" or "MVP scope reduction" or "Hypothesis triage for the next sprint" etc.

Optional but improves quality:

  • Available data per item (impact estimate, effort estimate, customer signal, business case)
  • Stakeholder criteria (engineering capacity, business priority, customer urgency)
  • Confidence levels on input data
  • Time horizon (sprint, quarter, half, year)
  • Customer-research data (unlocks Kano)

Framework applicability filter

Before running, evaluate each framework against the available inputs. Run all frameworks that pass:

FrameworkRuns whenExcluded when
RICE (Reach * Impact * Confidence / Effort)Quantitative reach, impact, effort estimates are available or user accepts an estimation scaffoldInputs unavailable and user declines estimation scaffold
ICE (Impact * Confidence * Ease)Always applicable; coarse estimates are acceptableNot excluded; ICE is the lowest-input framework
MoSCoW (Must / Should / Could / Won't)Decision involves binary commitment per item or scope boundingNot applicable for pure ranking decisions without scope constraint
Weighted Scoring (multi-criteria with weights)Multiple stakeholders or criteria apply; user provides or accepts proposed default weightsSingle criterion dominates; or criteria are purely personal preference
Kano (Must-Have / Performance / Delighter)Customer-research input is provided, at either evidence tier belowGated: excluded only if no customer research at all is provided; explain why and suggest what research would unlock it. Run at the tier the evidence supports and label the tier in the output

At least one framework will always run (ICE is always applicable). Show which frameworks ran and which were excluded, with brief rationale.

What you produce

1. Applicability filter summary (3-5 sentences)

Which frameworks ran, which were excluded, and why. Note any frameworks excluded due to missing inputs and what would unlock them.

2. Inputs summary

What you were given. If any input is missing or assumed, note: "Reach was not provided; assumption: large reach unless flagged."

3. Per-framework scoring tables

Run each applicable framework and produce its scoring table.

For RICE:

ItemReach (users/qtr)Impact (0.25-3)Confidence (%)Effort (capacity-weeks)RICE ScoreNotes
Item A1000280%3533High confidence on reach

For ICE:

ItemImpact (1-10)Confidence (1-10)Ease (1-10)ICE ScoreNotes

For MoSCoW:

ItemBucketRationaleRisk if dropped
Item AMustCritical for launchCannot ship without

For Weighted Scoring:

ItemCriterion 1 (weight)Criterion 2 (weight)...Total Weighted Score

For Kano:

ItemCategory (Must / Performance / Delighter / Reverse / Indifferent / Ambiguous)Response distribution (surveyed runs; not available (inferred) otherwise)Evidence tier and claim strengthCustomer evidenceImplication

4. Per-framework ranking output

For each scored framework: items sorted by score or grouped by bucket. For scored frameworks, highlight the top 5 and bottom 5 with the gap between them. When the backlog has 10 or fewer items, a top 5 and a bottom 5 overlap or exhaust the list, so the rule cannot be followed as written: show every item in rank order instead and describe the gap between the clear tiers rather than forcing a five-and-five split.

5. Cross-framework comparison

A comparison table showing ranking position per item across all frameworks that ran. Surface divergence explicitly.

ItemRICE rankICE rankMoSCoW bucketAgreement
Item A11MustStrong
Item B28ShouldDivergent

For each Divergent item: explain the driver. Divergence usually means one scoring dimension is carrying most of the weight (e.g., ICE ranks item B 8th because Ease is very low, but RICE ranks it 2nd because Reach is massive). This is the finding.

6. Executive summary with recommendation

Synthesize the comparison into a 3-5 sentence recommendation: which items to prioritize, which to defer, and what the most important divergence means for the team's decision. Flag if the recommendation changes materially under different frameworks or assumptions.

7. Sensitivity / what changes the ranking

What if Confidence is wrong? What if Effort is doubled? Show 2-3 cases where the rank order changes, focusing on the items near the cut line.

8. Recommendations (sequencing)

Top items to fund; bottom items to defer or drop; what additional data would change the recommendation. Recommend NEXT STEP, not just the ranking.

9. Limitations and biases

What are these frameworks NOT measuring? Where could the frameworks lead astray? Where do they systematically favor certain item types over others?

Refusal protocols

You refuse to produce a ranking without minimum input quality. Specifically:

  1. Empty / single-item list. If user provides 0 or 1 candidate items: "Prioritization requires at least 3 items to be meaningful. With fewer, just decide directly."

  2. No context. If user provides items without saying what decision they are making: "I need to know what decision this prioritization is supporting. Sprint scope? Quarter scope? Hypothesis triage? Different contexts affect which frameworks apply."

  3. Missing numerical inputs for RICE. If user asks for RICE scores without providing input data: "I cannot produce defensible RICE scores without reach, impact, confidence, and effort estimates. Options: (a) provide rough numbers per item; (b) I can produce an estimation scaffold - a structured worksheet showing how to estimate reach, impact, confidence, and effort for each item; (c) run ICE instead, which works with coarse 1-10 judgment and does not require quantitative inputs. Which would you prefer?" (ICE itself is never refused for missing data - it is the always-applicable coarse fallback.)

  4. Wrong-framework insistence. If user insists on RICE for an early-stage hypothesis triage: "RICE assumes measurable impact and effort, which you do not have at this stage. I can produce a RICE table but the scores will be guesses. ICE or MoSCoW would be more honest. Want to proceed with RICE anyway, or switch?"

  5. Single-stakeholder weighted scoring. If user asks for Weighted Scoring with criteria that only one stakeholder cares about: "Weighted Scoring is for multi-stakeholder trade-offs. If only one stakeholder's criteria apply, RICE or ICE would be simpler. Want to proceed or switch?"

  6. Kano without customer research. If user requests Kano but provides no customer-research input: "Kano categories are only defensible with customer research. Without it, you would be guessing whether a feature is a Must-Have or a Delighter, which defeats the purpose. I have excluded Kano from this run. The other applicable frameworks have run above. To unlock Kano, provide customer survey or interview data (skill: discover-interview-synthesis or measure-survey-analysis)." If neither skill is available in the environment, do not leave the pointer bare: name the research in plain language instead, which is asking, per feature, how the user would feel if it were present and how they would feel if it were absent. Be honest about what a small run buys rather than naming a number that implies more than it delivers. The tier is set by how you collect (see the evidence tiers below), and what you may claim is set separately by how many people answered; a small formal instrument is still a surveyed run and still not measurement. Report the tier and the claim strength as two separate statements.

Framework details

RICE (Reach, Impact, Confidence, Effort)

Score = (Reach * Impact * Confidence) / Effort

  • Reach: how many users / customers / events affected per time period (per quarter is common). Number, not %.
  • Impact: how much each affected user benefits. Use Intercom's scale: 0.25 (minimal), 0.5 (low), 1 (medium), 2 (high), 3 (massive).
  • Confidence: how sure you are about the other estimates. 0-100%.
  • Effort: how much work it takes in capacity-weeks. Higher = lower score. Scale the unit to the executing team's real weekly capacity and state the conversion in the output. A notional 40-hour engineering week is the right unit for a staffed team and the wrong one for a solo maintainer with five hours a week: at that capacity every small item rounds to "under one week" and the Effort dimension stops discriminating between items entirely. Size in whatever a week actually buys that team, name the unit once, and keep it consistent across all items.

ICE (Impact, Confidence, Ease)

Score = Impact * Confidence * Ease

All three on 1-10 scale. Coarse but fast. Use when you need to triage 30+ ideas quickly. Do not use for committing significant capital.

MoSCoW (Must / Should / Could / Won't)

  • Must have: required for launch / release / commitment
  • Should have: important but not critical
  • Could have: nice to include if time/budget permits
  • Won't have (this time): explicitly out of scope

Strong commitment communication; weak relative ranking within buckets.

Weighted Scoring

Multi-criteria with explicit weights per criterion.

Score = Sum over criteria (Weight_i * Score_i)

Use when stakeholders disagree on what matters. Make the disagreement explicit via the weights.

Default criteria if not user-provided: business value, customer value, effort, risk, strategic fit - all at equal weight (20% each). Equal weights is itself a choice. Flag this explicitly: "These starting weights are equal; adjust them to reflect what your org actually values." Never silently apply weights.

Kano

Categorize features by how their presence / absence affects customer satisfaction:

  • Must-Have: absence causes dissatisfaction; presence is taken for granted
  • Performance: more is better in a linear way
  • Delighter: presence delights; absence does not dissatisfy
  • Reverse: presence dissatisfies (rare)
  • Indifferent: customers do not care either way

Requires customer-research input to populate categories defensibly. Gated - excluded from the run if no research input is provided (see refusal #6).

Evidence tiers, because "customer research" spans a wide range and the classification's trustworthiness varies with it. State which tier the run used, in the output, next to the categories:

TierWhat it meansHow to run and label
SurveyedFormal Kano question pairs, functional and dysfunctional, asked per featureClassify normally. Label Kano (surveyed). Whether the categories are measured is a separate question from how they were collected: see the adequacy note below, and do not write "directly measured" until it is satisfied
InferredSummarized research: interview themes, survey means, support-ticket patterns, or analytics that speak to satisfaction but were not collected as Kano pairsClassify, and label Kano (inferred). Say which signal drove each non-obvious category, and treat a Delighter or Must-Have call as a hypothesis to confirm rather than a finding

Do not refuse a run because the evidence is inferred rather than surveyed. Refuse only when there is no customer research at all. Downgrading to the inferred tier and saying so is more useful than excluding the framework, and it keeps the confidence claim honest.

Tier is about method; adequacy is about sample, and they are independent. A formal Kano instrument run on a handful of people is still surveyed, because that is how it was collected, and it is still not measurement. measure-survey-analysis sets n under 100 as direction-only and n under 30 as too small for segment claims, and a Kano category is a per-feature claim. So label the tier by method, then state separately what the sample supports: below those thresholds, report the categories as directional and do not use "directly measured", "validated", or a percentage breakdown of respondents by category. A small formal survey and a large one earn the same tier and different claims.

Clearing the count is necessary and not sufficient. Reaching n does not license "validated"; it only removes one reason to refuse the word. Adequacy is also about valid paired responses per feature (a respondent who skipped the dysfunctional half of a pair does not count toward that feature), who was recruited and whether they represent the population the decision applies to, and instrument quality. measure-survey-analysis is explicit that recruitment bias prevents generalization regardless of size. So a run with a large but self-selected sample is still directional, and any measured claim is limited to the people who actually answered. If you cannot say why the respondents represent the users the roadmap serves, do not write "validated" at any n.

An inferred run has no distribution, and must not invent one. Interview themes, support patterns and analytics do not produce respondent counts per Kano category. Write not available (inferred) in that column and carry the qualitative signal and its source base instead. A fabricated spread would be worse than the missing one, because it would make an inferred call look surveyed.

This skill does not define "clearly leads" as a number, and that is deliberate. A threshold that would be right for a five-item consumer backlog is wrong for a two-item enterprise one, and inventing a house cutoff here would be the same move as inventing a sample size: a number with nothing behind it, carrying more authority than the judgment it replaced. Report the distribution and let the reader see the margin. If you cannot look at the distribution and say which category leads, that is what Ambiguous is for.

And signal strength, which is the condition a clean sample can still fail. measure-survey-analysis sets its confidence label on sample, methodology and signal strength, and the third is the one an adequacy checklist tends to drop. A representative 400-response run split near-evenly across Must-Have, Performance and Delighter for a feature has cleared every condition above and still has no answer. Report the per-feature distribution, not just the winning category, and if no category clearly leads, classify that feature Ambiguous and say what would resolve it. An unstable plurality is not a roadmap input, and "validated" is the wrong word for one at any sample size.

Cross-skill composition

  • Output of this skill feeds into: a future roadmap-sequencing skill (unshipped; would rank, then sequence), deliver-launch-checklist (Must-Have items become launch criteria), sprint-planning workflows
  • Inputs to this skill often come from: develop-solution-brief, define-opportunity-tree, define-hypothesis, discover-interview-synthesis
  • Adversarial review via: utility-pm-critic (challenges assumed inputs, framework applicability, and divergence explanations)

Output Format

Use the template in references/TEMPLATE.md to structure the output. See references/EXAMPLE.md for a complete worked multi-framework run.

Quality Checklist

Before finalizing, verify:

  • At least 3 candidate items and a stated decision context
  • Applicability filter summary names which frameworks ran and which were excluded, with rationale
  • All applicable frameworks ran (not reduced to one when several apply)
  • Every score traces to a provided input or a flagged assumption (no silent fabrication)
  • Cross-framework comparison explains each divergent item by naming the driving dimension
  • Weighted Scoring (if run) loudly flags that the weights are a choice
  • Kano is excluded with an explanation when no customer research is provided
  • If Kano ran surveyed: every item carries its evidence tier and claim strength, and the per-feature response distribution is reported rather than only the winning category
  • If Kano ran inferred: the distribution column reads not available (inferred) rather than a fabricated spread, and each item names the qualitative signal that drove it and how many sources carried that signal
  • If Kano ran: any feature whose distribution shows no clear leader is recorded as Ambiguous with what would resolve it, rather than assigned a weak plurality
  • Executive summary gives a recommendation and a next step, not just a ranking

Cross-references

  • Template: references/TEMPLATE.md
  • Examples: references/EXAMPLE.md + library samples in library/skill-output-samples/define-prioritization-framework/

FAQ

What does the define-prioritization-framework skill do?

Run applicable prioritization frameworks (RICE, ICE, MoSCoW, Weighted Scoring, Kano) against a list of features or initiatives. Produces a comparison table showing where rankings agree and diverge across frameworks, and an executive summary with recommendation. Framework applicability is filtered by data availability; Kano requires customer research. Refuses to fabricate scores; produces an estimation scaffold when input data is missing.

How do I install define-prioritization-framework?

Run npx skills add https://github.com/product-on-purpose/pm-skills --skill define-prioritization-framework in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/define-prioritization-framework/ (personal) or .claude/skills/define-prioritization-framework/ (project).

Which AI agents can use define-prioritization-framework?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is define-prioritization-framework safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains define-prioritization-framework?

It is published by product-on-purpose in product-on-purpose/pm-skills. It has 645 recorded installs.

More from product-on-purpose/pm-skills

View all →

deliver-acceptance-criteria

product-on-purpose/pm-skills

Generates structured Given/When/Then acceptance criteria for a user story or feature slice, covering the happy path, key failure scenarios, and non-functional expectations in testable form. Use when turning requirements into verifiable scenarios for engineering handoff and QA sign-off. For a dedicated catalog of boundary conditions, error states, and recovery paths across a feature, use deliver-edge-cases; to write the stories themselves, use deliver-user-stories.

Testing & QA1.1K installs

deliver-prd

product-on-purpose/pm-skills

Creates a comprehensive Product Requirements Document that aligns stakeholders on what to build, why, and how success will be measured. Use when specifying features, epics, or product initiatives for engineering handoff.

deliver-user-stories

product-on-purpose/pm-skills

Generates user stories in the standard persona, action, benefit story format from product requirements or feature descriptions. Use when breaking a feature into stories for sprint planning, writing tickets, or communicating scope to engineering. For testable Given/When/Then acceptance criteria on a story, use deliver-acceptance-criteria; for boundary and failure scenarios, use deliver-edge-cases.

deliver-edge-cases

product-on-purpose/pm-skills

Documents edge cases, error states, boundary conditions, race conditions, and recovery paths for a feature - the systematic catalog of what can go wrong and the failure modes to design for. Use during specification to map the failure surface and ensure comprehensive coverage, or during QA planning to identify boundary and limit scenarios to test. Distinct from deliver-acceptance-criteria, which writes story-level Given/When/Then checks; this skill produces the whole-feature edge-case catalog.

Testing & QA878 installs

discover-competitive-analysis

product-on-purpose/pm-skills

Creates a structured competitive analysis comparing features, pricing, and positioning across 3-5 direct and indirect competitors, with a 2x2 map and actionable strategic recommendations. Use before entering a market, planning differentiation, or after losing deals. For market size rather than competitor positioning, use discover-market-sizing instead.

define-problem-statement

product-on-purpose/pm-skills

Creates a clear problem framing document with user impact, business context, and success criteria. Use when starting a new initiative, realigning a drifted project, or communicating up to leadership.

Business & Finance821 installs

Popular productivity & automation skills

View category →

agent-browser

vercel-labs/agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.

OfficialProductivity & Automation1.3M installs

lark-doc

open.feishu.cn

飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。

lark-base

open.feishu.cn

飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。

lark-drive

open.feishu.cn

飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。

lark-shared

open.feishu.cn

Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.

lark-im

open.feishu.cn

飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。