tunex-cli
v0.9.11
Published
Cross-platform CLI for downloading YouTube/Spotify content and managing local media — audio extraction, metadata tagging, and intelligent file matching via LLM inference.
Readme
tunex
Cross-platform CLI for downloading YouTube/Spotify content, extracting audio, and managing music metadata.
Use
Without install,
bunx tunex-clior global install which allows you to use shorter tunex command.
bun install tunex-cli -g
tunexOverview
tunex is a cross-platform CLI utility for downloading YouTube and Spotify content, converting video to audio, extracting MP3s from local media, and managing music metadata. Built with Bun and designed to run anywhere with Docker — no ffmpeg or yt-dlp installation required.
Features
- YouTube Downloads: Extract audio (MP3) or download video (MP4)
- Local Audio Extraction: Extract audio from any local video file
- Playlist Support: Process entire YouTube playlists automatically
- Parallel Processing: Configurable thread count (up to 4)
- Cross-Platform: Works on Windows, macOS, and Linux via Docker
Quick Start
Interactive Mode
bunx tunex-cliDirect CLI Mode
bunx tunex-cli run bulk-audio-extract -i "./videos" -o "./audio"Commands
| Command | Description |
|---------|-------------|
| bulk-audio-extract | Extract audio from local video files |
| yt-audio-only | Download YouTube audio as MP3 |
| yt-video-mp4 | Download YouTube video as MP4 |
Configuration
bunx tunex-cli configInteractive tool to view and set defaults for output directory, thread count, and log file path. Settings are saved to ~/.tunex/config.json.
Config Precedence
- CLI flags (passed at runtime)
- Environment variables (
.env.local>.env) - Config file (
~/.tunex/config.json) - Factory defaults
Dot Env Overrides
Create a .env file in the project root:
DEFAULT_OUTPUT_DIR=./output
DEFAULT_THREADS=2
LOG_FILE=./tunex.logRoadmap
- [ ] Spotify integration (track/album/playlist download)
- [ ] Automatic metadata tagging (artist, album, title)
- [ ] LLM-powered file matching and organization
