A modern, local-first CLI tool to extract transcripts from YouTube and transform them into concise summaries and key points.
Project description
reko
Make YouTube videos readable 🎥
A modern, local-first CLI tool to extract transcripts from YouTube and transform them into concise summaries and key points.
✨ What is reko?
reko is a command-line tool that converts YouTube videos into clean Markdown summaries using transcripts and Large Language Models.
Give it a video URL, a playlist, or a file containing multiple URLs, and reko will fetch the transcript, summarize the content in manageable chunks, and generate a readable Markdown document with a summary and optional key points.
It’s designed to be simple, fast, and automation-friendly, making it easy to extract useful information from long, informational videos.
By default, reko is local-first and privacy-friendly when used with Ollama, while still supporting paid cloud models when needed.
🚀 Features
- Generate clean Markdown summaries with optional key points.
- Summarize a single video, a playlist, or a batch of URLs.
- Optimized for Small Language Models (SLMs), which are often sufficient for high-quality summarization.
- Works with Ollama and cloud providers via APIs.
- Multi-language summaries: uses native transcripts when available, with automatic fallback and translation.
- Handles long videos via transcript chunking.
- Skips reprocessing when a summary already exists (with an option to force regeneration).
🧠 How it works
At a high level, reko follows a simple pipeline:
- Resolve the input target (video, playlist, or file).
- Fetch the YouTube transcript in the requested language, with fallback and translation when needed.
- Split the transcript into word-based chunks.
- Summarize each chunk independently.
- Merge chunk summaries into a coherent final result.
- Output a Markdown file and/or print to stdout.
- Optionally extract key points from the generated summary.
This approach allows reko to scale smoothly from short clips to multi-hour videos.
📦 Installation
Prerequisites
- Python 3.10+
- An LLM endpoint:
- Ollama (local): install Ollama and pull the model you want to use.
- Hosted APIs (for example
openai/...): configure the required API keys in your environment. When using non-local providers, the required environment variables must be configured according to the supported provider of the model which can be found here.
Install from PyPI
pip install reko-yt
⚡ Quick start
Show available commands:
reko --help
reko summarize --help
[!NOTE] Small Language Models are a great default for most summarization tasks.
Summarize a single YouTube video (prints and saves by default):
reko summarize 'https://www.youtube.com/watch?v=eMlx5fFNoYc' 'ollama/llama3.2:3b'
reko summarize 'https://www.youtube.com/watch?v=eMlx5fFNoYc' 'openai/gpt-5-nano'
Generate key points only, in Italian, without saving to disk:
reko summarize 'https://www.youtube.com/watch?v=eMlx5fFNoYc' \
'ollama/llama3.2:3b' \
--length short \
--language it \
--key-points-only \
--print-only
Summarize a playlist or a batch of URLs:
reko summarize 'https://www.youtube.com/playlist?list=PL908547EAA7E4AE74' 'ollama/llama3.2:3b'
reko summarize urls.txt 'ollama/llama3.2:3b'
[!WARNING] When processing playlists or large batches, YouTube may temporarily rate-limit your IP.
Using a proxy is recommended for high-volume usage.
Use a remote Ollama instance:
reko summarize 'https://www.youtube.com/watch?v=eMlx5fFNoYc' 'ollama/llama3.2:3b' --host 'http://YOUR_OLLAMA_HOST:11434'
🌐 Local web UI
Start a local web page that can summarize a YouTube URL and render the Markdown:
reko serve
Then open http://127.0.0.1:8000 in your browser.
Options:
reko serve --host 127.0.0.1 --port 8000
reko serve --host 0.0.0.0 --port 8000 # expose on your LAN
Notes:
- The web UI supports single video URLs (no playlists/batch files).
📄 License
MIT. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reko_yt-0.1.1.tar.gz.
File metadata
- Download URL: reko_yt-0.1.1.tar.gz
- Upload date:
- Size: 29.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb36c2a474141674c66e829f52b668b2289b041fd0fc45966ba4bbef51aa23df
|
|
| MD5 |
2fa691d0c9d4554d78662bbd109c6fc1
|
|
| BLAKE2b-256 |
5ae12f44aeddc0a10a915eb24363314063c8c6093711843d9570811d52d6d7f3
|
File details
Details for the file reko_yt-0.1.1-py3-none-any.whl.
File metadata
- Download URL: reko_yt-0.1.1-py3-none-any.whl
- Upload date:
- Size: 31.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ac75d89832f0755879962a1a7d0d4c37657592cb4abc889b8949ae63e26d9cf
|
|
| MD5 |
fbde4ebc23d25295c2db1cb642e5906c
|
|
| BLAKE2b-256 |
cdf1487365f105d54f5171aa078b10cf7f600a34efee515fa8f583e9385bccaf
|