plexctl
A robust Plex CLI and TUI written in Go

plexctl is designed for users who want a powerful, terminal-based way to interact with their Plex Media Server. Whether you prefer a rich interactive interface (TUI) or quick command-line actions, plexctl has you covered.
Demo

Key Features
- 🚀 Interactive TUI: Navigate libraries, browse media, and manage sessions in a full-screen terminal app.
- 🔍 Fuzzy Search: Instantly find movies, shows, or episodes with global fuzzy search.
- 🎬 Integrated Playback: Launch media directly in
mpvwith full control. - ⚙️ Deep Configuration: Manage library visibility, custom icons, and theme preferences.
- 🛠️ Power-User CLI: Scriptable commands for status, reindexing, and metadata retrieval.
- 🎨 Theme Support: Multiple color schemes and icon sets (Emoji, Nerd Fonts, ASCII).
Getting Started
Installation
Download the latest binary for your platform from the GitHub Releases page.
Manual Installation (macOS/Linux)
If you download the binary directly, you will need to make it executable and move it to your path:
# Rename the downloaded binary (example for macOS ARM)
mv plexctl_Darwin_arm64 plexctl
# Make it executable
chmod +x plexctl
# Move to a directory in your PATH (optional)
sudo mv plexctl /usr/local/bin/If you have Go installed:
go install github.com/ygelfand/plexctl@latestPrerequisites
You must have mpv installed for media playback:
- macOS:
brew install mpv - Linux:
sudo apt install mpvorsudo pacman -S mpv - Windows: Download from mpv.io
Usage
Simply run plexctl to launch the interactive TUI. On first run, it will guide you through authentication and server selection.
# Launch TUI
plexctl
# Search via CLI
plexctl search find "Matrix"
# Check index status
plexctl search status
# Play media via CLI
plexctl play 12345
# Play in terminal video mode
plexctl play 12345 --tctCheck out the CLI Reference for a full list of commands.
Last updated on