360 Secure SkillHub
360 安全技能中心

Media Cli Local

专为本地同机器部署的*arr媒体栈设计的单文件Bash工具,核心功能含影视搜索、添加、下载、监控,支持字幕、转码等扩展管理。适用于本地媒体栈用户免网页UI操作,或AI代理执行自动化任务。输入为终端命令,输出可解析文本兼容AI框架,安装简便无冗余依赖。

solomonneas
solomonneas
热度 39.97
最近更新 2026-05-11 17:34:47
分类:自动化依赖:代码执行应用场景:自动化脚本 / 工作流 / 任务管理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add media-cli-local
Metadata
name
media-cli-local
version
1.0.0
description
Single-file bash CLI for the *arr media stack. Manage Sonarr, Radarr, Prowlarr, qBittorrent, Bazarr, Jellyseerr, and Tdarr from the terminal or via AI agents. Runs on the same machine as your services. No Docker, no Node, no Python packages.
tags
["media","sonarr","radarr","plex","jellyfin","torrents","automation","homelab","arr"]
category
tools

media-cli-local — Terminal Control for Your *arr Media Stack

One bash script to manage your entire media automation stack. Search, add, download, and monitor movies and TV shows without touching a web UI.

Designed for setups where the agent and media services run on the same machine. If your *arr stack runs on a different host, see media-cli which includes SSH remote support.

Source: https://github.com/solomonneas/media-cli

Install: Clone the repo and copy the script to your PATH. Review it first.

git clone https://github.com/solomonneas/media-cli.git
cd media-cli
cp media ~/bin/media && chmod +x ~/bin/media
media setup

Supported Services

Service Required What It Does
Sonarr Yes TV show management
Radarr Yes Movie management
Prowlarr Yes Indexer management
qBittorrent Yes Download monitoring
Bazarr Optional Subtitles
Jellyseerr Optional User requests + trending
Tdarr Optional Transcode monitoring

Setup

The setup wizard asks for API URLs and keys, saves to ~/.config/media-cli/config (chmod 600). All connections are localhost only.

media setup    # Interactive config wizard
media status   # Verify everything connects

Commands

Movies

media movies search "Interstellar"    # Search online
media movies add "Interstellar"       # Add + start downloading
media movies list                     # Library with download status
media movies missing                  # Monitored without files
media movies remove "title"           # Remove (keeps files)

TV Shows

media shows search "Breaking Bad"     # Search online
media shows add "Breaking Bad"        # Add + search episodes
media shows list                      # Library with episode counts

Downloads

media downloads                       # All torrents by state
media downloads active                # Active with speed + ETA
media downloads pause <hash|all>
media downloads resume <hash|all>
media downloads remove <hash> [true]  # true = delete files too

Status & Monitoring

media status                          # Health + library counts + active downloads
media queue                           # Sonarr/Radarr download queues
media wanted                          # Missing episodes + movies
media calendar 14                     # Upcoming releases (next N days)
media history                         # Recent activity
media refresh                         # Trigger library rescan
media indexers                        # Prowlarr indexer status

Subtitles (Bazarr)

media subs                            # Wanted subtitles
media subs history                    # Recent subtitle downloads

Requests (Jellyseerr)

media requests                        # Pending user requests
media requests trending               # What's trending
media requests users                  # User list with request counts

Transcoding (Tdarr)

media tdarr                           # Status + active workers
media tdarr workers                   # Per-file progress: %, fps, ETA
media tdarr queue                     # Items queued for processing

AI Agent Integration

Commands output clean, parseable text designed for AI agents:

"What shows am I missing episodes for?"  →  media wanted
"Add Succession"                         →  media shows add "Succession"
"What's downloading right now?"          →  media downloads active
"Pause all downloads"                    →  media downloads pause all

Works with OpenClaw, LangChain, Claude computer use, or any agent framework with shell execution.

Requirements

  • bash 4.0+
  • curl
  • python3 (standard library only, no pip)

Technical Details

  • Single bash script (~900 lines)
  • All API calls go to localhost (no remote connections)
  • Talks to *arr v3 APIs (Sonarr/Radarr), v1 (Prowlarr), v2 (qBittorrent WebUI)
  • Python3 used strictly for JSON parsing (standard library)
  • No telemetry, no analytics, no network calls except to your own services
  • Config stored at ~/.config/media-cli/config with chmod 600