Use when ranking a list of requirements, features, or backlog items using RICE / ICE / MoSCoW / Kano. Built-in decision tree picks the right framework based on data availability and decision context. Output is a transparent matrix, 2×2 Impact/Effort quadrant, and a Sprint allocation proposal. User-invoked only — do NOT auto-trigger. Triggers on "/pm-prioritize", "/prioritize", "приоритизация", "ранжируй бэклог", "RICE-анализ", "prioritize requirements", "RICE", "ICE", "MoSCoW", "Kano", "rank backlog".
npx skills add https://github.com/serejaris/personal-corp-skills --skill pm-prioritize
Part of the Personal Corp framework — running a one-person business through AI agents.
Rank a list of requirements using a structured framework. A built-in decision tree picks the right framework based on data availability and decision context. Output is transparent and traceable, so a team can argue with the scores instead of the recommendation.
| Field | Required | Notes |
|---|---|---|
| Requirement list | yes | Name + brief description; ≥ 3 items. Can take a pain-point list from /pm-feedback or a feature list from /pm-prd |
| Framework | no | RICE / ICE / MoSCoW / Kano; auto-recommended if not given |
| Business goal | no | Current focus (growth / retention / revenue / efficiency); affects weighting |
| Resource constraint | no | Available dev capacity (person-days or Story Points) |
Most of the skill works out-of-box. If you want stable defaults across runs, add an ## Prioritize Config section to your project's CLAUDE.md:
## Prioritize Config
### Default framework (optional)
If unset, the skill auto-recommends per the decision table below.
- default_framework: RICE | ICE | MoSCoW | Kano
### Default resource constraint (optional)
Used in the Sprint allocation step. Skip if you'd rather state it per run.
- sprint_capacity: 20 person-days per Sprint
### Backlog source (optional)
Where the skill should fetch the requirement list from when you don't paste one.
- backlog_source: gh-issues # gh-issues | github-project | tasks-file | paste
- gh_owner: your-github-handle
- gh_repo: your-main-repo
- gh_label: backlog
- tasks_file: docs/backlog.md
When a config field is set, the skill uses it silently. When unset, the skill asks (see "When input is incomplete").
If the user points at a backlog source instead of pasting items, the skill can pull the list itself:
# GitHub issues by label
gh issue list -R $OWNER/$REPO --label $LABEL --state open \
--json number,title,body --limit 100
# GitHub Project items
gh project item-list $PROJECT_ID --owner $OWNER --format json
# Local backlog file
cat $TASKS_FILE
If unspecified, recommend per this decision table:
| Condition | Recommended | Why |
|---|---|---|
| Have user-impact data per item (DAU, conversion), trustworthy | RICE | Most quantitative, traceable |
| Have intuition but no precise data | ICE | Quick scoring, tolerates subjectivity |
| Need 4-bucket alignment fast (e.g. team meeting) | MoSCoW | Forces "must" / "won't" consensus |
| Need to understand requirement nature, plan features | Kano | Identifies delight features |
Framework comparison:
| Framework | Use case | Strength | Limit | Time |
|---|---|---|---|---|
| RICE | Data-supported quarterly planning | Most objective, comparable | Depends on data quality | Medium |
| ICE | Fast decisions, brainstorming | Simple, fast | Highly subjective | Low |
| MoSCoW | Release planning, stakeholder alignment | Forces consensus | Easy to put everything in Must | Low |
| Kano | Feature planning, satisfaction research | Identifies delighters | Needs user research data | High |
| Dimension | Meaning | Scoring | Common error |
|---|---|---|---|
| Reach | Users impacted in one cycle | Concrete number ("5000 users/month") | "All users theoretically" as Reach |
| Impact | Per-user impact magnitude | 3 = massive, 2 = high, 1 = medium, 0.5 = low, 0.25 = minimal | Everything gets 3 |
| Confidence | Confidence in the estimate | 100% = data, 80% = indirect evidence, 50% = gut | 100% with no data |
| Effort | Total person-months across all roles | Includes design + dev + QA + integration | Counting only dev |
RICE Score = (R × I × C) / E — higher = higher priority.
Calibration mechanism:
Score 1-10 on each dimension. ICE Score = I × C × E / 10.
| Dimension | Scoring |
|---|---|
| Impact | 1 = trivial, 5 = medium, 10 = transformational |
| Confidence | 1 = pure guess, 5 = indirect evidence, 10 = A/B test data |
| Ease | 1 = very hard (> 3 months), 5 = medium (2-4 weeks), 10 = trivial (< 1 day) |
| Bucket | Definition | Suggested share |
|---|---|---|
| Must Have | Without it, can't ship; users can't use core feature | ≤ 60% |
| Should Have | Important but has workaround; one-Sprint delay non-fatal | ~ 20% |
| Could Have | Nice-to-have; better with, fine without | ~ 10% |
| Won't Have (this time) | Explicitly out of scope; possibly later | ~ 10% |
Common trap: everything ends up Must Have. Counter: cap Must Have at 60%, force trade-offs.
| Type | Trait | Detection | Strategy |
|---|---|---|---|
| Must-be | Absence → dissatisfaction; presence → taken for granted | Users don't ask for it but rage when missing | Reach passing grade, don't over-invest |
| One-dimensional | More = more satisfaction (linear) | Users actively request | Core competitive area, top-tier execution |
| Attractive | Absence → no dissatisfaction; presence → delight | Unexpected, evokes "wow" | Differentiator (decays to one-dimensional over years) |
| Indifferent | Doesn't matter either way | No user reaction | Don't invest |
| Reverse | Presence reduces satisfaction | Adds complexity, annoys users | Remove immediately |
Kano decay: today's Attractive feature becomes One-dimensional, then Must-be over 2-3 years (e.g. fingerprint unlock). Continuously create new delighters.
RICE results table:
| Rank | Requirement | R | I | C | E | RICE Score | Recommendation |
|---|---|---|---|---|---|---|---|
| 1 | {name} | {n} | {0.25-3} | {50-100%} | {pm} | {score} | This cycle |
Impact × Effort 2×2:
| Quadrant | Impact | Effort | Strategy | Items |
|---|---|---|---|---|
| Quick Wins | High | Low | Do first | {list} |
| Strategic | High | High | Plan carefully | {list} |
| Fill-ins | Low | Low | When idle | {list} |
| Avoid | Low | High | Don't do | {list} |
Sprint allocation:
sprint_capacity (config) or stated resource constraintweekly-planning — uses the ranked backlog from this skill to pick weekly OKRs / outcomes. Prioritization feeds OKR selection, not replaces it.weekly-retro — feeds the next backlog with retro findings and carry-over items/pm-user-stories — top-priority requirements → break into Stories/pm-prd — Must-Have requirements → write PRDsComprehensive GitHub project management with swarm-coordinated issue tracking, project board automation, and sprint planning
Comprehensive technology-agnostic prompt for analyzing and documenting project folder structures. Auto-detects project types (.NET, Java, React, Angular, Python, Node.js, Flutter), generates detailed blueprints with visualization options, naming conventions, file placement patterns, and extension templates for maintaining consistent code organization across diverse technology stacks.
Use when complex problems require systematic step-by-step reasoning with ability to revise thoughts, branch into alternative approaches, or dynamically adjust scope. Ideal for multi-stage analysis, design planning, problem decomposition, or tasks with initially unclear scope.
Multi-agent workflow examples to work together on the OpenServ Platform. Covers agent discovery, multi-agent workspaces, task dependencies, and workflow orchestration using the Platform Client. Read reference.md for the full API reference. Read openserv-agent-sdk and openserv-client for building and running agents.
> Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md.
API design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.
Patterns for automating GitHub workflows with AI assistance, inspired by [Gemini CLI](https://github.com/google-gemini/gemini-cli) and modern DevOps practices.
Groups existing components into logical business domains to plan service-based architecture. Use when asking "which components belong together?", "group these into services", "organize by domain", "component-to-domain mapping", or planning service extraction from an existing codebase. Do NOT use for identifying new domains from scratch (use domain-analysis) or analyzing coupling (use coupling-analysis).
Take serejaris/pm-prioritize from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.