.claude/skills/ln-201-opportunity-discoverer/SKILL.md
Traffic-First opportunity discovery. KILL funnel filters ideas by traffic channel, demand, competition, revenue, interest, MVP-ability. Outputs one idea + one channel recommendation.
npx skillsauth add cbbkrd-tech/jl-finishes ln-201-opportunity-discovererInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Paths: File paths (
shared/,references/,../ln-*) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root.
Traffic-First approach to finding next growth direction for existing product.
Anti-pattern: Idea → Surveys → Product → "where's traffic?" Correct: Traffic → Niche → MVP → Launch under existing demand
Most fail because they:
No marketer will build funnel for what cold traffic doesn't buy.
| # | Principle | Anti-pattern | |---|-----------|--------------| | 1 | Traffic exists BEFORE product | Building then searching for traffic | | 2 | No surveys — measure real search demand | Asking "would you buy?" | | 3 | Existing demand — launch under what people search | Creating new category | | 4 | One channel, one idea — no spreading | Testing 5 channels at once | | 5 | KILL early — fail fast, don't waste time | Scoring all ideas equally |
Marc Andreessen (pmarca):
"Validate market at practical level — go get paying customers to demonstrate market exists."
Sam Altman (YC):
"Who desperately needs the product? Best answer is going after large part of small market." "Test idea by launching or trying to sell — get letter of intent before code."
Use this skill when:
Do NOT use when:
| Parameter | Required | Description | Default | |-----------|----------|-------------|---------| | ideas | No | Comma-separated list | - | | context | No | Product description for generation | - | | strict | No | Strict KILL thresholds | true |
Input modes:
ideas="idea1, idea2, idea3" — evaluate listcontext="SaaS for X" — generate ideas from productIdeas pass through 6 sequential filters. Fail any filter = KILL immediately.
Idea → [Traffic?] → [Demand?] → [Competition?] → [Revenue?] → [Interest?] → [MVP?] → SURVIVOR
↓ ↓ ↓ ↓ ↓ ↓
KILL KILL KILL KILL KILL KILL
Question: Where do people look for this solution?
Research:
WebSearch: "[idea] how people find solutions"
WebSearch: "[idea] customer acquisition channels"
Valid channels:
| Channel | Signal | Best for | |---------|--------|----------| | Search/SEO | People Google "[problem] solution" | Info products, tools | | YouTube | Tutorial searches exist | Education, how-to | | Marketplaces | Category exists (ProductHunt, AppStore) | Apps, plugins | | Communities | Active subreddits, forums | Niche products | | Paid Ads | Competitors running ads | Proven demand | | Outbound | Clear ICP, reachable | B2B high-ticket |
KILL if: No identifiable channel where people actively look for solution.
Output: Channel name + rationale
Question: Are people already searching for this?
Research:
WebSearch: "[idea] search volume {current_year}"
WebSearch: "[idea] Google Trends"
WebSearch: "[problem] forum discussions reddit"
Demand signals:
| Signal | Source | Interpretation | |--------|--------|----------------| | Search volume | Google Keyword Planner, Ahrefs | Direct demand | | Trend direction | Google Trends | Growing/declining | | Forum activity | Reddit, HackerNews, StackOverflow | Pain level | | Competitor traffic | SimilarWeb, SEMrush | Market size |
KILL thresholds:
| Volume | Verdict | |--------|---------| | >10K/month | Strong demand | | 1K-10K/month | Viable niche | | <1K/month | KILL — insufficient demand |
Output: Monthly volume estimate + trend
Question: Can we enter this market?
Research:
WebSearch: "[idea] competitors {current_year}"
WebSearch: "[idea] alternatives comparison"
Classification:
| Competitors | Index | Ocean | Verdict | |-------------|-------|-------|---------| | 0 | 1 | Blue | Opportunity (validate demand exists) | | 1-2 | 2 | Emerging | Best entry point | | 3-5 | 3 | Growing | Differentiation needed | | 6-10 | 4 | Mature | Hard but possible | | >10 | 5 | Red | KILL — commoditized |
KILL if: Index 5 (Red Ocean) — too many competitors, race to bottom.
Output: Competitor count + Ocean type
Question: Will people pay enough?
Research:
WebSearch: "[idea] pricing SaaS"
WebSearch: "[competitor] pricing plans"
WebSearch: "[idea] willingness to pay"
Revenue indicators:
| ARPU | Market type | Viability | |------|-------------|-----------| | >$100/user/mo | Enterprise | High margin | | $50-100 | Professional | Good | | $20-50 | Prosumer | Viable | | $5-20 | Consumer | Volume needed | | <$5 | Ad-supported | KILL |
KILL if: <$20/user — not worth the effort for small team.
Output: Estimated $/user + pricing model
Question: Will you enjoy building this?
Method: AskUserQuestion — rate 1-5
Rate your interest in building [idea]:
1 = Meh, would do for money only
2 = Low interest
3 = Neutral
4 = Interested
5 = Excited, would build for free
Why this matters:
KILL if: Score 1-2 — you'll quit before PMF.
Output: Score 1-5
Question: Can you launch in 4 weeks?
Assessment:
| Factor | Question | Red flag | |--------|----------|----------| | Tech | Existing skills or need to learn? | New stack | | Dependencies | External APIs, partners needed? | Waiting on others | | Content | Significant content creation? | Months of writing | | Regulations | Legal/compliance requirements? | Licenses, approvals | | Team | Solo or need to hire? | Can't start alone |
Time estimates:
| Weeks | Complexity | Verdict | |-------|------------|---------| | 1-2 | Solo, existing skills | Best | | 2-4 | Minor learning curve | Good | | 4-8 | Some new tech | Acceptable | | >8 | Significant infrastructure | KILL |
KILL if: >8 weeks to MVP — too slow to validate.
Output: Weeks estimate + blockers
Parse input:
ideas: split comma-separated listcontext: generate 5-7 ideas via WebSearchValidate count:
Create output directory:
mkdir -p docs/reference/research/
Output: Idea queue (3-10 items)
Process each idea sequentially through all 6 filters:
FOR each idea:
Filter 1: Traffic Channel
IF no channel → KILL, log reason, NEXT idea
Filter 2: Existing Demand
IF <1K/month → KILL, log reason, NEXT idea
Filter 3: Competition
IF Index 5 → KILL, log reason, NEXT idea
Filter 4: Revenue
IF <$20/user → KILL, log reason, NEXT idea
Filter 5: Interest
AskUserQuestion for rating
IF score 1-2 → KILL, log reason, NEXT idea
Filter 6: MVP-ability
IF >8 weeks → KILL, log reason, NEXT idea
→ SURVIVOR: add to survivors list
Token efficiency:
If survivors exist:
Calculate composite score:
Score = Demand_score + (6 - Competition_index) + Revenue_score + Interest + MVP_score
Sort by score descending
Select TOP recommendation
If no survivors:
Generate: docs/reference/research/[YYYY-MM-DD]-discovery.md
Structure:
# Opportunity Discovery: [Date]
## Summary
- Ideas analyzed: X
- Survivors: Y
- Killed: Z
## TOP RECOMMENDATION
**Idea:** [Name]
**Channel:** [Primary channel]
**Why:** [2-3 sentence rationale]
### Key metrics:
- Demand: [volume]/month
- Competition: [Index] [Ocean type]
- Revenue: $[X]/user
- MVP: [X] weeks
## Survivors Table
| Idea | Channel | Demand | Competition | Revenue | Interest | MVP | Score |
|------|---------|--------|-------------|---------|----------|-----|-------|
| ... | ... | ... | ... | ... | ... | ... | ... |
## KILL Log
| Idea | Killed at | Reason |
|------|-----------|--------|
| ... | ... | ... |
## Next Steps
1. Create Epic with ln-210 for top recommendation
2. Focus on [channel] as primary acquisition
3. Target MVP in [X] weeks
| Ideas | Estimated time | |-------|---------------| | 3 | 15-20 min | | 5 | 25-35 min | | 10 | 50-70 min |
Note: KILL funnel is faster than full scoring — bad ideas die early.
Position in workflow:
Product exists
↓
ln-201 (Opportunity Discovery) ← THIS SKILL
↓
ln-210 (Epic Coordinator)
↓
ln-220 (Story Coordinator)
Dependencies:
With ideas:
ln-201-opportunity-discoverer ideas="AI writing tool, code review bot, translation API"
With context:
ln-201-opportunity-discoverer context="B2B developer tools SaaS"
Example output:
# Opportunity Discovery: 2026-01-29
## TOP RECOMMENDATION
**Idea:** Code review bot
**Channel:** SEO (developers search "code review tool")
**Why:** Growing demand (15K/mo), emerging market (3 competitors),
$50/user pricing proven, can MVP in 3 weeks with existing skills.
## KILL Log
| Idea | Killed at | Reason |
|------|-----------|--------|
| AI writing | Competition | Red Ocean (25+ competitors) |
| Translation API | Revenue | Commoditized, <$10/user |
| File | Purpose | |------|---------| | filter_criteria.md | KILL thresholds for all filters | | channel_analysis.md | Traffic channel identification | | discovery_template.md | Output markdown template |
Version: 2.0.0 Last Updated: 2026-01-29
testing
When the user wants to plan a content strategy, decide what content to create, or figure out what topics to cover. Also use when the user mentions "content strategy," "what should I write about," "content ideas," "blog strategy," "topic clusters," or "content planning." For writing individual pieces, see copywriting. For SEO-specific audits, see seo-audit.
development
When the user wants to create competitor comparison or alternative pages for SEO and sales enablement. Also use when the user mentions 'alternative page,' 'vs page,' 'competitor comparison,' 'comparison page,' '[Product] vs [Product],' '[Product] alternative,' or 'competitive landing pages.' Covers four formats: singular alternative, plural alternatives, you vs competitor, and competitor vs competitor. Emphasizes deep research, modular content architecture, and varied section types beyond feature tables.
development
Write B2B cold emails and follow-up sequences that get replies. Use when the user wants to write cold outreach emails, prospecting emails, cold email campaigns, sales development emails, or SDR emails. Covers subject lines, opening lines, body copy, CTAs, personalization, and multi-touch follow-up sequences.
development
When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' or 'involuntary churn.' This skill covers voluntary churn (cancel flows, save offers, exit surveys) and involuntary churn (dunning, payment recovery). For post-cancel win-back email sequences, see email-sequence. For in-app upgrade paywalls, see paywall-upgrade-cro.