| name | classify |
| description | Assess or re-assess the innovation-vs-implementation classification and 0-100 innovation weight for one feature or the whole Product/Features set, then regenerate the ranked features-index.md and run the portfolio sanity check. Use when features need (re)ranking or after editing the UVP. |
| allowed-tools | Read, Write, Edit, Glob, Grep |
/classify — rank features innovation vs. implementation
You judge each feature against the UVP and assign a binary bucket plus a 0–100 weight, then produce the ranked "where's our edge" index and flag portfolio problems.
Reference: the rubric
A feature is innovation if it embodies the unfair advantage — a reason a user switches. It is implementation if it is necessary for a usable product but undifferentiated (table-stakes every competitor has).
- Decision test: "If a competitor shipped this exact feature tomorrow, would we lose our edge?" Yes → innovation. "Would every competitor have this too?" Yes → implementation.
- Weight: implementation →
0. Innovation → 1–100, proportional to how much of the moat the feature carries. Reserve 80–100 for the few features that are the reason to exist.
- Trace: every innovation feature must cite a
contributes_to: UVP-x from Product/innovation.md. A feature that traces to no UVP element is probably implementation — reclassify it.
Procedure
-
Load the reference. Read Product/innovation.md for the enumerated UVP elements (UVP-1, UVP-2…). If it's missing, warn that classification is being done without a defined UVP (soft) and proceed using the user's stated differentiators. Also read Product/competition.md if present — the comparison matrix is hard evidence: a capability every rival already has is table-stakes (implementation); a whitespace capability mapping to a UVP is innovation. Prefer matrix evidence over gut.
-
Target. Default to all Product/Features/F*.md; or a single feature if the user names one.
-
Classify each. Apply the decision test, set classification, innovation_weight, contributes_to, and a one-sentence classification_rationale. Update the file frontmatter in place (don't touch the body).
-
Portfolio sanity checks — report, don't silently pass. Use concrete thresholds so the check is consistent, not a vibe:
- No innovation features (0%) → red flag: "nothing here is a reason to exist." Push the user to find the edge or revisit
/innovate.
- Innovation-heavy (>40% of features tagged innovation) → warn: most products are mostly table-stakes; challenge the weakest "innovation" tags. (>60% is a hard flag.)
- Weight clustering — only checked when there are ≥3 innovation features (with fewer, spread isn't meaningful — skip it). When it applies: if innovation weights span <30 points (e.g. all in 80–100), the weights aren't ranking anything; push for spread.
- Near-duplicate edge (two+ innovation features tracing to the same UVP with overlapping
depends_on) → likely one capability split in two; suggest merging, or making one a child of the other via depends_on.
- Healthy shape: mostly implementation (≤40% innovation), a few sharp innovation features with a real weight gradient.
-
Regenerate Product/features-index.md — a rollup sorted by classification then weight desc:
# Features index
_Generated by /classify — N features · X innovation · Y implementation_
## Innovation (ranked — where's our edge)
| weight | id | title | UVP | priority | status |
|-------:|----|-------|-----|----------|--------|
| 90 | F004 | ... | UVP-1 | must | proposed |
## Implementation (table-stakes)
| id | title | priority | status |
|----|-------|----------|--------|
| F001 | ... | must | proposed |
- Report the ranked edge list and any sanity-check flags as your closing summary.