Radarr+
Add and manage movies in a Radarr instance via its HTTP API (search/lookup movies, list quality profiles and root folders, add a movie by title/year or TMDB id, and trigger a searc…
WarHog
@vishalchaudhary
What This Skill Does
HTTP API wrapper for Radarr that lets you search, lookup, and add movies by title, year, or TMDB ID, manage quality profiles and root folders, and trigger searches. Includes a chat workflow with progress tracking and rich movie cards (poster, trailer, rating).
Replaces manually adding movies through Radarr's web UI by enabling movie requests and management directly from chat or automated scripts.
When to Use It
- Add a movie to Radarr by title and year from a chat message
- Look up a movie by TMDB ID to verify details before adding
- List available quality profiles to choose the right one for a new movie
- Trigger a search for an already-added movie that hasn't been downloaded yet
- Configure default quality profile and root folder to skip repeated prompts
- Track a movie's download progress and notify the requesting user when imported
Install
$ openclaw skills install @vishalchaudhary/radarr-plusRadarr+
Request movies from chat and have them added to Radarr (with progress updates back in the same chat).
What it looks like (example)
Here’s an example of the single-message poster card + caption users will receive when requesting a movie (poster attachment + trailer + rating):

Example message caption:
Shutter Island (2010)
⭐ IMDb: 8.2/10
🎬 Trailer: https://www.youtube.com/watch?v=qdPw9x9h5CY
Added to Radarr ✅ (Ultra-HD, /movies). I’ll post progress + “imported ✅” here.
Setup (one-time)
- Set secrets in
~/.openclaw/.env(never commit these):
RADARR_URL=http://<host>:7878RADARR_API_KEY=...
Optional (recommended for fewer questions later):
RADARR_DEFAULT_PROFILE=HD-1080pRADARR_DEFAULT_ROOT=/data/media/movies
Optional (for the “rich” experience we’ll add next):
TMDB_API_KEY=...(poster + trailer)OMDB_API_KEY=...(IMDb rating)PLEX_URL=http://<plex-host>:32400PLEX_TOKEN=...
- Verify env + connectivity:
./skills/radarr/scripts/check_env.py
./skills/radarr/scripts/radarr.sh ping
If it fails, check:
- Radarr is reachable from the OpenClaw host
- API key is correct
- URL is correct (http vs https)
Common tasks
List available quality profiles
./skills/radarr/scripts/radarr.sh profiles
List configured root folders
./skills/radarr/scripts/radarr.sh roots
Lookup/search a movie
./skills/radarr/scripts/radarr.sh lookup --compact "inception"
./skills/radarr/scripts/radarr.sh lookup --compact "tmdb:603"
Add a movie (preferred: TMDB id)
./skills/radarr/scripts/radarr.sh add --tmdb 603 --profile "HD-1080p" --root "/data/media/movies" --monitor --search
Add a movie (by title; optionally prefer a year)
./skills/radarr/scripts/radarr.sh add --term "Dune" --year 2021 --profile "HD-1080p" --root "/data/media/movies" --monitor --search
Chat workflow (recommended)
When the user says “request/add <movie>” (DM or group):
1) Lookup
Run:
./skills/radarr/scripts/radarr.sh lookup --compact "<movie>"
If there are multiple plausible matches, ask the user to choose (year or TMDB id).
2) Resolve missing config by prompting
Resolve defaults from env (and fetch prompt options when missing):
./skills/radarr/scripts/resolve_defaults.py
If defaults are missing, prompt the user to pick one of the returned options:
options.profiles[]options.roots[]
(If defaults exist, use them silently.)
3) Optional rich “movie card” (add-ins)
If TMDB_API_KEY is set, build a movie card:
./skills/radarr/scripts/movie_card.py --tmdb <id>
- If the output includes
posterUrl, you can download it and attach it:
./skills/radarr/scripts/fetch_asset.py --url "<posterUrl>" --out "./outbound/radarr/<tmdbId>.jpg"
If OMDB_API_KEY is set and an IMDb id is known, the card will include IMDb rating.
4) Add to Radarr
Use TMDB when possible:
./skills/radarr/scripts/radarr.sh add --tmdb <id> --profile "<profile>" --root "<root>" --monitor --search
5) Track progress + notify in the same chat (Radarr-only, polling)
This skill provides a file-based tracker queue:
- Enqueue tracking for the same chat where the request came from (DM or group):
./skills/radarr/scripts/enqueue_track.py --channel telegram --target "<chatId>" --movie-id <id> --title "<title>" --year <year>
- A periodic dispatcher should run:
./skills/radarr/scripts/poll_and_queue.py
This will create outbox items under ./state/radarr/outbox/ that your OpenClaw cron runner can send.
6) Plex link (optional add-in)
If Plex is configured, try to produce a Plex web URL:
./skills/radarr/scripts/plex_link.py --title "<title>" --year <year>
References
- Onboarding:
references/onboarding.md - Setup:
references/setup.md - API notes:
references/radarr-api-notes.md
Related skills
Apple Notes
@steipeteManage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks Clawdbot to add a note, list notes, search notes, or manage note folders.
n8n Automation
@dilomcflyManage n8n workflows from OpenClaw via the n8n REST API. Use when the user asks about n8n workflows, automations, executions, or wants to trigger, list, create, activate, or debug n8n workflows. Supports both self-hosted n8n and n8n Cloud instances.
Zotero
@terwoxManage Zotero reference libraries via the Web API. Search, list, add items by DOI/ISBN/PMID (with duplicate detection), delete/trash items, update metadata and tags, export in BibTeX/RIS/CSL-JSON, batch-add from files, check PDF attachments, cross-reference citations, find missing DOIs via CrossRef, and fetch open-access PDFs. Supports --json output for scripting. Use when the user asks about academic references, citation management, literature libraries, PDFs for papers, bibliography export, or Zotero specifically.
AdaptlyPost
@tarasshynSchedule and manage social media posts across Instagram, X (Twitter), Bluesky, TikTok, Threads, LinkedIn, Facebook, Pinterest, and YouTube using the AdaptlyPost API. Use when the user wants to schedule social media posts, manage social media content, upload media for social posting, list connected s
OpenClaw Backup
@alex3alexBackup and restore OpenClaw data. Use when user asks to create backups, set up automatic backup schedules, restore from backup, or manage backup rotation. Handles ~/.openclaw directory archiving with proper exclusions.
X (Twitter)
@hith3shDraft, publish, and manage posts on X (Twitter), inspect timelines, manage profiles, and automate social media workflows via the X API. Use this skill when u...