{
  "schemaVersion": "1.0",
  "item": {
    "slug": "clawarr-suite",
    "name": "ClawARR Suite",
    "source": "tencent",
    "type": "skill",
    "category": "内容创作",
    "sourceUrl": "https://clawhub.ai/omiron33/clawarr-suite",
    "canonicalUrl": "https://clawhub.ai/omiron33/clawarr-suite",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/clawarr-suite",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=clawarr-suite",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "assets/icon.svg",
      "openclaw.plugin.json",
      "references/api-endpoints.md",
      "references/common-issues.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/clawarr-suite"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/clawarr-suite",
    "agentPageUrl": "https://openagent3.xyz/skills/clawarr-suite/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawarr-suite/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawarr-suite/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "ClawARR Suite",
        "body": "Unified deep-integration control for self-hosted media automation stacks. This skill provides comprehensive agent-executable operations across the entire *arr ecosystem with rich analytics, dashboard generation, and advanced library exploration."
      },
      {
        "title": "Security & Scanner Clarity",
        "body": "Local-first operations: all API calls target user-provided local hosts (typically LAN/NAS).\nNo embedded secrets: API keys/tokens are sourced from environment variables or user-owned config files.\nNo telemetry/exfiltration paths: scripts do not transmit credentials or library data to third-party endpoints.\nDestructive behavior is opt-in: delete/remove actions require explicit command invocation by the user/agent.\nSetup logic avoids dynamic eval and uses explicit variable mapping for scanner-friendly shell behavior."
      },
      {
        "title": "Quick Start",
        "body": "First time setup (recommended):\n\nscripts/setup.sh <host-ip-or-hostname>\n\nDiscovers services, grabs API keys, verifies connections, and outputs your config.\n\nCommon operations:\n\nscripts/status.sh              # Health check all services\nscripts/library.sh stats all   # Library statistics\nscripts/analytics.sh activity  # Current Plex streams\nscripts/dashboard.sh           # Generate HTML dashboard\nscripts/manage.sh wanted all   # Show missing content\nscripts/requests.sh list       # Overseerr requests"
      },
      {
        "title": "Core Operations",
        "body": "setup.sh — Guided setup wizard with auto-discovery\ndiscover.sh — Scan host for *arr services\nstatus.sh — Health check all configured services\ndiagnose.sh — Automated troubleshooting"
      },
      {
        "title": "Library Exploration (library.sh)",
        "body": "Deep statistics and exploration for Radarr/Sonarr/Lidarr:\n\nlibrary.sh stats [app]          # Overall library stats\nlibrary.sh quality [app]        # Quality profile breakdown\nlibrary.sh missing [app]        # Missing/wanted content\nlibrary.sh unmonitored [app]    # Unmonitored items\nlibrary.sh recent [app] [days]  # Recently added (default: 7)\nlibrary.sh genres [app]         # Genre distribution\nlibrary.sh years [app]          # Year distribution\nlibrary.sh studios [app]        # Studio/network breakdown\nlibrary.sh nofiles [app]        # Monitored but no files\nlibrary.sh disk [app]           # Disk usage by root folder"
      },
      {
        "title": "Analytics (analytics.sh)",
        "body": "Rich viewing analytics from Tautulli/Plex:\n\nanalytics.sh activity                 # Currently watching\nanalytics.sh history [count]          # Watch history\nanalytics.sh most-watched [period]    # Most watched (week/month/year)\nanalytics.sh popular-genres [period]  # Popular genres\nanalytics.sh peak-hours               # Peak watching hours\nanalytics.sh user-stats [user]        # User activity\nanalytics.sh library-stats            # Plex library stats\nanalytics.sh recent-added [count]     # Recently added to Plex\nanalytics.sh play-totals              # Total play statistics"
      },
      {
        "title": "Content Management (manage.sh)",
        "body": "Add, remove, and manage content:\n\nmanage.sh add-movie \"<title>\" [quality] [root]\nmanage.sh add-series \"<title>\" [quality] [root]\nmanage.sh remove <app> <id>\nmanage.sh wanted [app]\nmanage.sh calendar [app] [days]\nmanage.sh history [app] [count]\nmanage.sh rename <app> <id>\nmanage.sh refresh <app> [id]"
      },
      {
        "title": "Request Management (requests.sh)",
        "body": "Overseerr request handling:\n\nrequests.sh list [pending|approved|available|all]\nrequests.sh approve <id>\nrequests.sh deny <id> [reason]\nrequests.sh info <id>\nrequests.sh stats"
      },
      {
        "title": "Subtitle Management (subtitles.sh)",
        "body": "Bazarr operations:\n\nsubtitles.sh wanted\nsubtitles.sh history [count]\nsubtitles.sh search <series|movie> <id>\nsubtitles.sh languages"
      },
      {
        "title": "Indexer Management (indexers.sh)",
        "body": "Prowlarr operations:\n\nindexers.sh list\nindexers.sh test [id]\nindexers.sh stats"
      },
      {
        "title": "Download Client (downloads.sh)",
        "body": "SABnzbd operations:\n\ndownloads.sh active\ndownloads.sh speed\ndownloads.sh history [count]\ndownloads.sh pause\ndownloads.sh resume\ndownloads.sh queue"
      },
      {
        "title": "Dashboard Generation (dashboard.sh)",
        "body": "Generate self-contained HTML dashboard:\n\ndashboard.sh [output_file]\n\nCreates beautiful dark-themed dashboard with:\n\nSystem health\nDownload activity\nLibrary statistics\nRecent activity\nViewing analytics\nDisk usage\n\nOutput defaults to clawarr-dashboard.html (open in any browser)."
      },
      {
        "title": "Media Tracker Integration (trakt.sh, trackers.sh, letterboxd.sh, simkl.sh)",
        "body": "Track and sync what you watch across services like Trakt.tv, Letterboxd, Simkl, and more.\n\nUnified Interface (trackers.sh):\n\ntrackers.sh setup              # Interactive setup wizard\ntrackers.sh status             # Show configured trackers\ntrackers.sh sync plex trakt    # Sync Plex → Trakt\ntrackers.sh export trakt json  # Export watch history\ntrackers.sh import letterboxd file.csv\ntrackers.sh compare trakt simkl\n\nTrakt.tv Integration (trakt.sh):\n\nAuthentication:\n\ntrakt.sh auth                  # Device code OAuth flow\ntrakt.sh auth-status           # Check authentication\n\nProfile & Stats:\n\ntrakt.sh profile [username]    # Show profile\ntrakt.sh stats [username]      # Detailed statistics\n\nWatching & History:\n\ntrakt.sh watching              # Currently watching\ntrakt.sh history [movies|shows|episodes] [limit]\ntrakt.sh sync-history export file.json\ntrakt.sh sync-history import file.json\n\nScrobbling:\n\ntrakt.sh scrobble start movie 12345\ntrakt.sh scrobble stop movie 12345 100\ntrakt.sh checkin movie \"Inception\"\n\nLists & Collections:\n\ntrakt.sh watchlist [movies|shows]\ntrakt.sh watchlist-add movie \"Dune Part Two\"\ntrakt.sh collection movies\ntrakt.sh collection-add movie 12345\ntrakt.sh lists                 # Custom lists\ntrakt.sh list-items my-favorites\n\nRatings:\n\ntrakt.sh ratings movies 8      # Movies rated 8+\ntrakt.sh rate movie \"Inception\" 10\n\nDiscovery:\n\ntrakt.sh recommendations movies\ntrakt.sh trending shows\ntrakt.sh popular movies\ntrakt.sh calendar all 7        # Next 7 days\n\nSearch:\n\ntrakt.sh search \"Breaking Bad\" show\n\nSync:\n\ntrakt.sh sync-plex             # Sync Plex watch history to Trakt\n\nLetterboxd Integration (letterboxd.sh):\n\nletterboxd.sh export           # Export from Plex as Letterboxd CSV\nletterboxd.sh import diary.csv # Import Letterboxd diary\nletterboxd.sh profile username # View public profile\nletterboxd.sh diary username 2024\n\nSimkl Integration (simkl.sh):\n\nsimkl.sh auth                  # OAuth authentication\nsimkl.sh profile               # Show profile\nsimkl.sh stats                 # Viewing statistics\nsimkl.sh history movies        # Watch history\nsimkl.sh watchlist all         # View watchlist\nsimkl.sh sync                  # Sync with Plex"
      },
      {
        "title": "Traktarr & Retraktarr Integration",
        "body": "Automate content discovery and library syncing with Trakt lists.\n\nTraktarr (Trakt → Radarr/Sonarr):\n\n# Status and configuration\ntrakt.sh traktarr-status       # Check if installed\ntrakt.sh traktarr-config       # Configure Traktarr\n\n# Add content from Trakt lists\ntrakt.sh traktarr-add movies trending 10\ntrakt.sh traktarr-add movies anticipated 15\ntrakt.sh traktarr-add movies popular 5\ntrakt.sh traktarr-add shows trending 5\ntrakt.sh traktarr-add movies watchlist 50\n\nRetraktarr (Radarr/Sonarr → Trakt):\n\n# Status and configuration\ntrakt.sh retraktarr-status     # Check if installed\ntrakt.sh retraktarr-config     # Configure Retraktarr\n\n# Sync library to Trakt lists\ntrakt.sh retraktarr-sync all   # Sync movies and shows\ntrakt.sh retraktarr-sync movies\ntrakt.sh retraktarr-sync shows\n\nInstallation via Setup Wizard:\n\ntrackers.sh setup\n# Choose option 5 for Traktarr\n# Choose option 6 for Retraktarr\n# Offers to install via pip if not found\n\nWhat They Do:\n\nTraktarr: Automatically adds content from Trakt lists (trending, anticipated, watchlist, custom) to Radarr/Sonarr for download\nRetraktarr: Syncs your Radarr/Sonarr library back to Trakt as public/private lists\n\nSee references/traktarr-retraktarr.md for complete setup, cron scheduling, and usage patterns."
      },
      {
        "title": "Prowlarr Indexer Management (prowlarr.sh)",
        "body": "Centralized indexer management across all *arr apps:\n\nprowlarr.sh indexers              # List all indexers\nprowlarr.sh test [id]             # Test indexer(s)\nprowlarr.sh stats                 # Indexer & app sync statistics\nprowlarr.sh search <query> [type] # Search across all indexers (type: movie|tv|audio|book)\nprowlarr.sh apps                  # List sync targets (Sonarr/Radarr/etc)\nprowlarr.sh add-app <type> <url> <key>  # Add app sync target\nprowlarr.sh sync                  # Trigger sync to all apps\nprowlarr.sh status                # Health check\nprowlarr.sh logs [count]          # Recent logs"
      },
      {
        "title": "Recyclarr Quality Profiles (recyclarr.sh)",
        "body": "Sync TRaSH Guides quality profiles to Sonarr/Radarr:\n\nrecyclarr.sh status               # Check status & config\nrecyclarr.sh sync [instance]      # Sync profiles (all or specific)\nrecyclarr.sh diff [instance]      # Preview changes without applying\nrecyclarr.sh profiles             # List available TRaSH profiles\nrecyclarr.sh qualities [app]      # List quality definitions\nrecyclarr.sh config               # Show current config\nrecyclarr.sh create-config        # Generate config template\nrecyclarr.sh logs [count]         # View recent logs"
      },
      {
        "title": "Maintainerr Library Cleanup (maintainerr.sh)",
        "body": "Automated library cleanup based on rules:\n\nmaintainerr.sh status             # Check status\nmaintainerr.sh rules              # List cleanup rules\nmaintainerr.sh collections        # List managed collections\nmaintainerr.sh run [rule_id]      # Trigger rules (all or specific)\nmaintainerr.sh media <rule_id>    # Show media matched by a rule\nmaintainerr.sh exclude <media_id> <rule_id>  # Exclude media from rule\nmaintainerr.sh logs               # View activity log"
      },
      {
        "title": "Notifiarr Notifications (notifiarr.sh)",
        "body": "Unified notification management across *arr services:\n\nnotifiarr.sh status               # Check status & integrations\nnotifiarr.sh triggers             # List notification triggers\nnotifiarr.sh services             # Show connected services\nnotifiarr.sh test [channel]       # Send test notification\nnotifiarr.sh config               # Configuration summary\nnotifiarr.sh logs                 # Recent notification log"
      },
      {
        "title": "Kometa Collection Manager (kometa.sh)",
        "body": "Plex collection, overlay, and metadata automation:\n\nkometa.sh status                  # Check container status\nkometa.sh run [library]           # Run Kometa (all or specific library)\nkometa.sh collections             # Show Plex collections\nkometa.sh overlays                # Check overlay config\nkometa.sh config                  # Show Kometa config\nkometa.sh templates               # List available default collections/overlays\nkometa.sh logs [count]            # View recent logs"
      },
      {
        "title": "Unpackerr Archive Extraction (unpackerr.sh)",
        "body": "Automatic archive extraction for download clients:\n\nunpackerr.sh status               # Check status & config\nunpackerr.sh activity             # Recent extraction activity\nunpackerr.sh errors               # Recent errors/warnings\nunpackerr.sh config               # Show configuration\nunpackerr.sh logs [count]         # View recent logs\nunpackerr.sh restart              # Restart container"
      },
      {
        "title": "Legacy Scripts",
        "body": "queue.sh — View download queues (use manage.sh wanted or downloads.sh active for more detail)\nsearch.sh — Search content (use manage.sh add-* for full workflow)"
      },
      {
        "title": "Environment Variables",
        "body": "Core Services:\n\nexport CLAWARR_HOST=192.168.1.100\nexport SONARR_KEY=abc123...\nexport RADARR_KEY=def456...\nexport LIDARR_KEY=ghi789...\nexport READARR_KEY=jkl012...\nexport PROWLARR_KEY=mno345...\nexport BAZARR_KEY=pqr678...\nexport OVERSEERR_KEY=stu901...\nexport PLEX_TOKEN=vwx234...\nexport TAUTULLI_KEY=yz567...\nexport SABNZBD_KEY=abc890...\nexport NOTIFIARR_KEY=xyz123...\n\n# Companion services (auto-detected, keys optional)\nexport PROWLARR_KEY=abc123...   # Required for prowlarr.sh\n\n# Docker-based services (SSH access for remote management)\nexport RECYCLARR_SSH=mynas       # SSH host for recyclarr container\nexport KOMETA_SSH=mynas          # SSH host for kometa container\nexport UNPACKERR_SSH=mynas       # SSH host for unpackerr container\nexport DOCKER_CONFIG_BASE=/opt/docker  # Docker config root (default: /volume1/docker for Synology)\n\nMedia Trackers (optional):\n\n# Trakt.tv (register app at https://trakt.tv/oauth/applications/new)\nexport TRAKT_CLIENT_ID=your_client_id\nexport TRAKT_CLIENT_SECRET=your_client_secret\n\n# Simkl (register at https://simkl.com/settings/developer)\nexport SIMKL_CLIENT_ID=your_client_id\nexport SIMKL_CLIENT_SECRET=your_client_secret\n\n# Letterboxd (requires API approval)\nexport LETTERBOXD_API_KEY=your_api_key  # Optional, uses CSV export if not set\n\nToken Storage:\n\nTokens are automatically saved to ~/.config/clawarr/\nFiles: trakt_tokens.json, simkl_tokens.json\nPermissions: 600 (user read/write only)\n\nStore in .env file and source before running scripts."
      },
      {
        "title": "Standard Ports",
        "body": "Sonarr: 8989\nRadarr: 7878\nLidarr: 8686\nReadarr: 8787\nProwlarr: 9696\nBazarr: 6767\nOverseerr: 5055\nPlex: 32400\nTautulli: 8181\nSABnzbd: 38080\nNotifiarr: 5454\nMaintainerr: 6246\nFlareSolverr: 8191\nHomarr: 7575"
      },
      {
        "title": "Method 1: /initialize.json (Easiest)",
        "body": "Most *arr apps expose API key at public endpoint:\n\ncurl -s http://HOST:7878/initialize.json | jq -r '.apiKey'\n\nFor older versions (v3):\n\ncurl -s http://HOST:7878/initialize.js | grep -o \"apiKey: '[^']*'\" | cut -d\"'\" -f2"
      },
      {
        "title": "Method 2: Config Files",
        "body": "Docker/Unraid/Synology: /config/config.xml (inside container)\n\ngrep '<ApiKey>' /path/to/config.xml | sed 's/.*<ApiKey>\\(.*\\)<\\/ApiKey>.*/\\1/'"
      },
      {
        "title": "Method 3: Web UI",
        "body": "Settings → General → Security → API Key"
      },
      {
        "title": "Plex Token",
        "body": "From Plex Web UI:\n\nOpen any media item\n\"Get Info\" → \"View XML\"\nURL contains X-Plex-Token=...\n\nOr use:\n\ncurl -u \"username:password\" -X POST \\\n  'https://plex.tv/users/sign_in.json' \\\n  -H \"X-Plex-Client-Identifier: <unique-id>\""
      },
      {
        "title": "Tautulli API Key",
        "body": "Settings → Web Interface → API → API Key"
      },
      {
        "title": "SABnzbd API Key",
        "body": "Config → General → Security → API Key"
      },
      {
        "title": "Library Analysis",
        "body": "# Get complete library overview\nscripts/library.sh stats all\n\n# Find quality upgrade candidates\nscripts/library.sh quality radarr\n\n# Show missing content\nscripts/library.sh missing all\n\n# Check disk usage\nscripts/library.sh disk all"
      },
      {
        "title": "Viewing Analytics",
        "body": "# Current activity\nscripts/analytics.sh activity\n\n# Most watched this month\nscripts/analytics.sh most-watched month\n\n# User statistics\nscripts/analytics.sh user-stats\n\n# Peak hours\nscripts/analytics.sh peak-hours"
      },
      {
        "title": "Request Management",
        "body": "# Show pending requests\nscripts/requests.sh list pending\n\n# Approve request\nscripts/requests.sh approve 123\n\n# Request statistics\nscripts/requests.sh stats"
      },
      {
        "title": "Content Management",
        "body": "# Add movie\nscripts/manage.sh add-movie \"Dune Part Two\"\n\n# Show calendar\nscripts/manage.sh calendar all 7\n\n# View history\nscripts/manage.sh history radarr 30\n\n# Show wanted/missing\nscripts/manage.sh wanted all"
      },
      {
        "title": "Indexer Management (Prowlarr)",
        "body": "# List and test all indexers\nscripts/prowlarr.sh indexers\nscripts/prowlarr.sh test\n\n# Search across all indexers\nscripts/prowlarr.sh search \"Dune\" movie\n\n# Add Sonarr/Radarr as sync targets\nscripts/prowlarr.sh add-app sonarr http://host:8989 <sonarr_key>\nscripts/prowlarr.sh add-app radarr http://host:7878 <radarr_key>\n\n# Trigger indexer sync to all apps\nscripts/prowlarr.sh sync"
      },
      {
        "title": "Quality Profiles (Recyclarr)",
        "body": "# Preview changes\nscripts/recyclarr.sh diff\n\n# Sync TRaSH Guides profiles\nscripts/recyclarr.sh sync\n\n# Check status\nscripts/recyclarr.sh status"
      },
      {
        "title": "Library Cleanup (Maintainerr)",
        "body": "# View rules and matched media\nscripts/maintainerr.sh rules\nscripts/maintainerr.sh media 1\n\n# Run cleanup\nscripts/maintainerr.sh run\n\n# Exclude something from cleanup\nscripts/maintainerr.sh exclude 12345 1"
      },
      {
        "title": "Collections & Overlays (Kometa)",
        "body": "# Run collection/overlay generation\nscripts/kometa.sh run\n\n# View existing collections\nscripts/kometa.sh collections\n\n# See available templates\nscripts/kometa.sh templates"
      },
      {
        "title": "Dashboard",
        "body": "# Generate dashboard\nscripts/dashboard.sh my-dashboard.html\n\n# Open in browser\nopen my-dashboard.html"
      },
      {
        "title": "Media Tracking Workflows",
        "body": "Initial Setup:\n\n# Set up Trakt.tv\nscripts/trackers.sh setup\n# Select option 1 (Trakt.tv)\n# Follow device auth flow\n\n# Check status\nscripts/trackers.sh status\n\nSync Plex to Trakt:\n\n# One-time sync of watch history\nscripts/trakt.sh sync-plex\n\n# Or use unified interface\nscripts/trackers.sh sync plex trakt\n\nExport for Letterboxd:\n\n# Generate Letterboxd-compatible CSV\nscripts/letterboxd.sh export\n\n# Upload at letterboxd.com/import/\n\nCross-Tracker Sync:\n\n# Export from Trakt, convert for Letterboxd\nscripts/trackers.sh sync trakt letterboxd\n\n# Compare two services\nscripts/trackers.sh compare trakt simkl\n\nDiscovery & Recommendations:\n\n# Get personalized recommendations\nscripts/trakt.sh recommendations movies\n\n# See what's trending\nscripts/trakt.sh trending shows\n\n# Check upcoming releases\nscripts/trakt.sh calendar all 7\n\nTrack Viewing:\n\n# See what you're currently watching\nscripts/trakt.sh watching\n\n# View watch history\nscripts/trakt.sh history movies 50\n\n# Rate something you watched\nscripts/trakt.sh rate movie \"Inception\" 10\n\nAutomation with Traktarr/Retraktarr:\n\n# Set up Traktarr (Trakt → Arr)\nscripts/trackers.sh setup  # Option 5\n\n# Add trending movies to Radarr\nscripts/trakt.sh traktarr-add movies trending 10\n\n# Add anticipated shows to Sonarr\nscripts/trakt.sh traktarr-add shows anticipated 5\n\n# Set up Retraktarr (Arr → Trakt)\nscripts/trackers.sh setup  # Option 6\n\n# Sync library to Trakt lists\nscripts/trakt.sh retraktarr-sync all\n\n# Schedule automation (cron):\n# Traktarr every 6 hours: 0 */6 * * * traktarr run\n# Retraktarr daily at 3am: 0 3 * * * retraktarr sync"
      },
      {
        "title": "No Files Eligible for Import",
        "body": "Diagnosis:\n\nscripts/diagnose.sh\n\nCommon causes:\n\nStale Docker mounts — Container restarted but host didn't\nPath mapping — Download client and *arr app see different paths\nPermissions — *arr app can't read download directory\nCategory mismatch — Download in wrong category\n\nSolutions:\n\n# Restart containers (fixes stale mounts)\ndocker restart radarr sonarr\n\n# Check path mappings\n# Settings → Download Clients → Remote Path Mappings"
      },
      {
        "title": "Queue Stuck",
        "body": "Check download client:\n\nscripts/downloads.sh active\nscripts/downloads.sh speed\n\n*Check arr queues:\n\nscripts/manage.sh wanted all\n\nCheck indexers:\n\nscripts/indexers.sh test\nscripts/indexers.sh stats"
      },
      {
        "title": "Missing Subtitles",
        "body": "scripts/subtitles.sh wanted\nscripts/subtitles.sh search series <id>"
      },
      {
        "title": "Reference Documentation",
        "body": "references/api-endpoints.md — Complete API reference for all services\nreferences/tracker-apis.md — Media tracker API documentation (Trakt, Simkl, Letterboxd)\nreferences/traktarr-retraktarr.md — Complete guide to Traktarr & Retraktarr automation\nreferences/companion-services.md — Prowlarr, Recyclarr, FlareSolverr, Unpackerr, Notifiarr, Maintainerr, Kometa reference\nreferences/common-issues.md — Troubleshooting guide with solutions\nreferences/setup-guide.md — Platform-specific installation\nreferences/prompts.md — Suggested natural-language prompts for agents\nreferences/dashboard-templates.md — HTML/CSS templates for dashboards"
      },
      {
        "title": "Example Agent Prompts",
        "body": "See references/prompts.md for complete list. Examples:\n\nLibrary & Downloads:\n\n\"Show me what's downloading right now\"\n\"What movies were added this week?\"\n\"Generate a dashboard of my media library\"\n\"What are the most watched shows this month?\"\n\"Find all 720p movies that could be upgraded to 4K\"\n\"Show missing episodes for all monitored shows\"\n\"What's coming out this week?\"\n\"Approve all pending Overseerr requests\"\n\"How much disk space am I using per library?\"\n\"Show my Plex viewing stats for the last 30 days\"\n\"What subtitles are missing?\"\n\"Test all my indexers\"\n\nMedia Tracking:\n\n\"Set up Trakt tracking for my Plex library\"\n\"Sync my Plex watch history to Trakt\"\n\"What am I currently watching on Trakt?\"\n\"Show my Trakt watch history from this month\"\n\"Get movie recommendations based on my Trakt ratings\"\n\"What's trending on Trakt right now?\"\n\"Export my library for Letterboxd\"\n\"Compare my Trakt and Simkl watch histories\"\n\"Show me upcoming movie releases I'm tracking\"\n\"Rate Inception 10/10 on Trakt\"\n\"Add Dune Part Two to my Trakt watchlist\"\n\"Show my Letterboxd profile stats\"\n\"What are my top-rated movies on Trakt?\"\n\nProwlarr & Indexers:\n\n\"Show all my indexers and test them\"\n\"Search across all indexers for Breaking Bad\"\n\"Sync Prowlarr indexers to Sonarr and Radarr\"\n\"Add Sonarr as a sync target in Prowlarr\"\n\nQuality Profiles (Recyclarr):\n\n\"Sync TRaSH Guides quality profiles\"\n\"Preview what Recyclarr would change\"\n\"Show available quality profiles for Radarr\"\n\"What quality definitions does Sonarr have?\"\n\nLibrary Cleanup (Maintainerr):\n\n\"Show my library cleanup rules\"\n\"What movies are flagged for deletion?\"\n\"Run all cleanup rules now\"\n\"Exclude this movie from the cleanup rule\"\n\nCollections & Overlays (Kometa):\n\n\"Run Kometa to update collections\"\n\"Show all my Plex collections\"\n\"What overlay templates are available?\"\n\"Add IMDb Top 250 collection to my movie library\"\n\nNotifications (Notifiarr):\n\n\"Check Notifiarr status and integrations\"\n\"Send a test notification\"\n\"Show recent notifications\"\n\nArchive Extraction (Unpackerr):\n\n\"Check Unpackerr status\"\n\"Show recent extraction activity\"\n\"Any extraction errors?\"\n\nTraktarr/Retraktarr Automation:\n\n\"Set up Traktarr to auto-add trending movies\"\n\"Add the top 10 anticipated movies from Trakt to Radarr\"\n\"Configure Traktarr to monitor my Trakt watchlist\"\n\"Sync my Radarr library to a public Trakt list\"\n\"Show Traktarr status and configuration\"\n\"Add trending shows to Sonarr via Traktarr\"\n\"Set up automatic syncing between Trakt and my *arr apps\"\n\"What's Retraktarr doing? Is it synced?\""
      },
      {
        "title": "Bash 3.2 Compatibility",
        "body": "All scripts are compatible with macOS bash 3.2:\n\nNo associative arrays (declare -A)\nNo uppercase parameter expansion (${var^^})\nUse $(echo \"$var\" | tr '[:lower:]' '[:upper:]') for case conversion\nNo |& (pipe stderr), use 2>&1 instead"
      },
      {
        "title": "Dependencies",
        "body": "curl — HTTP requests\njq — JSON parsing\nbc — Math calculations (for percentages, GB conversions)\nsed — Text processing\n\nAll standard on macOS/Linux."
      },
      {
        "title": "Security",
        "body": "Never log API keys\nConfirm destructive actions (delete, remove)\nRate limiting for bulk operations\nUse HTTPS for remote access"
      },
      {
        "title": "Performance",
        "body": "Scripts cache API responses where possible\nDashboard generation pulls data once per run\nBulk operations use batch APIs when available"
      },
      {
        "title": "Version Compatibility",
        "body": "Tested with:\n\nSonarr v4.x (API v3)\nRadarr v5.x (API v3)\nLidarr v2.x (API v1)\nReadarr v0.3.x (API v1)\nProwlarr v1.x (API v1)\nBazarr v1.4.x\nOverseerr v1.33.x (API v1)\nPlex Media Server (all recent versions)\nTautulli v2.x (API v2)\nSABnzbd v4.x\nRecyclarr v7.x\nUnpackerr v0.14.x\nNotifiarr v0.8.x\nMaintainerr v2.x\nKometa v2.x (Plex Meta Manager successor)\nFlareSolverr v3.x"
      },
      {
        "title": "Contributing",
        "body": "Report issues or suggest features via GitHub. Include:\n\nScript name and command run\nError output (sanitize API keys!)\nService versions\nPlatform (Docker/Unraid/Synology/etc)"
      },
      {
        "title": "License",
        "body": "MIT License - See repository for details."
      }
    ],
    "body": "ClawARR Suite\n\nUnified deep-integration control for self-hosted media automation stacks. This skill provides comprehensive agent-executable operations across the entire *arr ecosystem with rich analytics, dashboard generation, and advanced library exploration.\n\nSecurity & Scanner Clarity\nLocal-first operations: all API calls target user-provided local hosts (typically LAN/NAS).\nNo embedded secrets: API keys/tokens are sourced from environment variables or user-owned config files.\nNo telemetry/exfiltration paths: scripts do not transmit credentials or library data to third-party endpoints.\nDestructive behavior is opt-in: delete/remove actions require explicit command invocation by the user/agent.\nSetup logic avoids dynamic eval and uses explicit variable mapping for scanner-friendly shell behavior.\nQuick Start\n\nFirst time setup (recommended):\n\nscripts/setup.sh <host-ip-or-hostname>\n\n\nDiscovers services, grabs API keys, verifies connections, and outputs your config.\n\nCommon operations:\n\nscripts/status.sh              # Health check all services\nscripts/library.sh stats all   # Library statistics\nscripts/analytics.sh activity  # Current Plex streams\nscripts/dashboard.sh           # Generate HTML dashboard\nscripts/manage.sh wanted all   # Show missing content\nscripts/requests.sh list       # Overseerr requests\n\nScripts Overview\nCore Operations\nsetup.sh — Guided setup wizard with auto-discovery\ndiscover.sh — Scan host for *arr services\nstatus.sh — Health check all configured services\ndiagnose.sh — Automated troubleshooting\nLibrary Exploration (library.sh)\n\nDeep statistics and exploration for Radarr/Sonarr/Lidarr:\n\nlibrary.sh stats [app]          # Overall library stats\nlibrary.sh quality [app]        # Quality profile breakdown\nlibrary.sh missing [app]        # Missing/wanted content\nlibrary.sh unmonitored [app]    # Unmonitored items\nlibrary.sh recent [app] [days]  # Recently added (default: 7)\nlibrary.sh genres [app]         # Genre distribution\nlibrary.sh years [app]          # Year distribution\nlibrary.sh studios [app]        # Studio/network breakdown\nlibrary.sh nofiles [app]        # Monitored but no files\nlibrary.sh disk [app]           # Disk usage by root folder\n\nAnalytics (analytics.sh)\n\nRich viewing analytics from Tautulli/Plex:\n\nanalytics.sh activity                 # Currently watching\nanalytics.sh history [count]          # Watch history\nanalytics.sh most-watched [period]    # Most watched (week/month/year)\nanalytics.sh popular-genres [period]  # Popular genres\nanalytics.sh peak-hours               # Peak watching hours\nanalytics.sh user-stats [user]        # User activity\nanalytics.sh library-stats            # Plex library stats\nanalytics.sh recent-added [count]     # Recently added to Plex\nanalytics.sh play-totals              # Total play statistics\n\nContent Management (manage.sh)\n\nAdd, remove, and manage content:\n\nmanage.sh add-movie \"<title>\" [quality] [root]\nmanage.sh add-series \"<title>\" [quality] [root]\nmanage.sh remove <app> <id>\nmanage.sh wanted [app]\nmanage.sh calendar [app] [days]\nmanage.sh history [app] [count]\nmanage.sh rename <app> <id>\nmanage.sh refresh <app> [id]\n\nRequest Management (requests.sh)\n\nOverseerr request handling:\n\nrequests.sh list [pending|approved|available|all]\nrequests.sh approve <id>\nrequests.sh deny <id> [reason]\nrequests.sh info <id>\nrequests.sh stats\n\nSubtitle Management (subtitles.sh)\n\nBazarr operations:\n\nsubtitles.sh wanted\nsubtitles.sh history [count]\nsubtitles.sh search <series|movie> <id>\nsubtitles.sh languages\n\nIndexer Management (indexers.sh)\n\nProwlarr operations:\n\nindexers.sh list\nindexers.sh test [id]\nindexers.sh stats\n\nDownload Client (downloads.sh)\n\nSABnzbd operations:\n\ndownloads.sh active\ndownloads.sh speed\ndownloads.sh history [count]\ndownloads.sh pause\ndownloads.sh resume\ndownloads.sh queue\n\nDashboard Generation (dashboard.sh)\n\nGenerate self-contained HTML dashboard:\n\ndashboard.sh [output_file]\n\n\nCreates beautiful dark-themed dashboard with:\n\nSystem health\nDownload activity\nLibrary statistics\nRecent activity\nViewing analytics\nDisk usage\n\nOutput defaults to clawarr-dashboard.html (open in any browser).\n\nMedia Tracker Integration (trakt.sh, trackers.sh, letterboxd.sh, simkl.sh)\n\nTrack and sync what you watch across services like Trakt.tv, Letterboxd, Simkl, and more.\n\nUnified Interface (trackers.sh):\n\ntrackers.sh setup              # Interactive setup wizard\ntrackers.sh status             # Show configured trackers\ntrackers.sh sync plex trakt    # Sync Plex → Trakt\ntrackers.sh export trakt json  # Export watch history\ntrackers.sh import letterboxd file.csv\ntrackers.sh compare trakt simkl\n\n\nTrakt.tv Integration (trakt.sh):\n\nAuthentication:\n\ntrakt.sh auth                  # Device code OAuth flow\ntrakt.sh auth-status           # Check authentication\n\n\nProfile & Stats:\n\ntrakt.sh profile [username]    # Show profile\ntrakt.sh stats [username]      # Detailed statistics\n\n\nWatching & History:\n\ntrakt.sh watching              # Currently watching\ntrakt.sh history [movies|shows|episodes] [limit]\ntrakt.sh sync-history export file.json\ntrakt.sh sync-history import file.json\n\n\nScrobbling:\n\ntrakt.sh scrobble start movie 12345\ntrakt.sh scrobble stop movie 12345 100\ntrakt.sh checkin movie \"Inception\"\n\n\nLists & Collections:\n\ntrakt.sh watchlist [movies|shows]\ntrakt.sh watchlist-add movie \"Dune Part Two\"\ntrakt.sh collection movies\ntrakt.sh collection-add movie 12345\ntrakt.sh lists                 # Custom lists\ntrakt.sh list-items my-favorites\n\n\nRatings:\n\ntrakt.sh ratings movies 8      # Movies rated 8+\ntrakt.sh rate movie \"Inception\" 10\n\n\nDiscovery:\n\ntrakt.sh recommendations movies\ntrakt.sh trending shows\ntrakt.sh popular movies\ntrakt.sh calendar all 7        # Next 7 days\n\n\nSearch:\n\ntrakt.sh search \"Breaking Bad\" show\n\n\nSync:\n\ntrakt.sh sync-plex             # Sync Plex watch history to Trakt\n\n\nLetterboxd Integration (letterboxd.sh):\n\nletterboxd.sh export           # Export from Plex as Letterboxd CSV\nletterboxd.sh import diary.csv # Import Letterboxd diary\nletterboxd.sh profile username # View public profile\nletterboxd.sh diary username 2024\n\n\nSimkl Integration (simkl.sh):\n\nsimkl.sh auth                  # OAuth authentication\nsimkl.sh profile               # Show profile\nsimkl.sh stats                 # Viewing statistics\nsimkl.sh history movies        # Watch history\nsimkl.sh watchlist all         # View watchlist\nsimkl.sh sync                  # Sync with Plex\n\nTraktarr & Retraktarr Integration\n\nAutomate content discovery and library syncing with Trakt lists.\n\nTraktarr (Trakt → Radarr/Sonarr):\n\n# Status and configuration\ntrakt.sh traktarr-status       # Check if installed\ntrakt.sh traktarr-config       # Configure Traktarr\n\n# Add content from Trakt lists\ntrakt.sh traktarr-add movies trending 10\ntrakt.sh traktarr-add movies anticipated 15\ntrakt.sh traktarr-add movies popular 5\ntrakt.sh traktarr-add shows trending 5\ntrakt.sh traktarr-add movies watchlist 50\n\n\nRetraktarr (Radarr/Sonarr → Trakt):\n\n# Status and configuration\ntrakt.sh retraktarr-status     # Check if installed\ntrakt.sh retraktarr-config     # Configure Retraktarr\n\n# Sync library to Trakt lists\ntrakt.sh retraktarr-sync all   # Sync movies and shows\ntrakt.sh retraktarr-sync movies\ntrakt.sh retraktarr-sync shows\n\n\nInstallation via Setup Wizard:\n\ntrackers.sh setup\n# Choose option 5 for Traktarr\n# Choose option 6 for Retraktarr\n# Offers to install via pip if not found\n\n\nWhat They Do:\n\nTraktarr: Automatically adds content from Trakt lists (trending, anticipated, watchlist, custom) to Radarr/Sonarr for download\nRetraktarr: Syncs your Radarr/Sonarr library back to Trakt as public/private lists\n\nSee references/traktarr-retraktarr.md for complete setup, cron scheduling, and usage patterns.\n\nProwlarr Indexer Management (prowlarr.sh)\n\nCentralized indexer management across all *arr apps:\n\nprowlarr.sh indexers              # List all indexers\nprowlarr.sh test [id]             # Test indexer(s)\nprowlarr.sh stats                 # Indexer & app sync statistics\nprowlarr.sh search <query> [type] # Search across all indexers (type: movie|tv|audio|book)\nprowlarr.sh apps                  # List sync targets (Sonarr/Radarr/etc)\nprowlarr.sh add-app <type> <url> <key>  # Add app sync target\nprowlarr.sh sync                  # Trigger sync to all apps\nprowlarr.sh status                # Health check\nprowlarr.sh logs [count]          # Recent logs\n\nRecyclarr Quality Profiles (recyclarr.sh)\n\nSync TRaSH Guides quality profiles to Sonarr/Radarr:\n\nrecyclarr.sh status               # Check status & config\nrecyclarr.sh sync [instance]      # Sync profiles (all or specific)\nrecyclarr.sh diff [instance]      # Preview changes without applying\nrecyclarr.sh profiles             # List available TRaSH profiles\nrecyclarr.sh qualities [app]      # List quality definitions\nrecyclarr.sh config               # Show current config\nrecyclarr.sh create-config        # Generate config template\nrecyclarr.sh logs [count]         # View recent logs\n\nMaintainerr Library Cleanup (maintainerr.sh)\n\nAutomated library cleanup based on rules:\n\nmaintainerr.sh status             # Check status\nmaintainerr.sh rules              # List cleanup rules\nmaintainerr.sh collections        # List managed collections\nmaintainerr.sh run [rule_id]      # Trigger rules (all or specific)\nmaintainerr.sh media <rule_id>    # Show media matched by a rule\nmaintainerr.sh exclude <media_id> <rule_id>  # Exclude media from rule\nmaintainerr.sh logs               # View activity log\n\nNotifiarr Notifications (notifiarr.sh)\n\nUnified notification management across *arr services:\n\nnotifiarr.sh status               # Check status & integrations\nnotifiarr.sh triggers             # List notification triggers\nnotifiarr.sh services             # Show connected services\nnotifiarr.sh test [channel]       # Send test notification\nnotifiarr.sh config               # Configuration summary\nnotifiarr.sh logs                 # Recent notification log\n\nKometa Collection Manager (kometa.sh)\n\nPlex collection, overlay, and metadata automation:\n\nkometa.sh status                  # Check container status\nkometa.sh run [library]           # Run Kometa (all or specific library)\nkometa.sh collections             # Show Plex collections\nkometa.sh overlays                # Check overlay config\nkometa.sh config                  # Show Kometa config\nkometa.sh templates               # List available default collections/overlays\nkometa.sh logs [count]            # View recent logs\n\nUnpackerr Archive Extraction (unpackerr.sh)\n\nAutomatic archive extraction for download clients:\n\nunpackerr.sh status               # Check status & config\nunpackerr.sh activity             # Recent extraction activity\nunpackerr.sh errors               # Recent errors/warnings\nunpackerr.sh config               # Show configuration\nunpackerr.sh logs [count]         # View recent logs\nunpackerr.sh restart              # Restart container\n\nLegacy Scripts\nqueue.sh — View download queues (use manage.sh wanted or downloads.sh active for more detail)\nsearch.sh — Search content (use manage.sh add-* for full workflow)\nConfiguration\nEnvironment Variables\n\nCore Services:\n\nexport CLAWARR_HOST=192.168.1.100\nexport SONARR_KEY=abc123...\nexport RADARR_KEY=def456...\nexport LIDARR_KEY=ghi789...\nexport READARR_KEY=jkl012...\nexport PROWLARR_KEY=mno345...\nexport BAZARR_KEY=pqr678...\nexport OVERSEERR_KEY=stu901...\nexport PLEX_TOKEN=vwx234...\nexport TAUTULLI_KEY=yz567...\nexport SABNZBD_KEY=abc890...\nexport NOTIFIARR_KEY=xyz123...\n\n# Companion services (auto-detected, keys optional)\nexport PROWLARR_KEY=abc123...   # Required for prowlarr.sh\n\n# Docker-based services (SSH access for remote management)\nexport RECYCLARR_SSH=mynas       # SSH host for recyclarr container\nexport KOMETA_SSH=mynas          # SSH host for kometa container\nexport UNPACKERR_SSH=mynas       # SSH host for unpackerr container\nexport DOCKER_CONFIG_BASE=/opt/docker  # Docker config root (default: /volume1/docker for Synology)\n\n\nMedia Trackers (optional):\n\n# Trakt.tv (register app at https://trakt.tv/oauth/applications/new)\nexport TRAKT_CLIENT_ID=your_client_id\nexport TRAKT_CLIENT_SECRET=your_client_secret\n\n# Simkl (register at https://simkl.com/settings/developer)\nexport SIMKL_CLIENT_ID=your_client_id\nexport SIMKL_CLIENT_SECRET=your_client_secret\n\n# Letterboxd (requires API approval)\nexport LETTERBOXD_API_KEY=your_api_key  # Optional, uses CSV export if not set\n\n\nToken Storage:\n\nTokens are automatically saved to ~/.config/clawarr/\nFiles: trakt_tokens.json, simkl_tokens.json\nPermissions: 600 (user read/write only)\n\nStore in .env file and source before running scripts.\n\nStandard Ports\nSonarr: 8989\nRadarr: 7878\nLidarr: 8686\nReadarr: 8787\nProwlarr: 9696\nBazarr: 6767\nOverseerr: 5055\nPlex: 32400\nTautulli: 8181\nSABnzbd: 38080\nNotifiarr: 5454\nMaintainerr: 6246\nFlareSolverr: 8191\nHomarr: 7575\nAPI Key Discovery\nMethod 1: /initialize.json (Easiest)\n\nMost *arr apps expose API key at public endpoint:\n\ncurl -s http://HOST:7878/initialize.json | jq -r '.apiKey'\n\n\nFor older versions (v3):\n\ncurl -s http://HOST:7878/initialize.js | grep -o \"apiKey: '[^']*'\" | cut -d\"'\" -f2\n\nMethod 2: Config Files\n\nDocker/Unraid/Synology: /config/config.xml (inside container)\n\ngrep '<ApiKey>' /path/to/config.xml | sed 's/.*<ApiKey>\\(.*\\)<\\/ApiKey>.*/\\1/'\n\nMethod 3: Web UI\n\nSettings → General → Security → API Key\n\nPlex Token\n\nFrom Plex Web UI:\n\nOpen any media item\n\"Get Info\" → \"View XML\"\nURL contains X-Plex-Token=...\n\nOr use:\n\ncurl -u \"username:password\" -X POST \\\n  'https://plex.tv/users/sign_in.json' \\\n  -H \"X-Plex-Client-Identifier: <unique-id>\"\n\nTautulli API Key\n\nSettings → Web Interface → API → API Key\n\nSABnzbd API Key\n\nConfig → General → Security → API Key\n\nCommon Workflows\nLibrary Analysis\n# Get complete library overview\nscripts/library.sh stats all\n\n# Find quality upgrade candidates\nscripts/library.sh quality radarr\n\n# Show missing content\nscripts/library.sh missing all\n\n# Check disk usage\nscripts/library.sh disk all\n\nViewing Analytics\n# Current activity\nscripts/analytics.sh activity\n\n# Most watched this month\nscripts/analytics.sh most-watched month\n\n# User statistics\nscripts/analytics.sh user-stats\n\n# Peak hours\nscripts/analytics.sh peak-hours\n\nRequest Management\n# Show pending requests\nscripts/requests.sh list pending\n\n# Approve request\nscripts/requests.sh approve 123\n\n# Request statistics\nscripts/requests.sh stats\n\nContent Management\n# Add movie\nscripts/manage.sh add-movie \"Dune Part Two\"\n\n# Show calendar\nscripts/manage.sh calendar all 7\n\n# View history\nscripts/manage.sh history radarr 30\n\n# Show wanted/missing\nscripts/manage.sh wanted all\n\nIndexer Management (Prowlarr)\n# List and test all indexers\nscripts/prowlarr.sh indexers\nscripts/prowlarr.sh test\n\n# Search across all indexers\nscripts/prowlarr.sh search \"Dune\" movie\n\n# Add Sonarr/Radarr as sync targets\nscripts/prowlarr.sh add-app sonarr http://host:8989 <sonarr_key>\nscripts/prowlarr.sh add-app radarr http://host:7878 <radarr_key>\n\n# Trigger indexer sync to all apps\nscripts/prowlarr.sh sync\n\nQuality Profiles (Recyclarr)\n# Preview changes\nscripts/recyclarr.sh diff\n\n# Sync TRaSH Guides profiles\nscripts/recyclarr.sh sync\n\n# Check status\nscripts/recyclarr.sh status\n\nLibrary Cleanup (Maintainerr)\n# View rules and matched media\nscripts/maintainerr.sh rules\nscripts/maintainerr.sh media 1\n\n# Run cleanup\nscripts/maintainerr.sh run\n\n# Exclude something from cleanup\nscripts/maintainerr.sh exclude 12345 1\n\nCollections & Overlays (Kometa)\n# Run collection/overlay generation\nscripts/kometa.sh run\n\n# View existing collections\nscripts/kometa.sh collections\n\n# See available templates\nscripts/kometa.sh templates\n\nDashboard\n# Generate dashboard\nscripts/dashboard.sh my-dashboard.html\n\n# Open in browser\nopen my-dashboard.html\n\nMedia Tracking Workflows\n\nInitial Setup:\n\n# Set up Trakt.tv\nscripts/trackers.sh setup\n# Select option 1 (Trakt.tv)\n# Follow device auth flow\n\n# Check status\nscripts/trackers.sh status\n\n\nSync Plex to Trakt:\n\n# One-time sync of watch history\nscripts/trakt.sh sync-plex\n\n# Or use unified interface\nscripts/trackers.sh sync plex trakt\n\n\nExport for Letterboxd:\n\n# Generate Letterboxd-compatible CSV\nscripts/letterboxd.sh export\n\n# Upload at letterboxd.com/import/\n\n\nCross-Tracker Sync:\n\n# Export from Trakt, convert for Letterboxd\nscripts/trackers.sh sync trakt letterboxd\n\n# Compare two services\nscripts/trackers.sh compare trakt simkl\n\n\nDiscovery & Recommendations:\n\n# Get personalized recommendations\nscripts/trakt.sh recommendations movies\n\n# See what's trending\nscripts/trakt.sh trending shows\n\n# Check upcoming releases\nscripts/trakt.sh calendar all 7\n\n\nTrack Viewing:\n\n# See what you're currently watching\nscripts/trakt.sh watching\n\n# View watch history\nscripts/trakt.sh history movies 50\n\n# Rate something you watched\nscripts/trakt.sh rate movie \"Inception\" 10\n\n\nAutomation with Traktarr/Retraktarr:\n\n# Set up Traktarr (Trakt → Arr)\nscripts/trackers.sh setup  # Option 5\n\n# Add trending movies to Radarr\nscripts/trakt.sh traktarr-add movies trending 10\n\n# Add anticipated shows to Sonarr\nscripts/trakt.sh traktarr-add shows anticipated 5\n\n# Set up Retraktarr (Arr → Trakt)\nscripts/trackers.sh setup  # Option 6\n\n# Sync library to Trakt lists\nscripts/trakt.sh retraktarr-sync all\n\n# Schedule automation (cron):\n# Traktarr every 6 hours: 0 */6 * * * traktarr run\n# Retraktarr daily at 3am: 0 3 * * * retraktarr sync\n\nTroubleshooting\nNo Files Eligible for Import\n\nDiagnosis:\n\nscripts/diagnose.sh\n\n\nCommon causes:\n\nStale Docker mounts — Container restarted but host didn't\nPath mapping — Download client and *arr app see different paths\nPermissions — *arr app can't read download directory\nCategory mismatch — Download in wrong category\n\nSolutions:\n\n# Restart containers (fixes stale mounts)\ndocker restart radarr sonarr\n\n# Check path mappings\n# Settings → Download Clients → Remote Path Mappings\n\nQueue Stuck\n\nCheck download client:\n\nscripts/downloads.sh active\nscripts/downloads.sh speed\n\n\n*Check arr queues:\n\nscripts/manage.sh wanted all\n\n\nCheck indexers:\n\nscripts/indexers.sh test\nscripts/indexers.sh stats\n\nMissing Subtitles\nscripts/subtitles.sh wanted\nscripts/subtitles.sh search series <id>\n\nReference Documentation\nreferences/api-endpoints.md — Complete API reference for all services\nreferences/tracker-apis.md — Media tracker API documentation (Trakt, Simkl, Letterboxd)\nreferences/traktarr-retraktarr.md — Complete guide to Traktarr & Retraktarr automation\nreferences/companion-services.md — Prowlarr, Recyclarr, FlareSolverr, Unpackerr, Notifiarr, Maintainerr, Kometa reference\nreferences/common-issues.md — Troubleshooting guide with solutions\nreferences/setup-guide.md — Platform-specific installation\nreferences/prompts.md — Suggested natural-language prompts for agents\nreferences/dashboard-templates.md — HTML/CSS templates for dashboards\nExample Agent Prompts\n\nSee references/prompts.md for complete list. Examples:\n\nLibrary & Downloads:\n\n\"Show me what's downloading right now\"\n\"What movies were added this week?\"\n\"Generate a dashboard of my media library\"\n\"What are the most watched shows this month?\"\n\"Find all 720p movies that could be upgraded to 4K\"\n\"Show missing episodes for all monitored shows\"\n\"What's coming out this week?\"\n\"Approve all pending Overseerr requests\"\n\"How much disk space am I using per library?\"\n\"Show my Plex viewing stats for the last 30 days\"\n\"What subtitles are missing?\"\n\"Test all my indexers\"\n\nMedia Tracking:\n\n\"Set up Trakt tracking for my Plex library\"\n\"Sync my Plex watch history to Trakt\"\n\"What am I currently watching on Trakt?\"\n\"Show my Trakt watch history from this month\"\n\"Get movie recommendations based on my Trakt ratings\"\n\"What's trending on Trakt right now?\"\n\"Export my library for Letterboxd\"\n\"Compare my Trakt and Simkl watch histories\"\n\"Show me upcoming movie releases I'm tracking\"\n\"Rate Inception 10/10 on Trakt\"\n\"Add Dune Part Two to my Trakt watchlist\"\n\"Show my Letterboxd profile stats\"\n\"What are my top-rated movies on Trakt?\"\n\nProwlarr & Indexers:\n\n\"Show all my indexers and test them\"\n\"Search across all indexers for Breaking Bad\"\n\"Sync Prowlarr indexers to Sonarr and Radarr\"\n\"Add Sonarr as a sync target in Prowlarr\"\n\nQuality Profiles (Recyclarr):\n\n\"Sync TRaSH Guides quality profiles\"\n\"Preview what Recyclarr would change\"\n\"Show available quality profiles for Radarr\"\n\"What quality definitions does Sonarr have?\"\n\nLibrary Cleanup (Maintainerr):\n\n\"Show my library cleanup rules\"\n\"What movies are flagged for deletion?\"\n\"Run all cleanup rules now\"\n\"Exclude this movie from the cleanup rule\"\n\nCollections & Overlays (Kometa):\n\n\"Run Kometa to update collections\"\n\"Show all my Plex collections\"\n\"What overlay templates are available?\"\n\"Add IMDb Top 250 collection to my movie library\"\n\nNotifications (Notifiarr):\n\n\"Check Notifiarr status and integrations\"\n\"Send a test notification\"\n\"Show recent notifications\"\n\nArchive Extraction (Unpackerr):\n\n\"Check Unpackerr status\"\n\"Show recent extraction activity\"\n\"Any extraction errors?\"\n\nTraktarr/Retraktarr Automation:\n\n\"Set up Traktarr to auto-add trending movies\"\n\"Add the top 10 anticipated movies from Trakt to Radarr\"\n\"Configure Traktarr to monitor my Trakt watchlist\"\n\"Sync my Radarr library to a public Trakt list\"\n\"Show Traktarr status and configuration\"\n\"Add trending shows to Sonarr via Traktarr\"\n\"Set up automatic syncing between Trakt and my *arr apps\"\n\"What's Retraktarr doing? Is it synced?\"\nTechnical Notes\nBash 3.2 Compatibility\n\nAll scripts are compatible with macOS bash 3.2:\n\nNo associative arrays (declare -A)\nNo uppercase parameter expansion (${var^^})\nUse $(echo \"$var\" | tr '[:lower:]' '[:upper:]') for case conversion\nNo |& (pipe stderr), use 2>&1 instead\nDependencies\ncurl — HTTP requests\njq — JSON parsing\nbc — Math calculations (for percentages, GB conversions)\nsed — Text processing\n\nAll standard on macOS/Linux.\n\nSecurity\nNever log API keys\nConfirm destructive actions (delete, remove)\nRate limiting for bulk operations\nUse HTTPS for remote access\nPerformance\nScripts cache API responses where possible\nDashboard generation pulls data once per run\nBulk operations use batch APIs when available\nVersion Compatibility\n\nTested with:\n\nSonarr v4.x (API v3)\nRadarr v5.x (API v3)\nLidarr v2.x (API v1)\nReadarr v0.3.x (API v1)\nProwlarr v1.x (API v1)\nBazarr v1.4.x\nOverseerr v1.33.x (API v1)\nPlex Media Server (all recent versions)\nTautulli v2.x (API v2)\nSABnzbd v4.x\nRecyclarr v7.x\nUnpackerr v0.14.x\nNotifiarr v0.8.x\nMaintainerr v2.x\nKometa v2.x (Plex Meta Manager successor)\nFlareSolverr v3.x\nContributing\n\nReport issues or suggest features via GitHub. Include:\n\nScript name and command run\nError output (sanitize API keys!)\nService versions\nPlatform (Docker/Unraid/Synology/etc)\nLicense\n\nMIT License - See repository for details."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/omiron33/clawarr-suite",
    "publisherUrl": "https://clawhub.ai/omiron33/clawarr-suite",
    "owner": "omiron33",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/clawarr-suite",
    "downloadUrl": "https://openagent3.xyz/downloads/clawarr-suite",
    "agentUrl": "https://openagent3.xyz/skills/clawarr-suite/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawarr-suite/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawarr-suite/agent.md"
  }
}