Painpoint To MVP
Modes
- Discovery mode: find and rank product opportunities from public user discussion evidence.
- PRD mode: turn one persisted opportunity into a lightweight PRD for a coding agent.
If the user asks for both, discovery comes first.
Hard Rules
references/contracts.mdis the only runtime contract reference.- Only inspect scripts when a documented helper command fails unexpectedly or when explicitly modifying this skill.
- Read
references/contracts.mdonce per run, not repeatedly.
Preferred Commands
Use these commands for normal operation:
npm run bootstrap:tidbnpm run tidb -- save-evidence-batchnpm run tidb -- save-opportunity-batchnpm run tidb -- get-opportunitynpm run tidb -- save-prdnpm run tidb -- get-prdnpm run tidb -- list-runs
Compatibility-only commands:
npm run tidb -- save-evidencenpm run tidb -- save-opportunity
Use the single-row save commands only for manual recovery or compatibility flows.
Normal Execution Defaults
- Check required environment once per run.
- Collect evidence first, then persist in batch.
- Prefer JSON via stdin over temp files.
- Use
--input-fileonly when the payload is too large or awkward for stdin.
Discovery Mode
- Read
references/contracts.mdonce. - Check required environment.
- Collect evidence with search/scraping tools or skills (e.g. bundled websearch, meirkad/bright-data, buksan1950/reddit-readonly).
- Persist all evidence with
save-evidence-batch. - Cluster and rank opportunities using the contract rubric.
- Persist ranked opportunities with
save-opportunity-batch. - Return a ranked summary with
run_id,opportunity_id, score, confidence, and caveats.
PRD Mode
- Resolve the target opportunity by
opportunity_id, or byrun_idplus rank when explicitly provided. - Read the persisted opportunity with
get-opportunity. - Generate the PRD from the persisted opportunity and its evidence, not chat memory.
- Persist the PRD with
save-prd. - Return the human-readable PRD and include
prd_id.
Non-Drift Rules
- Never invent SQL. Use the documented helper commands.
- Never generate a PRD from an unpersisted opportunity summary.
- Never use conversational numbering like "opportunity #2" as the only identifier once results are persisted.
- Never claim product-market fit.
- When evidence is weak, say
insufficient evidence. - Preserve contradictions when sources disagree.
Quality Bar
- Prefer repeated, concrete complaints over clever one-offs.
- Distinguish category pain from vendor-specific complaints.
- Keep evidence traceable through
source_url,pain_cluster_id, and persisted identifiers. - Optimize PRDs for a coding agent with explicit scope, non-goals, constraints, and acceptance criteria.