██╗ ██╗ ██████╗ ██╗ ██╗██╗
██║ ██║██╔═══██╗╚██╗██╔╝██║
██║ ██║██║ ██║ ╚███╔╝ ██║
╚██╗ ██╔╝██║ ██║ ██╔██╗ ██║
╚████╔╝ ╚██████╔╝██╔╝ ██╗██║
╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝
Voxi
Transcribe social media videos locally
No cloud. No paid APIs. Unlimited use. 🤯
🚀 What is Voxi?
A terminal tool that downloads and transcribes any social media video into clean text with timestamps.
Paste an Instagram Reel, YouTube video, TikTok, Twitter/X clip, or Facebook video — get back a full transcript. All on your machine. Forever free.
Pipeline:
YouTube/Instagram/TikTok/Twitter/X/Facebook ──► yt-dlp ──► ffmpeg ──► Whisper ──► JSON + Text
⚡ Quick Start
Option A — Clone & run (30 seconds)
git clone https://github.com/royalashu4u/voxi.git
cd voxi
pip install -e .
voxi "https://www.instagram.com/reel/..."
Option B — One-click setup (auto)
git clone https://github.com/royalashu4u/voxi.git
cd voxi
bash scripts/setup.sh # Linux / macOS
powershell -File scripts/setup.ps1 # Windows
Option C — pip install (from anywhere)
pip install voxi
voxi "https://www.youtube.com/watch?v=..."
🎮 Usage
Interactive mode
voxi
# Paste a URL at the prompt — or type / to see command suggestions
# Try /help, /lang hi, /history, /config
Direct mode
voxi "https://www.instagram.com/voxi/..."
🤖 MCP Integration — Use Voxi inside Claude, Cursor, Windsurf
Voxi can run as an MCP server, letting AI assistants transcribe videos on your behalf. You say "transcribe this reel" — the AI calls Voxi locally, gets the text, and replies.
Step 1 — Install MCP support (Python 3.10+ required):
pip install voxi[mcp]
Step 2 — Add to your Claude Desktop config
(~/.config/claude/claude_desktop_config.json on Linux/macOS,
%APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"voxi": {
"command": "python",
"args": ["-m", "voxi_transcriber.mcp_server"]
}
}
}
Step 3 — Restart Claude Desktop. Done! 🎉
Two tools are exposed to the AI:
| Tool | Returns |
|---|---|
transcribe_video(url) |
Full plain-text transcript |
transcribe_video_with_timestamps(url) |
[MM:SS → MM:SS] text per segment |
Works with Claude Desktop, Cursor, Windsurf, Zed, and any MCP-compatible client.
💸 vs Cloud APIs
| Feature | Voxi | AssemblyAI | Rev.ai | Whisper API |
|---|---|---|---|---|
| Cost | $0 | $0.015/min | $0.25/min | $0.006/min |
| Unlimited | ✅ | ❌ | ❌ | ❌ |
| Offline | ✅ | ❌ | ❌ | ❌ |
| Privacy | ✅ | ❌ | ❌ | ❌ |
| MCP support | ✅ | ❌ | ❌ | ❌ |
| ✅ | ❌ | ❌ | ❌ |
🛠 Commands
| Command | What it does |
|---|---|
| Paste a URL | Transcribe the video |
/help |
Show commands |
/lang [code] |
Set language |
/history |
View transcripts |
/config |
Show settings |
/cache |
View/clear cache |
/clear |
Clear screen |
/exit |
Quit |
⚙️ Configuration
Edit voxi_transcriber/config.py:
| Setting | Default | Options | Description |
|---|---|---|---|
MODEL_SIZE |
base |
tiny, base, small, medium, large-v3 |
Model size |
DEVICE |
auto |
auto, cuda, cpu |
Compute device |
COMPUTE_TYPE |
int8 |
int8, float16, float32 |
Precision |
LANGUAGE |
auto |
auto, en, hi, es, ... |
Language |
USE_COOKIES |
True |
True, False |
Instagram cookies |
USE_CACHE |
True |
True, False |
Enable caching |
🌐 Platform Support
| Platform | Works out of the box | Needs cookies |
|---|---|---|
| YouTube | ✅ | ❌ |
| TikTok | ✅ | ❌ |
| Twitter / X | ✅ | ❌ |
| ✅ | Sometimes | |
| ✅ | Always |
❓ FAQ
Missing dependencies: faster-whisper
pip install faster-whisper
"Instagram blocked the request"
yt-dlp --cookies-from-browser firefox --cookies cookies.txt "https://www.instagram.com/"
Missing ffmpeg
sudo apt install ffmpeg # Ubuntu/Debian
brew install ffmpeg # macOS
📁 Folder Structure
voxi/
├── voxi_transcriber/ # Python package
│ ├── __init__.py
│ ├── __main__.py
│ ├── app.py # ← Textual TUI (main entry point)
│ ├── cli.py # Rich REPL (legacy)
│ ├── config.py # All settings
│ ├── mcp_server.py # MCP server for AI agents
│ ├── transcribe.py # Core pipeline
│ ├── utils.py # Cache, download, formatting
│ └── ui/
│ ├── header.py
│ ├── history_viewer.py
│ └── transcript_viewer.py
├── scripts/
│ ├── setup.sh # Linux / macOS auto-setup
│ └── setup.ps1 # Windows auto-setup
├── outputs/ # Saved transcripts (auto-created)
├── .cache/ # Cache directory (auto-created)
├── cookies.txt # Instagram auth (you generate this)
├── pyproject.toml
├── README.md
└── AGENTS.md
🤝 Contributing
Contributions welcome!
- Fork the repo
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
📜 License
MIT © 2026 royalashu4u
⭐ Star this repo if you find it useful! ⭐
Metadata
Release files for voxi 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| voxi-1.1.1.tar.gz | 23.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| voxi-1.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.8 kB
Release files / voxi-1.1.1.tar.gz
| Download URL | voxi-1.1.1.tar.gz |
|---|---|
| Size | 23.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
72fae2adc1e19ac404c4273d632249b444f699916f046c4bb8b1497cc9bd64f9
|
|
BLAKE2b-256 checksum How to use checksums |
7474910a77a4094d4a2044d0d5ca955bb766a84858612c50843a8d3a89dd29cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / voxi-1.1.1-py3-none-any.whl
| Download URL | voxi-1.1.1-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
139ddf01d4a00412e9d709f8b971d3da38a00f527471d9d1dca92e7b3de24e21
|
|
BLAKE2b-256 checksum How to use checksums |
88c9e1c6d71a28bd6f276a1ef2137b1d75fe361fd024880477184500c352712a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|