CLI tool to monitor Plex activity via Tautulli API
Project description
Now Playing CLI
A modern CLI tool to monitor Plex activity via the Tautulli API.
Features
- Real-time monitoring - Watch active streams with live progress updates
- Library statistics - View item counts across all Plex libraries
- Secure configuration - API keys stored in system keychain (or config file with restricted permissions)
- Beautiful output - Rich terminal formatting with colors and tables
- Safe reboot - Check for active streams before rebooting your server
Installation
Using pipx (recommended)
pipx install now-playing-cli
Using pip
pip install now-playing-cli
From source
git clone https://github.com/dangerouslaser/now-playing-cli.git
cd now-playing-cli
pip install .
Optional: Secure credential storage
For storing your API key in the system keychain instead of a config file:
pip install now-playing-cli[keyring]
Configuration
Run the interactive setup to configure your Tautulli connection:
now-playing config
You'll be prompted for:
- Tautulli URL - e.g.,
http://localhost:8181orhttps://tautulli.example.com - API Key - Found in Tautulli: Settings > Web Interface > API Key
The configuration is stored in ~/.config/now-playing/config.json with restricted permissions (readable only by you). If the keyring package is installed, your API key is stored in the system keychain instead.
Configuration commands
# View current configuration
now-playing config --show
# Remove all configuration
now-playing config --clear
Usage
Show current activity
now-playing
Displays all active Plex streams with user, title, progress, player info, and transcode status.
Monitor in real-time
now-playing watch
Live-updating display that shows stream progress in real-time. Press Ctrl+C to exit.
Options:
--interval, -i- Refresh interval in seconds (default: 10)
Library statistics
now-playing library
Shows a table of all Plex libraries with item counts.
Reboot with safety check
now-playing reboot
Checks for active streams and warns before rebooting. Useful for server maintenance.
Requirements
- Python 3.9+
- A running Tautulli instance connected to your Plex server
Upgrading from v1 (bash script)
The Python version is a complete rewrite with several improvements:
| Feature | v1 (bash) | v2 (Python) |
|---|---|---|
| Configuration | Edit script directly | Interactive setup with now-playing config |
| Credential storage | Plaintext in script | System keychain or config file with restricted permissions |
| Error handling | Limited | Comprehensive with helpful messages |
| Dependencies | curl, jq | Self-contained Python package |
| Installation | Manual copy to /usr/local/bin | pip/pipx install |
To upgrade:
- Remove the old script:
sudo rm /usr/local/bin/now-playing - Install the new version:
pipx install now-playing-cli - Run setup:
now-playing config
License
MIT
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 now_playing_cli-2.0.0.tar.gz.
File metadata
- Download URL: now_playing_cli-2.0.0.tar.gz
- Upload date:
- Size: 2.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7562ac191e6b7da183f52b513ae64e80897a15866c1c2f76846c616a430740ae
|
|
| MD5 |
6599b45af2fda02b7dc91eec5d0bd43f
|
|
| BLAKE2b-256 |
435dad8007b43eb52cbf7b3f51a47b6c7bd59be1e804c64c1e17ac028cae44a4
|
File details
Details for the file now_playing_cli-2.0.0-py3-none-any.whl.
File metadata
- Download URL: now_playing_cli-2.0.0-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f556b395bedec26a0aa3579f14e2bc1b47bb1afdcafb9f5bbbbbf21185c64b2
|
|
| MD5 |
7fc4faeb71fa6fcd4724f927ea58d490
|
|
| BLAKE2b-256 |
46b3ee8a14d1096269a893f4768652ac6c5fd18eaf19083ca474764ec2107585
|