Install
openclaw skills install autosolutions-npd-validatorRun a full NPD validation pipeline on a product concept. Orchestrates 8 specialized subagents (Research Coordinator, 5 Independent Evaluators, Devil's Advocate, Consensus Director) to produce an evidence-based GO / CONDITIONAL GO / REVISIT / NO-GO recommendation. Use when someone asks to validate a product idea, assess market fit, or evaluate whether a product should be launched.
openclaw skills install autosolutions-npd-validatorYou are orchestrating a multi-agent product validation. Read the methodology skill
at skills/npd-methodology/SKILL.md before proceeding.
Analyze "$ARGUMENTS" to determine entry mode:
Mode A (Rough Idea): User provided <4 of 6 Concept Brief fields.
Mode B (Solid Idea): User provided ≥4 fields or said "just validate."
Create data/concept_brief.md with:
Product Name / Working Title: [...]
Category: [...]
One-Line Description: [≤15 words]
Target Consumer: [...]
Price Point Range: [...]
Key Differentiator: [...]
Launch Horizon: [now / 6 months / 12 months / 24+ months — specify target month if seasonal]
Brand Context (optional): [...]
If the user hasn't specified a launch horizon, ASK before proceeding. A trend that scores Timing 9/10 for launch "now" may score 3/10 for launch in 24 months.
Before launching the pipeline, scan the brief for internal contradictions:
If contradictions are found: flag them to the user with a specific question, e.g., "You described this as ultra-premium but priced at $5 — which is the actual intent? The validation results would be very different." Do NOT reject the idea — the user may have a valid strategy. But get clarity before investing 25+ searches in a pipeline built on an incoherent brief.
Multi-SKU launches come in two distinct flavors — identify which one applies before proceeding:
Bundle / Collection / Set: Multiple products sold together as a unit at a combined price (e.g., "The Morning Routine — 3 products, $65 together"). Consumers buy them as ONE transaction.
Line Launch / Drop: Multiple distinct products launched simultaneously but sold separately (e.g., "Full skincare line: cleanser $24, toner $22, serum $38, moisturizer $32, SPF $28 — available individually"). Consumers pick what they want.
Each has different dynamics:
Bundles — see Bundle-specific evaluator guidance below. Attachment rate is fixed at 100% for bundle buyers. SKU complexity is lower (1 bundle SKU + 3 components).
Line launches — distinct considerations the bundle framework does NOT cover:
For a line launch, the validation should produce a recommendation on optimal launch size: hero-first (launch 1, expand later based on performance), full-line (launch all 5 simultaneously), or staggered (launch 2, then add 3 more in months 3 and 6). This is a launch strategy question, not just a go/no-go.
If the multi-SKU offering is a bundle, treat it as a bundle validation, not a single-product one. Bundles have distinct dynamics: attachment rate, bundle-vs-separate margin tradeoffs, SKU complexity, and consumers' willingness to buy a set vs individual items.
Update the Concept Brief with a Bundle Context field listing each component product, the bundle price, and the sum-of-parts price. Evaluators adapt:
Do NOT produce 3 separate validations averaged together — the bundle IS the product.
If the user mentions multiple markets (e.g., "launch in US, UK, Germany, Japan"), a single composite score is misleading — regulations, competitors, trends, and consumer behavior differ significantly across markets. A product can be GO in one market and NO-GO in another.
Before launching, ask the user: "You mentioned [X] markets. For the most accurate results, I can (a) validate for your PRIMARY market and flag considerations for the others, (b) run parallel validations per market and produce per-market verdicts, or (c) use a TEST MARKET / BEACHHEAD approach — fully validate the primary market with explicit expansion-readiness criteria, so US performance can de-risk subsequent EU/UK/Australia rollouts. Option (b) takes [N × time] but gives market-specific go/no-go decisions. Option (c) is right when the user intends to use launch data from one market to inform expansion. Which do you prefer?"
If they choose (a), add the primary market to the Concept Brief and note the others as "expansion considerations." The Research Coordinator and Consumer & Trends evaluators will incorporate expansion notes without producing full per-market analyses.
If they choose (b), run the full pipeline once per market with each producing its own report, then produce a consolidated cross-market comparison as the final deliverable.
If they choose (c) — beachhead strategy — validate the primary market in depth, then produce an additional Expansion Readiness section in the final report. This section defines:
When validating multiple markets, recognize that some categories require different formulations/products per market, not just different marketing. Examples:
If the Research Coordinator identifies product-level regulatory divergence across target markets, flag it as a Critical Alert. The "same product" in US and EU may require two separate formulation development tracks, two testing files, two manufacturing runs. Commercial Viability should reflect this operational reality — it's not one product with different labels, it's effectively two products to manage.
Internal data (sales history, cost sheets, customer research, brand portfolio data) is MORE reliable than external web research. If the user provides files or data:
data/user_provided/ with a descriptive name (e.g., internal_sales_q1_q4_2025.csv)data/concept_brief.md: "User-provided data available: [list files with 1-line description each]"If the user says they have data but hasn't provided it yet, ask them to share it before Phase 2 begins.
Execute each phase by delegating to the specialized subagents:
Delegate to the npd-research-coordinator subagent:
data/context_brief.mdDelegate to ALL 5 evaluator subagents. Run them in parallel if possible:
npd-market-demand → reads concept brief + context brief → writes data/eval_market_demand.mdnpd-competitive-intel → reads concept brief + context brief → writes data/eval_competitive_intel.mdnpd-brand-fit → reads concept brief + context brief → writes data/eval_brand_fit.mdnpd-commercial-viability → reads concept brief + context brief → writes data/eval_commercial_viability.mdnpd-consumer-trends → reads concept brief + context brief → writes data/eval_consumer_trends.mdCRITICAL: Each evaluator subagent runs in its own context. They CANNOT see each other's output. This is the key architectural advantage — true independence.
Give each evaluator this instruction: "Read data/concept_brief.md and data/context_brief.md. Follow your evaluation methodology. Conduct at least 3-5 additional web searches. Score your 3 dimensions (1-10 each). Write your full evaluation to data/eval_[your-name].md"
After ALL 5 evaluators complete, delegate to npd-devils-advocate:
data/devils_case.mdAfter the Devil's Advocate completes, delegate to npd-consensus-director:
data/challenges/ and
re-invokes the relevant evaluator subagent with the challengedata/validation_report.mdRead data/validation_report.md and present to the user:
If the user wants to iterate:
When the user wants to compare two versions of a concept (e.g., "what if we did the same product but as mass market instead of premium?"):
data/concept_brief.md and data/validation_report.md as data/variant_a/data/variant_b/concept_brief.mddata/variant_b/data/comparison_report.md containing:
The two pipelines must be run independently — do not let variant A's findings contaminate variant B's evaluators.
Before running each iteration, compare the new concept to V1 (the original):
If 2+ scope creep signals are present, stop and ask the user: "This iteration has drifted substantially from V1. The concept now differs in [list changes]. Should we: (a) close this validation and start a fresh one for the new concept, or (b) continue as V[N] with the understanding that the original concept is effectively archived?"
This prevents a V7 verdict from being confused with a validation of the original concept. Both paths are valid — the user chooses. If they continue, note the drift explicitly in the iteration log and report header.
Track iteration history in data/iteration_log.md.