Install
$ agentstack add skill-luckyonetwothree-vibe-skill-business-value-fit ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Value Proposition Fit Auto-Evaluation
Core Principles
- Pain Point Coverage First -- High-frequency, high-severity pain points must be covered by value propositions; omissions trigger warnings
- 531 Scoring Scale -- Fit evaluation uses 5/3/1/0 four-level scoring with unified standards, no ambiguity
- Transparent Weighted Calculation -- Pain weight = frequency x severity; gain weight = importance x satisfaction gap
- Gaps Require Action -- Uncovered pain points and gains must include improvement recommendations, not just labels
Execution Cycle: Automatically triggered after Pipeline 1 (Business Model Canvas) is complete
Core Objective: Systematically evaluate the degree of fit between value propositions and users' actual pain points and expected gains, identifying coverage blind spots and improvement opportunities.
Interaction Mode
🤖→👤 AI suggests, human approves
Input
| Input Item | Type | Required | Source | Description | |--------|------|------|------|------| | BMC Value Propositions | JSON | Yes | output/pm-strategy/business-model-canvas/bmc.json | Value propositions list, including Pain Relievers and Gain Creators | | User Research Data | JSON | Yes | user-research-user-modeling / user-research-voice-analysis | User personas, pain points, expected gains, opportunity brief |
Required Input
Value Propositions from BMC (from Pipeline 1):
{
"value_propositions": [
{
"proposition_id": "vp-1",
"headline": "Value proposition headline",
"description": "Value proposition detailed description",
"target_segment": "segment-1",
"pain_relievers": ["Pain point addressed 1", "Pain point addressed 2"],
"gain_creators": ["Gain created 1", "Gain created 2"]
}
]
}
Exploration Phase User Research Data:
{
"persona_summary": {
"demographics": "Demographic characteristics",
"behaviors": "User behavioral characteristics",
"goals": "User goals"
},
"problem_statement": {
"pains": [
{
"pain_id": "pain-1",
"description": "Pain point description",
"frequency": "Occurrence frequency",
"severity": "Severity level",
"urgency": "Urgency level"
}
],
"gains": [
{
"gain_id": "gain-1",
"description": "Expected gain description",
"importance": "Importance level",
"current_satisfaction": "Current satisfaction level"
}
]
},
"opportunity_definition": {
"opportunity_description": "Enterprise training digitalization penetration rate only 28%, AI personalized learning demand growing 45% annually",
"evidence": ["iResearch 2024 enterprise training market report", "State Council vocational education reform implementation plan"]
}
}
Execution Steps
Step 1: Pain Point Alignment Assessment [Core]
Task: Systematically evaluate the coverage of each Pain Reliever against user pain points.
Scoring Standard (5/3/1 scoring):
| Score | Meaning | Judgment Criteria | |------|------|----------| | 5 | Perfect coverage | Value proposition fully addresses the core of the pain point, users can significantly perceive it | | 3 | Partial coverage | Value proposition addresses the pain point but not the core dimension, or with limited effectiveness | | 1 | Edge coverage | Value proposition has weak association with the pain point, only indirect impact | | 0 | Not covered | Value proposition does not address this pain point |
Execution Logic:
- Iterate through each Pain Reliever
- Match against each pain point in the problem statement
- Determine match score based on scoring criteria
- Calculate weighted average score (weight: frequency x severity)
Output Format:
{
"pain_alignment": {
"covered_pains": [
{
"pain_id": "pain-1",
"pain_description": "Training effectiveness difficult to quantify and track",
"matched_by": ["vp-1"],
"coverage_score": 5,
"coverage_quality": "full/partial/edge/none",
"notes": "AI learning report feature fully covers this pain point"
}
],
"uncovered_pains": [
{
"pain_id": "pain-5",
"pain_description": "Student learning paths lack personalization",
"frequency": "high",
"severity": "high",
"impact": "High-frequency high-severity pain point 'Course content disconnected from job requirements' not covered",
"recommendation": "Recommend adding job skill graph matching feature"
}
],
"pain_coverage_summary": {
"total_pains": 10,
"fully_covered": 4,
"partially_covered": 3,
"uncovered": 3,
"weighted_average_score": 3.2,
"high_frequency_coverage_rate": "80%"
}
}
}
Acceptance Criteria:
- All Pain Relievers matched against pain points
- Each pain point has clear coverage status
- Omitted pain points include improvement recommendations
Step 2: Gain Creation Validation [Core]
Task: Evaluate the match between Gain Creators and users' expected gains.
Execution Logic:
- Iterate through each Gain Creator
- Match against expected gains in the problem statement
- Evaluate the authenticity and achievability of gain creation
- Identify user expectations not promised
Output Format:
{
"gain_validation": {
"covered_gains": [
{
"gain_id": "gain-1",
"gain_description": "Training ROI quantifiable",
"created_by": ["vp-1"],
"coverage_status": "covered/partial/not_covered",
"realizability": "high/medium/low",
"notes": "AI learning report + ROI dashboard achievable, high technical maturity"
}
],
"uncovered_gains": [
{
"gain_id": "gain-3",
"gain_description": "Increased student self-directed learning motivation",
"importance": "high",
"gap_analysis": "Users expect social learning experience but current value proposition does not address it",
"recommendation": "Recommend including learning community feature in V2.0 planning"
}
],
"gain_summary": {
"total_gains": 8,
"covered": 5,
"partial": 2,
"uncovered": 1,
"alignment_rate": "75%"
}
}
}
Acceptance Criteria:
- All Gain Creators validated
- Uncovered gains identified and importance assessed
- Achievability assessment reasonable
Step 3: Overall Fit Score [Core]
Task: Synthesize pain point coverage and gain creation to calculate overall fit score.
Weighted Average Calculation:
Overall Fit Score = (Pain Alignment Score x 0.6) + (Gain Validation Score x 0.4)
Score Interpretation: | Score Range | Meaning | Action Recommendation | |----------|------|----------| | 4.0-5.0 | Excellent fit | Value proposition design is sound, can proceed to next phase | | 3.0-3.9 | Good fit | Room for improvement, recommend optimizing before proceeding | | 2.0-2.9 | Fair fit | Notable gaps exist, value propositions need adjustment | | 1.0-1.9 | Poor fit | Significant misalignment between value propositions and user needs | | 0-0.9 | Severe misalignment | Value propositions need to be redesigned |
Output Format:
{
"overall_fit_score": 3.4,
"score_interpretation": "Good fit",
"score_breakdown": {
"pain_alignment_score": 3.5,
"pain_weight": 0.6,
"pain_contribution": 2.1,
"gain_validation_score": 3.25,
"gain_weight": 0.4,
"gain_contribution": 1.3
},
"coverage_rate": {
"pain_coverage": "80%",
"gain_coverage": "75%",
"high_priority_coverage": "85%"
}
}
Output Depth Grading
| Depth Level | Output Scope | Description | |----------|----------|------| | quick | value-market fit assessment | Core conclusions + minimum viable deliverable | | standard | Full deliverables (default) | Complete output including all Steps | | deep | Full assessment + value-market fit matrix + gap analysis + optimization roadmap | Full deliverables + extended analysis + deep simulation |
Output
Storage Path: output/pm-strategy/business-value-fit/
Output File: evaluation_report.json
Output Validation Rules
| Field Path | Type | Required | Description | |----------|------|------|------| | evaluationreport.evaluationmetadata.evaluatedat | string | Yes | Evaluation timestamp | | evaluationreport.evaluationmetadata.valuepropositionsevaluated | number | Yes | Number of value propositions evaluated | | evaluationreport.evaluationmetadata.painsanalyzed | number | Yes | Number of pain points analyzed | | evaluationreport.evaluationmetadata.gainsanalyzed | number | Yes | Number of gains analyzed | | evaluationreport.evaluationmetadata.confidence | string | Yes | high/medium/low | | evaluationreport.painalignment.coveredpains | array | Yes | Covered pain points list | | evaluationreport.painalignment.coveredpains[].painid | string | Yes | Pain point ID, must not be empty | | evaluationreport.painalignment.coveredpains[].coveragescore | number | Yes | Coverage score, 0-5 | | evaluationreport.painalignment.coveredpains[].coveragequality | string | Yes | Coverage quality, enum: full/partial/edge/none | | evaluationreport.painalignment.uncoveredpains | array | Yes | Uncovered pain points list, each with recommendation | | evaluationreport.painalignment.uncoveredpains[].painid | string | Yes | Pain point ID, must not be empty | | evaluationreport.painalignment.uncoveredpains[].frequency | string | Yes | Frequency, enum: high/medium/low | | evaluationreport.painalignment.uncoveredpains[].severity | string | Yes | Severity, enum: high/medium/low | | evaluationreport.painalignment.uncoveredpains[].recommendation | string | Yes | Improvement suggestion, must not be empty | | evaluationreport.painalignment.paincoveragesummary | object | Yes | Coverage statistics | | evaluationreport.painalignment.paincoveragesummary.totalpains | number | Yes | Total pain points count | | evaluationreport.painalignment.paincoveragesummary.fullycovered | number | Yes | Fully covered count | | evaluationreport.painalignment.paincoveragesummary.uncovered | number | Yes | Uncovered count | | evaluationreport.gainvalidation.coveredgains | array | Yes | Covered gains list | | evaluationreport.gainvalidation.coveredgains[].gainid | string | Yes | Gain ID, must not be empty | | evaluationreport.gainvalidation.coveredgains[].coveragestatus | string | Yes | Coverage status, enum: covered/partial/notcovered | | evaluationreport.gainvalidation.coveredgains[].realizability | string | Yes | Realizability, enum: high/medium/low | | evaluationreport.gainvalidation.uncoveredgains | array | Yes | Uncovered gains list, each with recommendation | | evaluationreport.gainvalidation.uncoveredgains[].gainid | string | Yes | Gain ID, must not be empty | | evaluationreport.gainvalidation.uncoveredgains[].importance | string | Yes | Importance, enum: high/medium/low | | evaluationreport.gainvalidation.uncoveredgains[].recommendation | string | Yes | Improvement suggestion, must not be empty | | evaluationreport.overallfitscore | number | Yes | Overall fit score 0-5 | | evaluationreport.coveragerate | object | Yes | Coverage metrics | | evaluationreport.improvementsuggestions | array | Yes | Improvement suggestions list | | evaluationreport.improvementsuggestions[].priority | string | Yes | Priority, enum: high/medium/low | | evaluationreport.improvementsuggestions[].category | string | Yes | Suggestion category, enum: addpaincoverage/enhancegain/clarifymessage/reposition | | evaluationreport.improvementsuggestions[].description | string | Yes | Suggestion description, must not be empty | | evaluationreport.warnings | array | Yes | Warnings list | | evaluationreport.warnings[].warningtype | string | Yes | Warning type, e.g. highfrequencyuncovered | | evaluationreport.warnings[].description | string | Yes | Warning description, must not be empty | | evaluationreport.warnings[].severity | string | Yes | Severity, enum: high/medium/low |
Complete Evaluation Report
{
"evaluation_report": {
"evaluation_metadata": {
"evaluated_at": "2024-06-15T14:20:00Z",
"value_propositions_evaluated": 3,
"pains_analyzed": 10,
"gains_analyzed": 8,
"confidence": "high/medium/low"
},
"pain_alignment": {...},
"gain_validation": {...},
"overall_fit_score": {...},
"coverage_rate": {...},
"improvement_suggestions": [
{
"suggestion_id": "sug-1",
"priority": "high/medium/low",
"category": "add_pain_coverage/enhance_gain/clarify_message/reposition",
"description": "Add AI learning path effectiveness visualization feature to cover student progress tracking pain point",
"expected_impact": "Pain point coverage rate increases 15%, fit score improves 0.5 points",
"implementation_effort": "Medium, requires 2 sprint development cycles"
}
],
"warnings": [
{
"warning_type": "high_frequency_uncovered",
"description": "High-frequency pain point 'Training effectiveness difficult to quantify' not covered by value proposition",
"affected_pains": ["pain-3", "pain-7"],
"severity": "high"
}
]
}
}
Decision Rules
Warning Trigger Rules
- High-Frequency Pain Point Omission Warning:
- Trigger condition: Pain point with frequency >=20% not covered
- Action: Generate warning, explicitly label affected pain points
- Severity: High
- High-Severity Pain Point Omission Warning:
- Trigger condition: Pain point coverage rate for severity=high Directly evaluate fit | Lacks BMC structured data, value propositions may be incomplete | Request user to provide product value proposition description, or upload bmc.json |
| User research data (voice-analysis / persona) | User provides value propositions and user pain points -> Directly evaluate fit | Lacks user research data, pain point frequency and severity lack empirical evidence | Request user to describe user pain points, or upload persona.json / voice-analysis.json | | bmc.json + User research data | User provides value proposition and user pain point descriptions -> Directly evaluate fit | Overall confidence reduced, scoring lacks data anchoring | Request user to describe value propositions and pain points, or upload bmc.json / persona.json / voice-analysis.json | | All upstream files missing | Prompt user to execute prior phases first, or evaluate fit based on user-provided value propositions and pain points | Overall confidence significantly reduced, evaluation is assumption-based only | Request user to provide product value propositions, target user pain points, and core feature descriptions |
Data Acquisition Instructions
This Skill requires BMC and user research data, please provide through one of the following methods:
- Directly describe value propositions and user pain points
- Upload bmc.json / persona.json / voice-analysis.json files
- Provide data file paths
- AI is not responsible for external data collection, only for analysis
Upstream Change Response
Upstream Change Impact Table
| Upstream Change | Impact Scope | Response Strategy | |----------|----------|----------| | bmc.json value proposition change | Pain point alignment and gain creation validation need re-evaluation | Re-execute Step 1-3, update fit scores | | bmc.json customer segment adjustment | Value proposition and segment group correspondence | Re-match value propositions with target users | | persona/voice-analysis user pain point update | Pain point coverage rate and omission analysis | Re-execute Step 1, update uncovered pain points list | | problem-statement problem statement change | Pain point and gain priority weights | Recalculate weighted scores, update overall fit assessm
…
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: LuckyOneTwoThree
- Source: LuckyOneTwoThree/vibe-skill
- License: MIT
- Homepage: https://luckyonetwothree.github.io/all-skill-html/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.