@veyralabs/venture-suite 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +35 -0
- package/package.json +29 -0
- package/venture-analyst/SKILL.md +269 -0
- package/venture-analyst/references/blue-ocean.md +130 -0
- package/venture-analyst/references/customer-dev.md +147 -0
- package/venture-analyst/references/lean-startup.md +123 -0
- package/venture-analyst/references/mom-test.md +146 -0
- package/venture-analyst/references/traction.md +154 -0
- package/venture-analyst/scripts/enhance_detect.py +172 -0
- package/venture-analyst/scripts/experiments.py +228 -0
- package/venture-analyst/scripts/scraper.py +194 -0
- package/venture-analyst/scripts/sources.py +288 -0
- package/venture-analyst/templates/experiment-spec.md +119 -0
- package/venture-analyst/templates/verdict.md +160 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 VeyraLabs
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# venture-suite
|
|
2
|
+
|
|
3
|
+
 
|
|
4
|
+
|
|
5
|
+
Venture Intelligence pack for Claude Code. Validate startup and SaaS ideas before building - using real evidence from HN, Reddit, GitHub, and web search. No API keys required.
|
|
6
|
+
|
|
7
|
+
Part of [VeyraSkills](https://github.com/veyralabsgroup/veyraskills) by [VeyraLabs](https://github.com/veyralabsgroup).
|
|
8
|
+
|
|
9
|
+
## Install
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx @veyralabs/skills install venture-suite
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Skills included
|
|
16
|
+
|
|
17
|
+
| Skill | What it does |
|
|
18
|
+
|-------|-------------|
|
|
19
|
+
| [venture-analyst](./venture-analyst/SKILL.md) | Four-phase idea validation: problem discovery, competitor intelligence, validation experiments, Bull/Bear/Judge verdict |
|
|
20
|
+
|
|
21
|
+
## Usage
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
/venture-analyst A SaaS tool for X targeting Y customers
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Zero friction design
|
|
28
|
+
|
|
29
|
+
No API keys. No paid accounts. No setup beyond `npm install`.
|
|
30
|
+
|
|
31
|
+
The skill collects evidence from public sources (HN Algolia, Reddit, GitHub, DuckDuckGo, Google Trends) and auto-detects available enhancements silently - if you have Docker installed, it can launch SearXNG automatically for better search coverage.
|
|
32
|
+
|
|
33
|
+
## License
|
|
34
|
+
|
|
35
|
+
MIT. Built by [VeyraLabs](https://veyralabs.com).
|
package/package.json
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@veyralabs/venture-suite",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Venture Intelligence pack for Claude Code - idea validation, competitor research, and Bull/Bear/Judge verdict",
|
|
5
|
+
"files": [
|
|
6
|
+
"venture-analyst/"
|
|
7
|
+
],
|
|
8
|
+
"keywords": [
|
|
9
|
+
"claude-code",
|
|
10
|
+
"claude-skill",
|
|
11
|
+
"agent-skill",
|
|
12
|
+
"startup-validation",
|
|
13
|
+
"market-research",
|
|
14
|
+
"idea-validation",
|
|
15
|
+
"lean-startup",
|
|
16
|
+
"saas-validation",
|
|
17
|
+
"ai-agents"
|
|
18
|
+
],
|
|
19
|
+
"author": "VeyraLabs <hello@veyralabs.com>",
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/veyralabsgroup/venture-suite.git"
|
|
24
|
+
},
|
|
25
|
+
"bugs": {
|
|
26
|
+
"url": "https://github.com/veyralabsgroup/venture-suite/issues"
|
|
27
|
+
},
|
|
28
|
+
"homepage": "https://github.com/veyralabsgroup/venture-suite#readme"
|
|
29
|
+
}
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: venture-analyst
|
|
3
|
+
description: Startup and SaaS idea validation. Researches market evidence, maps competitors, scores viability, and generates concrete validation experiments. Zero API keys required.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Venture Analyst
|
|
7
|
+
|
|
8
|
+
Research a startup or SaaS idea and determine if it's worth building. No fluff — real evidence from real sources.
|
|
9
|
+
|
|
10
|
+
## What this does
|
|
11
|
+
|
|
12
|
+
Four phases, each producing structured output:
|
|
13
|
+
|
|
14
|
+
1. **Problem Discovery** - Find evidence the problem actually exists (Reddit, HN, GitHub issues)
|
|
15
|
+
2. **Competitor Intelligence** - Map the landscape, find gaps, extract pricing signals
|
|
16
|
+
3. **Validation Experiments** - Generate 3 prioritized experiments to test demand before building
|
|
17
|
+
4. **Verdict** - Bull/Bear/Judge debate producing a final recommendation with confidence score
|
|
18
|
+
|
|
19
|
+
## How to use
|
|
20
|
+
|
|
21
|
+
Describe your idea. Include:
|
|
22
|
+
- What it does (one sentence)
|
|
23
|
+
- Who it's for (target customer)
|
|
24
|
+
- What problem it solves
|
|
25
|
+
|
|
26
|
+
Optional: budget for experiments, market type (B2C/B2B), known competitors.
|
|
27
|
+
|
|
28
|
+
## Phase 1 — Problem Discovery
|
|
29
|
+
|
|
30
|
+
**Goal:** Find evidence the problem is real and people talk about it unprompted.
|
|
31
|
+
|
|
32
|
+
Use `scripts/sources.py` to collect evidence:
|
|
33
|
+
|
|
34
|
+
```python
|
|
35
|
+
from scripts.sources import search_hn, search_hn_comments, search_reddit, search_github_issues, get_trends
|
|
36
|
+
|
|
37
|
+
# HN: find discussions, Show HN, Ask HN about the problem space
|
|
38
|
+
hn_stories = search_hn(query, limit=20)
|
|
39
|
+
hn_comments = search_hn_comments(query, min_points=3, limit=30)
|
|
40
|
+
|
|
41
|
+
# Reddit: find complaints, questions, "is there a tool for X" posts
|
|
42
|
+
reddit_posts = search_reddit(query, limit=25, timeframe="year")
|
|
43
|
+
|
|
44
|
+
# GitHub: find feature requests and pain in related tools
|
|
45
|
+
gh_issues = search_github_issues(query, limit=20)
|
|
46
|
+
|
|
47
|
+
# Trends: is interest rising or declining?
|
|
48
|
+
trend_data = get_trends(keyword)
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Synthesize findings:**
|
|
52
|
+
|
|
53
|
+
Look for these signals (strongest first):
|
|
54
|
+
- People spending money on bad solutions (evidence of willingness to pay)
|
|
55
|
+
- Recurring complaints with no good answer
|
|
56
|
+
- "Is there a tool that does X?" posts with many upvotes
|
|
57
|
+
- GitHub issues with many reactions and no resolution
|
|
58
|
+
- Rising trend line
|
|
59
|
+
|
|
60
|
+
Red flags:
|
|
61
|
+
- Zero discussion anywhere — not even a complaint
|
|
62
|
+
- Problem exists but nobody's tried to solve it (often means it's not painful enough)
|
|
63
|
+
- Only a few power users care, not a broad market
|
|
64
|
+
|
|
65
|
+
**Output format:**
|
|
66
|
+
```
|
|
67
|
+
## Problem Evidence
|
|
68
|
+
|
|
69
|
+
**Evidence Score:** [0-100] (use calculate_evidence_score())
|
|
70
|
+
**Trend:** [rising/stable/declining/no_data]
|
|
71
|
+
|
|
72
|
+
### What people say (direct quotes preferred)
|
|
73
|
+
- [Source] "[quote or paraphrase]" — [upvotes/reactions]
|
|
74
|
+
|
|
75
|
+
### Pain signals
|
|
76
|
+
- [description of signal + source count]
|
|
77
|
+
|
|
78
|
+
### Gaps found
|
|
79
|
+
- [what existing solutions miss]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Phase 2 — Competitor Intelligence
|
|
83
|
+
|
|
84
|
+
**Goal:** Map who's already solving this. Find pricing, positioning gaps, weak points.
|
|
85
|
+
|
|
86
|
+
```python
|
|
87
|
+
from scripts.scraper import scrape_competitor
|
|
88
|
+
from scripts.sources import search_github_repos, search_web
|
|
89
|
+
|
|
90
|
+
# Find competitors via web and GitHub
|
|
91
|
+
repos = search_github_repos(f"{idea} tool", limit=8)
|
|
92
|
+
web_results = search_web(f"{idea} software alternatives", limit=8)
|
|
93
|
+
|
|
94
|
+
# Scrape each competitor's pricing + positioning
|
|
95
|
+
for url in competitor_urls:
|
|
96
|
+
data = scrape_competitor(url)
|
|
97
|
+
# data has: title, tagline, description, pricing, features, tech_stack
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**Competitive map structure:**
|
|
101
|
+
```
|
|
102
|
+
| Name | Pricing | Target | Weakness | Stars |
|
|
103
|
+
|------|---------|--------|----------|-------|
|
|
104
|
+
| X | $49/mo | SMBs | No API | 2.1k |
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Gaps to look for:**
|
|
108
|
+
- Price ceiling: is there a tier missing?
|
|
109
|
+
- Audience gap: power users vs beginners vs enterprise
|
|
110
|
+
- Feature gap: what do G2/Reddit reviews complain about?
|
|
111
|
+
- Distribution gap: who's not in a specific channel?
|
|
112
|
+
|
|
113
|
+
**G2 reviews (when Playwright available):**
|
|
114
|
+
```python
|
|
115
|
+
from scripts.scraper import scrape_g2_reviews
|
|
116
|
+
reviews = scrape_g2_reviews("https://www.g2.com/products/[product]/reviews")
|
|
117
|
+
# Check for recurring "cons" patterns
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
**Output format:**
|
|
121
|
+
```
|
|
122
|
+
## Competitor Map
|
|
123
|
+
|
|
124
|
+
### Direct competitors
|
|
125
|
+
[table]
|
|
126
|
+
|
|
127
|
+
### Indirect / adjacent
|
|
128
|
+
[list with one-line descriptions]
|
|
129
|
+
|
|
130
|
+
### Market gaps
|
|
131
|
+
- Gap 1: [description + evidence]
|
|
132
|
+
- Gap 2: [description + evidence]
|
|
133
|
+
|
|
134
|
+
### Pricing landscape
|
|
135
|
+
- Range: [$X - $Y/month]
|
|
136
|
+
- Free tier pattern: [present/absent]
|
|
137
|
+
- Typical model: [seat/flat/usage]
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Phase 3 — Validation Experiments
|
|
141
|
+
|
|
142
|
+
**Goal:** Before writing code, find out if people will actually pay.
|
|
143
|
+
|
|
144
|
+
```python
|
|
145
|
+
from scripts.experiments import generate_experiments, format_experiment_output
|
|
146
|
+
|
|
147
|
+
experiments = generate_experiments(
|
|
148
|
+
idea=idea,
|
|
149
|
+
target_customer=target,
|
|
150
|
+
market_type="b2b", # or "b2c"
|
|
151
|
+
competition_level="medium", # low/medium/high
|
|
152
|
+
budget="zero", # zero / low / medium
|
|
153
|
+
)
|
|
154
|
+
|
|
155
|
+
print(format_experiment_output(experiments, idea))
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Always present experiments in priority order. Cheapest + highest-signal first.
|
|
159
|
+
|
|
160
|
+
**Mom Test enforcement** — when helping design interviews or outreach:
|
|
161
|
+
- See `references/mom-test.md` for good vs bad questions
|
|
162
|
+
- Detect and flag future-hypothetical questions ("would you use X?")
|
|
163
|
+
- Replace with past-behavior questions ("how do you currently handle X?")
|
|
164
|
+
|
|
165
|
+
## Phase 4 — Verdict
|
|
166
|
+
|
|
167
|
+
**Goal:** Simulate a debate between Bull, Bear, and Judge. Reach a conclusion.
|
|
168
|
+
|
|
169
|
+
### Bull case (write this first)
|
|
170
|
+
- Strongest evidence for building it
|
|
171
|
+
- Market timing arguments
|
|
172
|
+
- Why this team / why now
|
|
173
|
+
- Best-case scenario with numbers
|
|
174
|
+
|
|
175
|
+
### Bear case (steelman the opposition)
|
|
176
|
+
- Strongest evidence AGAINST
|
|
177
|
+
- Why existing solutions might be good enough
|
|
178
|
+
- Market risks, timing risks, competition risks
|
|
179
|
+
- Why it might fail even if the problem is real
|
|
180
|
+
|
|
181
|
+
### Judge verdict
|
|
182
|
+
Read both cases. Apply these criteria:
|
|
183
|
+
|
|
184
|
+
| Signal | Weight |
|
|
185
|
+
|--------|--------|
|
|
186
|
+
| Evidence score > 60 | +2 |
|
|
187
|
+
| Trend = rising | +1 |
|
|
188
|
+
| Competitors have clear weakness | +1 |
|
|
189
|
+
| No dominant player (>50% market) | +1 |
|
|
190
|
+
| B2B with willingness-to-pay signals | +1 |
|
|
191
|
+
| Price ceiling exists | +1 |
|
|
192
|
+
| Evidence score < 30 | -3 |
|
|
193
|
+
| Trend = declining | -2 |
|
|
194
|
+
| 1+ competitor with >100k users + free tier | -2 |
|
|
195
|
+
| Problem is niche (<10k potential users) | -1 |
|
|
196
|
+
|
|
197
|
+
**Verdict output:**
|
|
198
|
+
```
|
|
199
|
+
## Verdict
|
|
200
|
+
|
|
201
|
+
**Recommendation:** [BUILD / VALIDATE FIRST / AVOID]
|
|
202
|
+
**Confidence:** [High / Medium / Low]
|
|
203
|
+
**Score:** [+N or -N]
|
|
204
|
+
|
|
205
|
+
### Judge's reasoning
|
|
206
|
+
[2-3 sentences. Direct. No hedging.]
|
|
207
|
+
|
|
208
|
+
### If BUILD: suggested starting point
|
|
209
|
+
[Specific first step. Not generic advice.]
|
|
210
|
+
|
|
211
|
+
### If VALIDATE FIRST: critical unknown
|
|
212
|
+
[The one thing that must be proven before spending time.]
|
|
213
|
+
|
|
214
|
+
### If AVOID: core problem
|
|
215
|
+
[Why specifically this fails. What would have to change.]
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
## Enhancement detection
|
|
219
|
+
|
|
220
|
+
Run at session start to unlock better sources:
|
|
221
|
+
|
|
222
|
+
```python
|
|
223
|
+
from scripts.enhance_detect import detect_level, ensure_searxng, best_search
|
|
224
|
+
|
|
225
|
+
env = detect_level()
|
|
226
|
+
# Returns: docker, searxng, veyrascrape_mcp, github_token, exa_key, tavily_key, groq_key
|
|
227
|
+
|
|
228
|
+
# If Docker available, auto-launch SearXNG for better web search
|
|
229
|
+
if env["docker"] and not env["searxng"]:
|
|
230
|
+
ensure_searxng() # silent, no user prompt
|
|
231
|
+
|
|
232
|
+
# Use best available search
|
|
233
|
+
results = best_search(query, env, limit=10)
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
**Level 1 (always works):** HN + Reddit + GitHub + ddgs + trendspyg
|
|
237
|
+
**Level 2 (auto, no keys):** + SearXNG via Docker (if Docker installed)
|
|
238
|
+
**Level 3 (optional keys):** + Exa, Tavily, GitHub authenticated, VeyraScrape MCP
|
|
239
|
+
|
|
240
|
+
Never ask the user to set up API keys. Auto-detect and use what's available.
|
|
241
|
+
|
|
242
|
+
## Evidence Score interpretation
|
|
243
|
+
|
|
244
|
+
From `calculate_evidence_score()` in `sources.py`:
|
|
245
|
+
|
|
246
|
+
| Score | Meaning |
|
|
247
|
+
|-------|---------|
|
|
248
|
+
| 0-20 | Weak - barely any signal. Rethink or pivot problem framing |
|
|
249
|
+
| 21-40 | Thin - some signal but not convincing |
|
|
250
|
+
| 41-60 | Moderate - proceed to competitor research |
|
|
251
|
+
| 61-80 | Strong - real problem, real people care |
|
|
252
|
+
| 81-100 | Very strong - validated pain, move to experiments immediately |
|
|
253
|
+
|
|
254
|
+
## Methodology references
|
|
255
|
+
|
|
256
|
+
- `references/lean-startup.md` - validated learning, MVP types, pivot signals
|
|
257
|
+
- `references/customer-dev.md` - Steve Blank's 4 steps, problem interview structure
|
|
258
|
+
- `references/mom-test.md` - good vs bad interview questions
|
|
259
|
+
- `references/blue-ocean.md` - Value Curve, ERRC Grid, finding uncontested space
|
|
260
|
+
- `references/traction.md` - 19 acquisition channels, Bullseye framework
|
|
261
|
+
|
|
262
|
+
## Output principles
|
|
263
|
+
|
|
264
|
+
1. Lead with evidence, not opinions
|
|
265
|
+
2. Quote real sources (HN post, Reddit thread, GitHub issue)
|
|
266
|
+
3. Be specific about numbers (upvotes, stars, $prices)
|
|
267
|
+
4. Separate fact from inference clearly
|
|
268
|
+
5. Bull/Bear before Verdict — don't skip the debate
|
|
269
|
+
6. Verdict must commit to a recommendation — no "it depends" without specifics
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Blue Ocean Strategy Reference
|
|
2
|
+
|
|
3
|
+
W. Chan Kim & Renee Mauborgne, "Blue Ocean Strategy" (2005, updated 2015).
|
|
4
|
+
|
|
5
|
+
## Core concept
|
|
6
|
+
|
|
7
|
+
**Red Ocean:** existing market space. Competitors fight over same customers. Bloody from competition.
|
|
8
|
+
**Blue Ocean:** new market space. Create demand, not fight for it.
|
|
9
|
+
|
|
10
|
+
The goal: don't compete where everyone else is. Find (or create) a space where there's no direct competition.
|
|
11
|
+
|
|
12
|
+
This is not about being "different" for its own sake. It's about finding where existing solutions fail enough customers that a new approach can win without fighting incumbents.
|
|
13
|
+
|
|
14
|
+
## Value Innovation
|
|
15
|
+
|
|
16
|
+
The foundation of blue ocean strategy. The simultaneous pursuit of:
|
|
17
|
+
- **Differentiation** (more value for customers) AND
|
|
18
|
+
- **Low cost** (lower cost to deliver)
|
|
19
|
+
|
|
20
|
+
Most companies choose one. Blue ocean does both by eliminating or reducing what the industry assumes is necessary.
|
|
21
|
+
|
|
22
|
+
Key: value innovation redefines what value means — it doesn't just add more features.
|
|
23
|
+
|
|
24
|
+
## Value Curve
|
|
25
|
+
|
|
26
|
+
A visual tool. X-axis: factors the industry competes on. Y-axis: level of investment/offering.
|
|
27
|
+
|
|
28
|
+
Draw your value curve vs competitors:
|
|
29
|
+
1. List all factors the industry competes on (price, features, quality, support, speed, etc.)
|
|
30
|
+
2. Score each player 1-10 on each factor
|
|
31
|
+
3. Connect the dots — that's the value curve
|
|
32
|
+
|
|
33
|
+
**What to look for:**
|
|
34
|
+
- Where are all competitors converging? (where you can differentiate)
|
|
35
|
+
- Where is investment high but customers don't care? (where you can eliminate/reduce)
|
|
36
|
+
- What do customers want that nobody offers? (where you can create/raise)
|
|
37
|
+
|
|
38
|
+
**Signs of a blue ocean opportunity:**
|
|
39
|
+
- Your curve looks completely different from competitors
|
|
40
|
+
- You're investing in factors they don't even measure
|
|
41
|
+
- You're not competing on any factor they compete on
|
|
42
|
+
|
|
43
|
+
## ERRC Grid
|
|
44
|
+
|
|
45
|
+
The strategic tool for creating a new value curve.
|
|
46
|
+
|
|
47
|
+
| Action | Question | Why |
|
|
48
|
+
|--------|----------|-----|
|
|
49
|
+
| **Eliminate** | Which factors the industry takes for granted can be eliminated? | Remove cost + complexity customers don't value |
|
|
50
|
+
| **Reduce** | Which factors should be reduced well below the industry standard? | Stop over-delivering where it doesn't matter |
|
|
51
|
+
| **Raise** | Which factors should be raised well above the industry standard? | Solve what customers complain about |
|
|
52
|
+
| **Create** | Which factors should be created that the industry has never offered? | Add new value that opens new demand |
|
|
53
|
+
|
|
54
|
+
**How to use it for venture analysis:**
|
|
55
|
+
|
|
56
|
+
Look at the competitor landscape from Phase 2. Fill the ERRC grid:
|
|
57
|
+
- What do all competitors force customers to deal with? (Eliminate candidates)
|
|
58
|
+
- Where are they all investing heavily but customers complain anyway? (Reduce candidates)
|
|
59
|
+
- What do all G2/Reddit reviews say is missing? (Raise or Create candidates)
|
|
60
|
+
|
|
61
|
+
## Three tiers of non-customers
|
|
62
|
+
|
|
63
|
+
Incumbents focus on existing customers. Blue ocean looks at non-customers:
|
|
64
|
+
|
|
65
|
+
**Tier 1 — "Soon-to-be" non-customers**
|
|
66
|
+
On the edge of the market. Use existing solutions but reluctantly. Would switch if something better existed.
|
|
67
|
+
- Find them: people who use tools but post complaints
|
|
68
|
+
- Signal: "I use X but I hate Y"
|
|
69
|
+
|
|
70
|
+
**Tier 2 — "Refusing" non-customers**
|
|
71
|
+
Consciously choose not to use existing solutions. Have the problem but handle it differently.
|
|
72
|
+
- Find them: "I could use X but I just [workaround] instead"
|
|
73
|
+
- Signal: "I tried X but gave up because..."
|
|
74
|
+
|
|
75
|
+
**Tier 3 — "Unexplored" non-customers**
|
|
76
|
+
Never considered as customers. In other markets or segments entirely.
|
|
77
|
+
- Find them: unexpected users of adjacent tools
|
|
78
|
+
- Signal: people solving your problem with tools not built for it
|
|
79
|
+
|
|
80
|
+
## Red vs Blue Ocean signals in research
|
|
81
|
+
|
|
82
|
+
When analyzing a market, these signals matter:
|
|
83
|
+
|
|
84
|
+
### Red Ocean signals (hard fight ahead)
|
|
85
|
+
- 5+ competitors with similar positioning and pricing
|
|
86
|
+
- Dominant player with >50% market share
|
|
87
|
+
- Feature comparison tables are the main marketing tool
|
|
88
|
+
- Price is primary differentiator
|
|
89
|
+
- High churn across all players (no moat)
|
|
90
|
+
- Reddit/HN: "X vs Y vs Z" comparison posts everywhere
|
|
91
|
+
|
|
92
|
+
### Blue Ocean signals (opportunity)
|
|
93
|
+
- People solve the problem with spreadsheets or manual processes
|
|
94
|
+
- Niche community uses a tool far outside its intended purpose
|
|
95
|
+
- The "best" solution is widely criticized for the same thing
|
|
96
|
+
- Large group adjacent to current market who never adopted it
|
|
97
|
+
- Incumbents focused on enterprise; SMB underserved (or vice versa)
|
|
98
|
+
- Technology shift makes old assumptions invalid (mobile, AI, etc.)
|
|
99
|
+
|
|
100
|
+
## Applying Blue Ocean to competitive analysis
|
|
101
|
+
|
|
102
|
+
In Phase 2, after mapping competitors, ask:
|
|
103
|
+
|
|
104
|
+
1. **Which axis can you ignore entirely?**
|
|
105
|
+
- E.g., all competitors compete on features — can you win on simplicity instead?
|
|
106
|
+
|
|
107
|
+
2. **What do customers actually use vs what they pay for?**
|
|
108
|
+
- If pricing is based on features but customers only use 20% of them, price simplicity
|
|
109
|
+
|
|
110
|
+
3. **What's the "tax" on using existing solutions?**
|
|
111
|
+
- Setup time, training required, integrations needed, contracts, support tickets
|
|
112
|
+
- Eliminate the tax
|
|
113
|
+
|
|
114
|
+
4. **Who's locked out of the market?**
|
|
115
|
+
- High price, high complexity, enterprise-only contracts
|
|
116
|
+
- If you can serve them, they're Tier 2/3 non-customers
|
|
117
|
+
|
|
118
|
+
## Value Curve template
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
Factor | Competitor A | Competitor B | Our position
|
|
122
|
+
----------------|-------------|-------------|-------------
|
|
123
|
+
Price | High | Medium | ?
|
|
124
|
+
Ease of setup | Hard | Hard | ?
|
|
125
|
+
Feature breadth | Wide | Wide | ?
|
|
126
|
+
Support | Good | Poor | ?
|
|
127
|
+
[key factor] | ... | ... | ?
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
A good blue ocean position looks different from all others — not just slightly better.
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# Customer Development Reference
|
|
2
|
+
|
|
3
|
+
Steve Blank's framework. The complement to Lean Startup.
|
|
4
|
+
Source: "The Four Steps to the Epiphany" (2005) and "The Startup Owner's Manual" (2012).
|
|
5
|
+
|
|
6
|
+
## Core thesis
|
|
7
|
+
|
|
8
|
+
Startups are not smaller versions of large companies. They exist to search for a repeatable, scalable business model — not to execute one. This search requires talking to customers before building.
|
|
9
|
+
|
|
10
|
+
Most founders skip Step 1 and go straight to building. This is why most startups fail.
|
|
11
|
+
|
|
12
|
+
## The four steps
|
|
13
|
+
|
|
14
|
+
### Step 1 — Customer Discovery
|
|
15
|
+
|
|
16
|
+
Validate that the problem exists and that your target customer experiences it.
|
|
17
|
+
|
|
18
|
+
**What you're testing:**
|
|
19
|
+
- Does the problem actually exist?
|
|
20
|
+
- Is your target customer the right one?
|
|
21
|
+
- Is this painful enough to pay to solve?
|
|
22
|
+
|
|
23
|
+
**How:**
|
|
24
|
+
- Interview 20-30 potential customers
|
|
25
|
+
- Listen, don't pitch
|
|
26
|
+
- Ask about their current behavior, not hypothetical preferences
|
|
27
|
+
- See `references/mom-test.md` for interview technique
|
|
28
|
+
|
|
29
|
+
**Pass criteria:**
|
|
30
|
+
- Multiple customers describe the same problem unprompted
|
|
31
|
+
- They have workarounds (evidence they tried to solve it)
|
|
32
|
+
- They can quantify the cost (time, money, frustration)
|
|
33
|
+
|
|
34
|
+
**Failure mode:** Founders who pitch instead of listen. "Nobody told me it was a bad idea" ≠ validation.
|
|
35
|
+
|
|
36
|
+
### Step 2 — Customer Validation
|
|
37
|
+
|
|
38
|
+
Prove the business model. Find repeatable sales. Find a path to revenue.
|
|
39
|
+
|
|
40
|
+
**What you're testing:**
|
|
41
|
+
- Will they actually pay?
|
|
42
|
+
- Is the sales process repeatable?
|
|
43
|
+
- Can you find customers without your personal network?
|
|
44
|
+
|
|
45
|
+
**How:**
|
|
46
|
+
- Get 3-5 paying customers (even at a discount or free for design partners)
|
|
47
|
+
- Document the sales process step by step
|
|
48
|
+
- Find what objections come up and how to overcome them
|
|
49
|
+
|
|
50
|
+
**Pass criteria:**
|
|
51
|
+
- Customers pay without you having to chase them hard
|
|
52
|
+
- Different salespeople can close using the same process
|
|
53
|
+
- Customer acquisition is possible outside warm intros
|
|
54
|
+
|
|
55
|
+
**Failure mode:** Getting 3 customers who are personal favors. Real validation = strangers pay.
|
|
56
|
+
|
|
57
|
+
### Step 3 — Customer Creation
|
|
58
|
+
|
|
59
|
+
Shift from search to execution. Scale what worked in Step 2.
|
|
60
|
+
|
|
61
|
+
**What you're doing:**
|
|
62
|
+
- Pick one channel and scale it
|
|
63
|
+
- Invest in marketing that repeats the validated sales motion
|
|
64
|
+
- Build demand generation around the validated message
|
|
65
|
+
|
|
66
|
+
**Only reach this step after Step 2 is solid.** Scaling a broken sales process just burns money.
|
|
67
|
+
|
|
68
|
+
### Step 4 — Company Building
|
|
69
|
+
|
|
70
|
+
Transition from startup to company. Build processes, teams, and systems.
|
|
71
|
+
|
|
72
|
+
**Not relevant for early validation.** Focus on Steps 1 and 2 first.
|
|
73
|
+
|
|
74
|
+
## Problem vs solution interviews
|
|
75
|
+
|
|
76
|
+
Two different conversations. Don't mix them.
|
|
77
|
+
|
|
78
|
+
### Problem interview
|
|
79
|
+
|
|
80
|
+
Goal: validate the problem exists, understand current behavior.
|
|
81
|
+
|
|
82
|
+
Structure:
|
|
83
|
+
1. Intro (2 min): "I'm researching how people handle X. No product to sell."
|
|
84
|
+
2. Background (5 min): "Tell me about your role. What does a typical day look like?"
|
|
85
|
+
3. Story (10 min): "Tell me about the last time you dealt with X. Walk me through it."
|
|
86
|
+
4. Pain exploration (10 min): "What's most frustrating about that? How do you handle it now?"
|
|
87
|
+
5. Wrap-up (5 min): "Who else would I talk to about this?"
|
|
88
|
+
|
|
89
|
+
**Do not:** mention your solution, ask hypotheticals, ask for feature preferences.
|
|
90
|
+
|
|
91
|
+
### Solution interview
|
|
92
|
+
|
|
93
|
+
Only run after problem is validated.
|
|
94
|
+
|
|
95
|
+
Goal: validate your specific solution design.
|
|
96
|
+
|
|
97
|
+
Structure:
|
|
98
|
+
1. Problem recap (3 min): confirm they have the problem
|
|
99
|
+
2. Demo/mockup (10 min): show the concept, let them react
|
|
100
|
+
3. Reactions (10 min): "What would you do with this? What's confusing?"
|
|
101
|
+
4. Willingness to pay (5 min): not "would you pay?" — "how much do you currently spend on this?"
|
|
102
|
+
|
|
103
|
+
## Earlyvangelists
|
|
104
|
+
|
|
105
|
+
The best early customers share all 5 traits:
|
|
106
|
+
|
|
107
|
+
1. Have the problem
|
|
108
|
+
2. Know they have the problem
|
|
109
|
+
3. Actively searching for a solution
|
|
110
|
+
4. Cobbled together a workaround
|
|
111
|
+
5. Have budget to buy a solution
|
|
112
|
+
|
|
113
|
+
Finding earlyvangelists is the goal of Steps 1-2. They'll put up with incomplete products, give feedback, and refer others.
|
|
114
|
+
|
|
115
|
+
**Where to find them:** niche communities (subreddits, Slack groups, LinkedIn groups), people who asked public questions about the problem, power users of adjacent tools.
|
|
116
|
+
|
|
117
|
+
## Beachhead market
|
|
118
|
+
|
|
119
|
+
Don't try to reach everyone. Pick the smallest possible market where you can win completely.
|
|
120
|
+
|
|
121
|
+
Criteria for a good beachhead:
|
|
122
|
+
- Homogeneous needs (all have the same problem in the same way)
|
|
123
|
+
- Word of mouth works within the group
|
|
124
|
+
- Referenceable (customers are willing to be named)
|
|
125
|
+
- Financially attractive enough to sustain the business
|
|
126
|
+
|
|
127
|
+
**Classic mistake:** TAM is huge, so we'll target everyone. Result: message resonates with nobody.
|
|
128
|
+
|
|
129
|
+
## Customer segments to validate
|
|
130
|
+
|
|
131
|
+
For B2B especially, multiple people are involved in a purchase:
|
|
132
|
+
|
|
133
|
+
- **User** - uses the product daily
|
|
134
|
+
- **Influencer** - recommends or blocks purchase
|
|
135
|
+
- **Recommender** - brings options to the decision maker
|
|
136
|
+
- **Decision maker** - approves budget
|
|
137
|
+
- **Economic buyer** - controls the money
|
|
138
|
+
|
|
139
|
+
Your ICP might be the User but the Economic Buyer makes the call. Understand all of them before pricing or positioning.
|
|
140
|
+
|
|
141
|
+
## Signals for pivot
|
|
142
|
+
|
|
143
|
+
- 10+ interviews and nobody describes the same problem
|
|
144
|
+
- Everyone says "that's interesting" but won't commit to a call with their boss
|
|
145
|
+
- The workaround they use is good enough and they know it
|
|
146
|
+
- Problem only affects extremely niche edge cases
|
|
147
|
+
- The real buyer is different from who you expected
|