Monitor YouTube channels and auto-transcribe new videos using AssemblyAI cloud API. Zero local dependencies beyond requests.
requests library (usually pre-installed with OpenClaw/Python)Choose one:
bash
# Option A: environment variable
export ASSEMBLYAI_API_KEY="your-key"
# Option B: config file
echo '{"api_key": "your-key"}' > data/config.json
text
Channel page → innertube API → audio direct URL → AssemblyAI cloud → text + summary
No local audio download, no Whisper, no ffmpeg. AssemblyAI handles everything server-side.
bash
# Transcribe a single video
python3 scripts/monitor.py now "https://www.youtube.com/watch?v=VIDEO_ID"
# Add a channel to monitor
python3 scripts/monitor.py add "https://www.youtube.com/@ChannelName/videos" "Alias"
# Check all channels for new videos + transcribe
python3 scripts/monitor.py check [count_per_channel]
# List channels
python3 scripts/monitor.py list
# Remove channel
python3 scripts/monitor.py remove "Alias"
data/summaries/{video_id}.json.Each result includes:
text: full transcriptionsummary: AI-generated paragraph summaryconfidence: transcription confidence scoreutterances: timestamped segments with speaker labelsPathPurposedata/channels.jsonmonitored channelsdata/processed.jsonalready-transcribed video IDsdata/summaries/*.jsontranscription resultsdata/config.jsonAPI key (optional)