solo-you2idea-extract
Use when "extract ideas from YouTube", "index YouTube video", "find startup ideas in video", "analyze YouTube for ideas", "what ideas are in this video", or mining video content for business opportunities. Do NOT use for general YouTube watching or content creation (/content-gen)
Install
npx skills add https://github.com/fortunto2/solo-factory/tree/main/skills/you2idea-extract
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install fortunto2-solo-factory@llmmart
git clone https://github.com/fortunto2/solo-factory.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole fortunto2/solo-factory collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
/you2idea-extract
Extract startup ideas from YouTube videos. Two operating modes depending on available tools.
Mode Detection
Check which tools are available:
- With solograph MCP: use
source_search,source_list,source_tags,source_relatedfor indexed corpus - Without MCP (standalone): use yt-dlp + Read for transcript analysis
MCP Tools (if available)
source_search(query, source="youtube")— semantic search over indexed videossource_list()— check indexed video countssource_tags()— auto-detected topics with confidence scoressource_related(video_url)— find related videos by shared tagskb_search(query)— cross-reference with knowledge baseweb_search(query)— discover new videos to indexweb_extract(url, size, page)— read a linked article as clean markdown
Steps
Mode 1: Index + Analyze (with solograph MCP)
Parse input from
$ARGUMENTS:- URL (
https://youtube.com/watch?v=...) → single video index - Channel name (
GregIsenberg) → channel batch index - Query text → search existing corpus (skip to step 4)
- If empty, ask: "Video URL, channel name, or search query?"
- URL (
Index video(s) via solograph:
# Install if needed pip install solograph # or: uvx solograph # Single video solograph-cli index-youtube -u "$URL" # Channel batch (needs web search for discovery) solograph-cli index-youtube -c "$CHANNEL" -n 5Verify indexing —
source_list()to confirm new video count.source_tags()for topic distribution.Search corpus —
source_search(query="startup ideas", source="youtube").Cross-reference —
kb_search(query)for related existing opportunities (if knowledge base available).Extract insights — for each relevant video chunk:
- Identify the startup idea mentioned
- Note timestamp and speaker context
- Rate idea potential (specificity, market evidence, feasibility)
- Flag ideas that match trends or validated patterns
Write results to
docs/youtube-ideas.mdor print summary.
Mode 2: Standalone (without MCP)
Parse input — same as Mode 1 step 1.
Download transcript via yt-dlp:
# Check yt-dlp is available command -v yt-dlp >/dev/null 2>&1 && echo "yt-dlp: ok" || echo "Install: pip install yt-dlp" # Download subtitles only (no video) yt-dlp --write-auto-sub --sub-lang en --skip-download -o "transcript" "$URL" # Convert VTT to plain text sed '/^$/d; /^[0-9]/d; /-->/d; /WEBVTT/d; /Kind:/d; /Language:/d' transcript.en.vtt | sort -u > transcript.txtRead transcript — Read the transcript.txt file.
Analyze for startup ideas:
- Scan for business opportunities, pain points, product ideas
- Note approximate timestamps from VTT cues
- Rate each idea on specificity and market potential
- Cross-reference with WebSearch for market validation
For channel analysis — download multiple video transcripts:
# Get video list from channel yt-dlp --flat-playlist --print "%(id)s %(title)s" "https://youtube.com/@$CHANNEL" | head -10 # Download transcripts for top videos for id in $VIDEO_IDS; do yt-dlp --write-auto-sub --sub-lang en --skip-download -o "transcripts/%(id)s" "https://youtube.com/watch?v=$id" doneWrite results to
docs/youtube-ideas.mdwith format:# YouTube Ideas — [Channel/Video] Date: YYYY-MM-DD ## Idea 1: [Name] - **Source:** [Video title] @ [timestamp] - **Problem:** [What pain point] - **Solution:** [What they propose] - **Market signal:** [Evidence of demand] - **Potential:** [High/Medium/Low] — [why] ## Idea 2: ...
Common Issues
yt-dlp not found
Fix: pip install yt-dlp or brew install yt-dlp
No subtitles available
Cause: Video has no auto-generated or manual captions.
Fix: Try --sub-lang en,ru for multiple languages. Some videos only have auto-generated subs.
solograph MCP not available
Fix: Skills work in standalone mode (yt-dlp + Read). For indexed search across many videos, install solograph: pip install solograph. For enhanced web search, set up SearXNG (private, self-hosted, free).
Too many ideas, hard to prioritize
Fix: Use /validate on the top 3 ideas to score them through STREAM framework.
Files (solo-factory)
-
references
-
pipeline.md 2.2 KB
# you2idea Pipeline Details ## Data Flow ``` solograph-cli index-youtube [Index videos → FalkorDB] ↓ (export-data.py) make export [FalkorDB → all-videos.json + videos.json] ↓ (export-vectors.py) make export-vectors [FalkorDB → vectors.bin + chunks-meta.json + graph.json] ↓ (fetch-transcripts.py) make fetch-transcripts [Download VTT via yt-dlp → public/data/vtt/] ↓ (upload-r2.sh) make upload [Upload to R2 CDN (incremental)] ↓ make build [Astro SSG/SSR build] ↓ make deploy [Cloudflare Pages deploy] ``` ## FalkorDB Graph Schema (YouTube source) **Nodes:** - `Channel` — YouTube channel (handle, name, subscriber count) - `Video` — indexed video (title, videoId, created, duration, view_count) - `VideoChunk` — timestamped text segment (text, chapter, start_time, start_seconds, embedding) - `Tag` — auto-detected topic (name, confidence score) **Edges:** - `Channel → HAS_VIDEO → Video` - `Video → HAS_CHUNK → VideoChunk` - `Video → HAS_TAG → Tag` (weighted by confidence) ## Useful Cypher Queries ```cypher -- Video count per channel MATCH (c:Channel)-[:HAS_VIDEO]->(v:Video) RETURN c.name, COUNT(v) ORDER BY COUNT(v) DESC -- Recent videos (last 30 days) MATCH (v:Video) WHERE v.created > '2026-01-14' RETURN v.title, v.created ORDER BY v.created DESC LIMIT 20 -- Videos about specific topic MATCH (v:Video)-[:HAS_TAG]->(t:Tag) WHERE t.name CONTAINS 'startup' RETURN v.title, t.name, t.confidence ORDER BY t.confidence DESC -- Chunk search by chapter name MATCH (v:Video)-[:HAS_CHUNK]->(c:VideoChunk) WHERE c.chapter CONTAINS 'idea' RETURN v.title, c.chapter, c.start_time, LEFT(c.text, 200) ``` ## Export Output Files | File | Size | Content | |------|------|---------| | `all-videos.json` | ~680KB | All videos with chapters (search index) | | `videos.json` | ~33KB | Channels + recent + stats (UI data) | | `vectors.bin` | ~16MB | Float32 embeddings (N × 384) | | `chunks-meta.json` | ~5MB | Chunk text + video metadata | | `graph.json` | ~200KB | Channels, tags, edges, related videos | | `vtt/*.vtt` | ~150MB total | Raw VTT subtitles (727 files) |
-
-
SKILL.md 5.1 KB
--- name: solo-you2idea-extract description: Use when "extract ideas from YouTube", "index YouTube video", "find startup ideas in video", "analyze YouTube for ideas", "what ideas are in this video", or mining video content for business opportunities. Do NOT use for general YouTube watching or content creation (/content-gen). license: MIT metadata: author: fortunto2 version: "2.0.0" openclaw: emoji: "💡" allowed-tools: Read, Grep, Bash, Glob, Write, Edit, AskUserQuestion, mcp__solograph__source_search, mcp__solograph__source_list, mcp__solograph__source_tags, mcp__solograph__source_related, mcp__solograph__kb_search, mcp__searxng__web_search, mcp__searxng__web_extract argument-hint: "[video-url or channel-name or 'analyze <query>']" --- # /you2idea-extract Extract startup ideas from YouTube videos. Two operating modes depending on available tools. ## Mode Detection Check which tools are available: - **With solograph MCP**: use `source_search`, `source_list`, `source_tags`, `source_related` for indexed corpus - **Without MCP (standalone)**: use yt-dlp + Read for transcript analysis ## MCP Tools (if available) - `source_search(query, source="youtube")` — semantic search over indexed videos - `source_list()` — check indexed video counts - `source_tags()` — auto-detected topics with confidence scores - `source_related(video_url)` — find related videos by shared tags - `kb_search(query)` — cross-reference with knowledge base - `web_search(query)` — discover new videos to index - `web_extract(url, size, page)` — read a linked article as clean markdown ## Steps ### Mode 1: Index + Analyze (with solograph MCP) 1. **Parse input** from `$ARGUMENTS`: - URL (`https://youtube.com/watch?v=...`) → single video index - Channel name (`GregIsenberg`) → channel batch index - Query text → search existing corpus (skip to step 4) - If empty, ask: "Video URL, channel name, or search query?" 2. **Index video(s)** via solograph: ```bash # Install if needed pip install solograph # or: uvx solograph # Single video solograph-cli index-youtube -u "$URL" # Channel batch (needs web search for discovery) solograph-cli index-youtube -c "$CHANNEL" -n 5 ``` 3. **Verify indexing** — `source_list()` to confirm new video count. `source_tags()` for topic distribution. 4. **Search corpus** — `source_search(query="startup ideas", source="youtube")`. 5. **Cross-reference** — `kb_search(query)` for related existing opportunities (if knowledge base available). 6. **Extract insights** — for each relevant video chunk: - Identify the startup idea mentioned - Note timestamp and speaker context - Rate idea potential (specificity, market evidence, feasibility) - Flag ideas that match trends or validated patterns 7. **Write results** to `docs/youtube-ideas.md` or print summary. ### Mode 2: Standalone (without MCP) 1. **Parse input** — same as Mode 1 step 1. 2. **Download transcript** via yt-dlp: ```bash # Check yt-dlp is available command -v yt-dlp >/dev/null 2>&1 && echo "yt-dlp: ok" || echo "Install: pip install yt-dlp" # Download subtitles only (no video) yt-dlp --write-auto-sub --sub-lang en --skip-download -o "transcript" "$URL" # Convert VTT to plain text sed '/^$/d; /^[0-9]/d; /-->/d; /WEBVTT/d; /Kind:/d; /Language:/d' transcript.en.vtt | sort -u > transcript.txt ``` 3. **Read transcript** — Read the transcript.txt file. 4. **Analyze for startup ideas:** - Scan for business opportunities, pain points, product ideas - Note approximate timestamps from VTT cues - Rate each idea on specificity and market potential - Cross-reference with WebSearch for market validation 5. **For channel analysis** — download multiple video transcripts: ```bash # Get video list from channel yt-dlp --flat-playlist --print "%(id)s %(title)s" "https://youtube.com/@$CHANNEL" | head -10 # Download transcripts for top videos for id in $VIDEO_IDS; do yt-dlp --write-auto-sub --sub-lang en --skip-download -o "transcripts/%(id)s" "https://youtube.com/watch?v=$id" done ``` 6. **Write results** to `docs/youtube-ideas.md` with format: ```markdown # YouTube Ideas — [Channel/Video] Date: YYYY-MM-DD ## Idea 1: [Name] - **Source:** [Video title] @ [timestamp] - **Problem:** [What pain point] - **Solution:** [What they propose] - **Market signal:** [Evidence of demand] - **Potential:** [High/Medium/Low] — [why] ## Idea 2: ... ``` ## Common Issues ### yt-dlp not found **Fix:** `pip install yt-dlp` or `brew install yt-dlp` ### No subtitles available **Cause:** Video has no auto-generated or manual captions. **Fix:** Try `--sub-lang en,ru` for multiple languages. Some videos only have auto-generated subs. ### solograph MCP not available **Fix:** Skills work in standalone mode (yt-dlp + Read). For indexed search across many videos, install solograph: `pip install solograph`. For enhanced web search, set up [SearXNG](https://github.com/fortunto2/searxng-docker-tavily-adapter) (private, self-hosted, free). ### Too many ideas, hard to prioritize **Fix:** Use `/validate` on the top 3 ideas to score them through STREAM framework.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.