gettr-transcribe-summarize
Download audio from a GETTR post (via HTML og:video), transcribe it locally with MLX Whisper on Apple Silicon (with timestamps via VTT), and summarize the transcript into bullet points and/or a timestamped outline. Use when given a GETTR post URL and asked to produce a transcript or summary.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/kevin37li/gettr-transcribe-summarizeGettr Transcribe + Summarize (MLX Whisper)
Quick start
# 1. Parse the slug from the URL (just read it — no script needed)
# https://gettr.com/post/p1abc2def → slug = p1abc2def
# https://gettr.com/streaming/p3xyz → slug = p3xyz
# 2. Get the video URL
# For /post/ URLs: use the extraction script
python3 scripts/extract_gettr_og_video.py "<GETTR_POST_URL>"
# For /streaming/ URLs: use browser automation directly (extraction script is unreliable)
# See Step 1 below for browser automation instructions
# 3. Run download + transcription pipeline
bash scripts/run_pipeline.sh "<VIDEO_URL>" "<SLUG>"
To explicitly set the transcription language (recommended for non-English content):
bash scripts/run_pipeline.sh --language zh "<VIDEO_URL>" "<SLUG>"
Common language codes: zh (Chinese), en (English), ja (Japanese), ko (Korean), es (Spanish), fr (French), de (German), ru (Russian).
This outputs:
./out/gettr-transcribe-summarize/<slug>/audio.wav./out/gettr-transcribe-summarize/<slug>/audio.vtt
Then proceed to Step 3 (Summarize) to generate the final deliverable.
Workflow (GETTR URL → transcript → summary)
Inputs to confirm
Ask for:
- GETTR post URL
- Output format: bullets only or bullets + timestamped outline
- Summary size: short, medium (default), or detailed
- Language (optional): if the video is non-English and auto-detection fails, ask for the language code (e.g.,
zhfor Chinese)
Notes:
- This skill does not handle authentication-gated GETTR posts.
- This skill does not translate; outputs stay in the video's original language.
- If transcription quality is poor or mixed with English, re-run with explicit
--languageflag.
Prereqs (local)
mlx_whisperinstalled and on PATHffmpeginstalled (recommended:brew install ffmpeg)
Step 0 — Parse the slug and pick an output directory
Parse the slug directly from the GETTR URL — just read the last path segment, no script needed:
https://gettr.com/post/p1abc2def→ slug =p1abc2defhttps://gettr.com/streaming/p3xyz789→ slug =p3xyz789
Output directory: ./out/gettr-transcribe-summarize/<slug>/
Directory structure:
./out/gettr-transcribe-summarize/<slug>/audio.wav./out/gettr-transcribe-summarize/<slug>/audio.vtt./out/gettr-transcribe-summarize/<slug>/summary.md
Step 1 — Get the video URL
The approach depends on the URL type:
For /post/ URLs — Use the extraction script
Run the extraction script to get the video URL from the post HTML:
python3 scripts/extract_gettr_og_video.py "<GETTR_POST_URL>"
This prints the best candidate video URL (often an HLS .m3u8) to stdout.
If extraction fails, ask the user to provide the .m3u8/MP4 URL directly (common if the post is private/gated or the HTML is dynamic).
For /streaming/ URLs — Use browser automation directly
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-kevin37li-gettr-transcribe-summarize": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
gettr-transcribe
Download audio from a GETTR post or streaming page and transcribe it locally with MLX Whisper on Apple Silicon (with timestamps via VTT). Use when given a GETTR URL and asked to produce a transcript. Summarization is handled by the caller.
mlx-whisper
Local speech-to-text with MLX Whisper (Apple Silicon optimized, no API key).