From anipy-cli
This skill should be used when the user asks to play, watch, stream, search, download, or binge anime; continue watching or check anime history; install, setup, configure, update, or fix anipy-cli; change video player or set anime quality; troubleshoot anime playback issues; or mentions anipy-cli by name. Triggers on "play anime", "watch frieren", "stream one piece dubbed", "download anime episodes", "binge naruto 1-10", "show anime history", "next episode", "continue watching", "change player to mpv", "set quality to 1080", "anipy-cli not working", "player not found", "anipy-cli", "anime from terminal".
How this skill is triggered — by the user, by Claude, or both
Slash command
/anipy-cli:anipy-cliThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
anipy-cli is a Python CLI tool for searching, streaming, and downloading anime. This skill enables Claude Code to act as a natural language interface for anipy-cli on Windows, handling dependency management, player routing, and all CLI operations non-interactively.
anipy-cli is a Python CLI tool for searching, streaming, and downloading anime. This skill enables Claude Code to act as a natural language interface for anipy-cli on Windows, handling dependency management, player routing, and all CLI operations non-interactively.
When a command fails due to a missing dependency, diagnose and repair using this chain. Do NOT run these checks upfront — only when a failure occurs. Each installation requires AskUserQuestion confirmation — never install silently.
Repair order:
uv --version → if missing, install (see references/setup-guide.md section 1). If both pwsh.exe and powershell.exe install methods fail, STOP and tell the user to install PowerShell 7 from the Microsoft Store, then restart their terminal.anipy-cli --version → if missing, uv tool install anipy-cliwhere.exe mpv), then vlc (where.exe vlc + common paths) → if neither found, ask user which to install (see references/setup-guide.md sections 3-5)anipy-cli --config-path to get the path, then verify the config file exists. If not, run anipy-cli --version 2>&1 to attempt generation; if config still missing, run a search command like anipy-cli -s "test:1:sub" 2>&1 to trigger full initialization. Then verify player_path matches an installed player, update if neededImportant: After installing scoop or any tool, the current shell session may not have updated PATH. Use full paths or pwsh.exe to invoke scoop commands. For exact install commands, see references/setup-guide.md.
anipy-cli supports non-interactive mode via the -s flag, which is essential for Claude Code integration since Claude cannot interact with terminal prompts.
anipy-cli -s "query:episode:sub/dub"
Format: {search_term}:{episode_or_range}:{sub|dub} (default: sub when user doesn't specify)
Examples:
anipy-cli -s "frieren:1:sub" — Play Frieren episode 1, subbedanipy-cli -s "steins gate:1:sub" — Play Steins;Gate episode 1anipy-cli -s "one piece:1-10:dub" — Binge One Piece episodes 1-10, dubbedanipy-cli -s "spy x family:3:dub" — Play Spy x Family episode 3, dubbed| Flag | Mode | Description |
|---|---|---|
| (none) | Default | Interactive search and play |
-s | Search | Non-interactive search with query:ep:type |
-D | Download | Download mode, combine with -s |
-B | Binge | Binge mode for episode ranges |
-H | History | Show watch history (interactive — will hang, read history.json instead) |
-S | Seasonal | Seasonal anime tracking (interactive — will hang, do not use) |
-A | AniList | AniList integration (interactive — will hang, do not use) |
-M | MAL | MyAnimeList integration (interactive — will hang, do not use) |
| Flag | Purpose |
|---|---|
-p mpv|vlc|syncplay|mpvnet|mpv-controlled | Override player |
-q best|worst|720|1080 | Set quality |
-v | Show version |
-h | Show help |
-VVV | Verbose debug output (-V = fatal only, -VVV = full info) |
--config-path | Print config file path |
--delete-history | Clear history |
Combine -D with -s for downloading:
anipy-cli -D -s "frieren:1-5:sub"
Download location is set in config.yaml under download_folder_path.
Combine -B with -s for binge watching:
anipy-cli -B -s "frieren:1-5:sub"
To view history non-interactively, read history.json from the user_files_path directory specified in config.yaml. Do NOT use the -H flag — it is interactive and will hang in Claude Code's Bash tool. Always discover the config path dynamically via anipy-cli --config-path.
If history.json does not exist, tell the user "No watch history found."
To resume where the user left off:
history.json from user_files_path (discover via anipy-cli --config-path → read config → get user_files_path)anipy-cli -s "title:next_ep:sub" 2>&1If the user says "next episode" without specifying an anime, show recent history entries and ask which one to continue.
The -s flag auto-selects the first search result via fuzzy matching. To improve accuracy:
steins gate not gate, my hero academia not heroboku no hero academiaPriority order for player detection and configuration:
Note: iina is also supported but macOS-only (not relevant for Windows).
When updating config.yaml player_path:
mpv, vlc)C:\Program Files\VideoLAN\VLC\vlc.exe)Always discover the config path dynamically via anipy-cli --config-path (typically C:\Users\<username>\AppData\Local\anipy-cli\config.yaml).
Key fields:
player_path — video player executable or pathdownload_folder_path — download directorypreferred_type — sub or dub. Warning: if set to null, anipy-cli will prompt interactively for sub/dub choice, which hangs in Claude Code. Always specify :sub or :dub in the -s search string, or set this config value to sub or dubproviders — anime source providers per mode (default: allanime)mpv_commandline_options — extra mpv flagsvlc_commandline_options — extra vlc flagsPYTHONIOENCODING=utf-8 prefix to avoid encoding crashes2>&1 to capture stderrFor Windows-specific errors and solutions, see references/troubleshooting.md.
references/setup-guide.md — Step-by-step dependency installation flows with exact commandsreferences/troubleshooting.md — Windows-specific issues, error catalog, and solutionsnpx claudepluginhub linaqruf/kana-code-plugins --plugin anipy-cliManages Sonarr TV show library: search by name, add with quality profiles/monitor options/search-on-add, check existence, remove with optional file deletion, view configs.
Searches Pirate Bay torrents via apibay.org API, extracts magnet links using CLI (season, smart, grab) or direct calls. For torrent searches, seeders, top lists.
Downloads videos from YouTube, Instagram, X/Twitter, Vimeo, TikTok, or local paths, extracts frames and transcripts (via captions or on-device mlx-whisper), and lets Claude answer questions about the video content.