Fetch external research (YouTube transcripts, Substack articles, podcast notes, analyst reports) and decompose into pftui journal entries — predictions, scenario signals, conviction adjustments, and dated notes. Use when ingesting research from a named source into the pftui system. Triggers on "ingest", "process transcripts", "absorb research", "pull from [source]", or "what did [person] say about [topic]".
Fetch research from an external source, extract structured intelligence, and write it into pftui's existing data model. No new tables needed — everything maps to existing journal commands.
| Research contains... | pftui command | Example |
|---|---|---|
| Time-bound prediction | journal prediction add | "Oil hits $190 if Hormuz stays closed through May" |
| Scenario evidence | journal scenario signal | "Dixon: Iran war is managed theater" → iran-war scenario |
| Asset conviction argument | journal conviction set | "BlackRock capturing BTC supply" → BTC conviction reasoning |
| Factual claim or data point | journal notes add | "Hormuz at 70% capacity, 20M bbl/day at risk" |
| Analytical framework | journal notes add with tag | "Three Industrial Complexes (MIC/FIC/TIC)" |
Determine source type and fetch accordingly:
YouTube channel — Use scripts/fetch-youtube.py:
python3 scripts/fetch-youtube.py "<channel_name>" --since 14d --out /tmp/transcripts/
Falls back through: youtube-transcript-api → yt-dlp auto-subs → author's blog/website → topic summaries from web_search.
Substack/Blog — Use web_fetch on each article URL.
Podcast — Search for show notes or transcript services.
Manual file — Read from provided path.
For each document, read the full text and extract:
Predictions — Any time-bound, falsifiable claim about future events or prices.
pftui journal prediction add "<prediction text>" \
--asset <SYMBOL> --timeframe <short|medium|long> \
--confidence <1-10> --source "<Author, Date>"
Scenario signals — Evidence that strengthens or weakens an existing scenario.
# List existing scenarios first
pftui journal scenario list --json
# Add signal to matching scenario
pftui journal scenario signal "<scenario_name>" "<signal description>" \
--direction <strengthens|weakens> --source "<Author, Date>"
Conviction adjustments — Strong arguments for or against a specific asset. Only adjust if the argument materially changes the analytical picture.
pftui journal conviction set <SYMBOL> <-5 to +5> \
--reasoning "<argument summary>" --source "<Author, Date>"
Research notes — Key claims, frameworks, data points, and analytical models.
pftui journal notes add "<note text>" \
--date <YYYY-MM-DD> --tags "source:<author>,<topic1>,<topic2>"
After processing all documents, write a summary note:
pftui journal notes add "Research ingestion: <source>, <N> documents, <date range>. \
Extracted: <X> predictions, <Y> scenario signals, <Z> conviction adjustments, <W> notes. \
Key themes: <themes>" \
--date $(date +%Y-%m-%d) --tags "source:<author>,research-ingestion"
Reply with:
--source "Author, Date" or equivalent.pftui journal prediction list --json for similar existing predictions.pftui journal scenario list --json to find existing scenarios. Don't create new ones — map to what exists or note unmatched themes.source:<author_lastname> tag for retrieval.