with one click
prioritize
// [Project Management] Use when you need to prioritize backlog items using RICE, MoSCoW, or Value-Effort frameworks.
// [Project Management] Use when you need to prioritize backlog items using RICE, MoSCoW, or Value-Effort frameworks.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | prioritize |
| description | [Project Management] Use when you need to prioritize backlog items using RICE, MoSCoW, or Value-Effort frameworks. |
Codex compatibility note:
- Invoke repository skills with
$skill-namein Codex; this mirrored copy rewrites legacy Claude/skill-namereferences.- Prefer the
plan-hardskill for planning guidance in this Codex mirror.- Task tracker mandate: BEFORE executing any workflow or skill step, create/update task tracking for all steps and keep it synchronized as progress changes.
- User-question prompts mean to ask the user directly in Codex.
- Ignore Claude-specific mode-switch instructions when they appear.
- Strict execution contract: when a user explicitly invokes a skill, execute that skill protocol as written.
- Subagent authorization: when a skill is user-invoked or AI-detected and its protocol requires subagents, that skill activation authorizes use of the required
spawn_agentsubagent(s) for that task.- Do not skip, reorder, or merge protocol steps unless the user explicitly approves the deviation first.
- For workflow skills, execute each listed child-skill step explicitly and report step-by-step evidence.
- If a required step/tool cannot run in this environment, stop and ask the user before adapting.
Codex does not receive Claude hook-based doc injection. When coding, planning, debugging, testing, or reviewing, open project docs explicitly using this routing.
Always read:
docs/project-config.json (project-specific paths, commands, modules, and workflow/test settings)docs/project-reference/docs-index-reference.md (routes to the full docs/project-reference/* catalog)docs/project-reference/lessons.md (always-on guardrails and anti-patterns)Situation-based docs:
backend-patterns-reference.md, domain-entities-reference.md, project-structure-reference.mdfrontend-patterns-reference.md, scss-styling-guide.md, design-system/README.mdfeature-docs-reference.mdintegration-test-reference.mde2e-test-reference.mdcode-review-rules.md plus domain docs above based on changed filesDo not read all docs blindly. Start from docs-index-reference.md, then open only relevant files for the task.
[BLOCKING] Execute skill steps in declared order. NEVER skip, reorder, or merge steps without explicit user approval. [BLOCKING] Before each step or sub-skill call, update task tracking: set
in_progresswhen step starts, setcompletedwhen step ends. [BLOCKING] Every completed/skipped step MUST include brief evidence or explicit skip reason. [BLOCKING] If Task tools are unavailable, create and maintain an equivalent step-by-step plan tracker with the same status transitions.
Goal: Order 3+ backlog items using RICE, MoSCoW, or Value-Effort frameworks with scores and rationale.
Workflow:
Key Rules:
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
Order backlog items using data-driven prioritization frameworks to produce a ranked list with scores and rationale.
product-owner or storyproduct-ownerproject-managerteam-artifacts/pbis/ or user-provided pathCollect items to prioritize
Select framework using decision tree:
IF quantitative data available (reach, metrics) -> RICE
IF stakeholder alignment needed (must/should/could) -> MoSCoW
IF quick decision needed (2 axes only) -> Value-Effort 2x2
IF user specifies framework -> use that framework
IF unsure -> ask user, default RICE
Score each item using selected framework:
RICE:
Score = (Reach x Impact x Confidence) / Effort
Reach: Users affected per quarter (number)
Impact: 0.25 (minimal) | 0.5 (low) | 1 (medium) | 2 (high) | 3 (massive)
Confidence: 0.5 (low) | 0.8 (medium) | 1.0 (high)
Effort: Story points (1, 2, 3, 5, 8, 13, 21)
MoSCoW:
Must Have: Critical for release, non-negotiable
Should Have: Important but not vital, workarounds exist
Could Have: Desirable, include if capacity allows
Won't Have: Out of scope for this cycle
Value-Effort 2x2:
High Value + Low Effort = Quick Wins (do first)
High Value + High Effort = Strategic (plan carefully)
Low Value + Low Effort = Fill-ins (if time permits)
Low Value + High Effort = Time Sinks (avoid)
Rank items by score (descending for RICE, category for MoSCoW, quadrant for V-E)
Output prioritized list with scores and rationale
IF PBI files exist -> optionally update priority field in frontmatter (numeric 1-999)
## Prioritized Backlog
**Framework:** [RICE | MoSCoW | Value-Effort]
**Date:** [YYMMDD]
**Items scored:** [count]
### Rankings
| Rank | Item | Score | Rationale |
| ---- | --------- | ----- | --------------------------------------------------- |
| 1 | Feature A | 45.0 | High reach (5000), high impact (3), high confidence |
| 2 | Feature B | 12.0 | Medium reach (2000), medium impact, low effort |
| 3 | Feature C | 2.5 | Low reach, minimal impact, high effort |
### Recommendations
- **Do first:** [top items]
- **Plan next:** [medium items]
- **Defer:** [low items with reasoning]
Input: "Prioritize: SSO login, dark mode, export to PDF, email notifications, bulk import"
Output:
| Rank | Feature | Reach | Impact | Conf | Effort | RICE |
|---|---|---|---|---|---|---|
| 1 | Email notifications | 5000 | 2 | 0.8 | 1 | 8000 |
| 2 | SSO login | 2000 | 3 | 0.8 | 3 | 1600 |
| 3 | Bulk import | 500 | 2 | 1.0 | 1 | 1000 |
| 4 | Export to PDF | 1000 | 1 | 0.8 | 2 | 400 |
| 5 | Dark mode | 3000 | 0.5 | 0.5 | 2 | 375 |
Input: "Categorize for Q1 release: payment gateway, admin dashboard redesign, API rate limiting, user avatars, audit logs"
Output:
Gate evaluation: After producing the prioritized backlog (per ## Workflow step output), inspect the ranking output:
MANDATORY ATTENTION — when the gate fires, you MUST use a direct user question to present these options (identical preamble pattern to architecture-design's ## Next Steps MANDATORY ATTENTION block):
$why-review, $plan-validate (use these instead if the tie is narrow but stakes are routine).If gate does NOT fire, the prioritization decision stands; do NOT prompt.
| Skill | When to use instead |
|---|---|
product-owner | Full product management workflow |
story | Breaking PBIs into user stories |
refine | Refining ideas into PBIs |
project-manager | Sprint/project status and tracking |
in_progress before execution, set completed after executionfile:line evidence for every claim (confidence >80% to act)[TASK-PLANNING] Before acting, analyze task scope and systematically break it into small todo tasks and sub-tasks using task tracking.
[IMPORTANT] Analyze how big the task is and break it into many small todo tasks systematically before starting — this is very important.
[IMPORTANT] Use task tracking to break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ATTENTION ask user whether to skip.
Critical Thinking Mindset — Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence >80% to act. Anti-hallucination: Never present guess as fact — cite sources for every claim, admit uncertainty freely, self-check output for errors, cross-reference independently, stay skeptical of own confidence — certainty without evidence root of all hallucination.
AI Mistake Prevention — Failure modes to avoid on every task:
- Check downstream references before deleting. Deleting components causes documentation and code staleness cascades. Map all referencing files before removal.
- Verify AI-generated content against actual code. AI hallucinates APIs, class names, and method signatures. Always grep to confirm existence before documenting or referencing.
- Trace full dependency chain after edits. Changing a definition misses downstream variables and consumers derived from it. Always trace the full chain.
- Trace ALL code paths when verifying correctness. Confirming code exists is not confirming it executes. Always trace early exits, error branches, and conditional skips — not just happy path.
- When debugging, ask "whose responsibility?" before fixing. Trace whether bug is in caller (wrong data) or callee (wrong handling). Fix at responsible layer — never patch symptom site.
- Assume existing values are intentional — ask WHY before changing. Before changing any constant, limit, flag, or pattern: read comments, check git blame, examine surrounding code.
- Verify ALL affected outputs, not just the first. Changes touching multiple stacks require verifying EVERY output. One green check is not all green checks.
- Holistic-first debugging — resist nearest-attention trap. When investigating any failure, list EVERY precondition first (config, env vars, DB names, endpoints, DI registrations, data preconditions), then verify each against evidence before forming any code-layer hypothesis.
- Surgical changes — apply the diff test. Bug fix: every changed line must trace directly to the bug. Don't restyle or improve adjacent code. Enhancement task: implement improvements AND announce them explicitly.
- Surface ambiguity before coding — don't pick silently. If request has multiple interpretations, present each with effort estimate and ask. Never assume all-records, file-based, or more complex path.
Source: .claude/hooks/lib/prompt-injections.cjs + .claude/.ck.json
$workflow-start <workflowId> for standard; sequence custom steps manually[CRITICAL] Hard-won project debugging/architecture rules. MUST ATTENTION apply BEFORE forming hypothesis or writing code.
Goal: Prevent recurrence of known failure patterns — debugging, architecture, naming, AI orchestration, environment.
Top Rules (apply always):
ExecuteInjectScopedAsync for parallel async + repo/UoW — NEVER ExecuteUowTaskwhere python/where py) — NEVER assume python/python3 resolvesExecuteInjectScopedAsync, NEVER ExecuteUowTask. ExecuteUowTask creates new UoW but reuses outer DI scope (same DbContext) — parallel iterations sharing non-thread-safe DbContext silently corrupt data. ExecuteInjectScopedAsync creates new UoW + new DI scope (fresh repo per iteration).AccountUserEntityEventBusMessage = Accounts owns). Core services (Accounts, Communication) are leaders. Feature services (Growth, Talents) sending to core MUST use {CoreServiceName}...RequestBusMessage — never define own event for core to consume.HrManagerOrHrOrPayrollHrOperationsPolicy names set members, not what it guards. Add role → rename = broken abstraction. Rule: names express DOES/GUARDS, not CONTAINS. Test: adding/removing member forces rename? YES = content-driven = bad → rename to purpose (e.g., HrOperationsAccessPolicy). Nuance: "Or" fine in behavioral idioms (FirstOrDefault, SuccessOrThrow) — expresses HAPPENS, not membership.python/python3 resolves — verify alias first. Python may not be in bash PATH under those names. Check: where python / where py. Prefer py (Windows Python Launcher) for one-liners, node if JS alternative exists.Test-specific lessons →
docs/project-reference/integration-test-reference.mdLessons Learned section. Production-code anti-patterns →docs/project-reference/backend-patterns-reference.mdAnti-Patterns section. Generic debugging/refactoring reminders → System Lessons in.claude/hooks/lib/prompt-injections.cjs.
ExecuteInjectScopedAsync, NEVER ExecuteUowTask (shared DbContext = silent data corruption){CoreServiceName}...RequestBusMessagepython/python3 resolves — run where python/where py first, use py launcher or nodeBreak work into small tasks (task tracking) before starting. Add final task: "Analyze AI mistakes & lessons learned".
Extract lessons — ROOT CAUSE ONLY, not symptom fixes:
$learn.$code-review/$code-simplifier/$security/$lint catch this?" — Yes → improve review skill instead.$learn.
[TASK-PLANNING] [MANDATORY] BEFORE executing any workflow or skill step, create/update task tracking for all planned steps, then keep it synchronized as each step starts/completes.