Getting Started

▄▄ ▄▄  ▄▄▄  ▄▄▄▄  ▄▄ ▄▄ ▄▄   ▄▄ ▄▄      ▄▄▄▄ ▄▄    ▄▄
▀███▀ ██▀██ ██▄█▄ ██ ██ ██▀▄▀██ ██ ▄▄▄ ██▀▀▀ ██    ██
  █   ▀███▀ ██ ██ ▀███▀ ██   ██ ██     ▀████ ██▄▄▄ ██

Yorumi CLI is the official command-line app for watching and downloading anime through Yorumi. It searches Yorumi when available, falls back to direct AllAnime scraping, opens mpv for playback, and writes MP4 downloads with AAC audio by default.

Installation

Windows

iwr -useb https://raw.githubusercontent.com/davenarchives/yorumi-cli/main/install.ps1 | iex
scoop bucket add yorumi https://github.com/davenarchives/yorumi-cli
scoop install yorumi-cli

macOS / Linux

curl -sL https://raw.githubusercontent.com/davenarchives/yorumi-cli/main/install.sh | bash

Watching Anime

Pass an anime title, optionally with an episode or range. Yorumi CLI resolves the stream and opens it in mpv.

yorumi-cli "frieren"
yorumi-cli -e 1 "frieren"
yorumi-cli -r "1-5" "naruto"

Downloading Anime

Use -d or --download. Downloads are saved to ~/Downloads/Yorumi unless --output is set.

yorumi-cli -d -e 1 "frieren"
yorumi-cli -d -r "1-5" "naruto"
yorumi-cli -d -e 3 "wistoria" --output "D:\Anime"

Downloaded MP4 files copy the video stream and convert audio to AAC for better compatibility with Windows Media Player. Use --copy-audio to preserve the source audio track.

Discovering Anime

Use --latest or --popular to explore new shows instead of searching.

yorumi-cli --latest
yorumi-cli --popular
yorumi-cli -p -i 1 -e 1

Audio Preferences

Use --sub or --dub to prioritize subbed or dubbed audio streams.

yorumi-cli "Attack on Titan" --sub
yorumi-cli -e 1 "Attack on Titan" --dub
yorumi-cli -r "1-5" "Attack on Titan" --sub
yorumi-cli -d -e 1 "Attack on Titan" --dub

Command Reference

-e, --episode <number>Select a specific episode without prompting.
-r, --range <start-end>Select an episode range such as 1-5.
-i, --anime-index <num>Select a search result by index without prompting.
--sub, --dubPrefer SUBbed or DUBbed audio streams.
-d, --downloadDownload selected episode(s) instead of opening mpv.
-o, --output <dir>Choose a download directory.
-v, --versionShow the installed CLI version.
-l, --latestShow the top latest updated anime.
-p, --popularShow the top trending anime.
--directRequest a direct stream URL when supported.

Update and Uninstall

yorumi-cli --update
yorumi-cli --uninstall

The updater pulls the latest GitHub repository revision and installs dependencies. The uninstaller removes the local install directory and known npm command shims.

Troubleshooting

mpv does not open

Install mpv, reopen your terminal, and run mpv --version. On Windows, the installer attempts to install mpv with Winget.

Fallback streams do not open

Install yt-dlp, reopen your terminal, and run yt-dlp --version. On Windows, the installer attempts to install yt-dlp with Winget.

ffmpeg is missing

Download mode requires ffmpeg. On Windows, Yorumi CLI can install it with Winget when needed.

Audio does not play in Windows Media Player

Run yorumi-cli --update. Current downloads convert audio to AAC by default.

Changelogs

Track Yorumi CLI releases, installer changes, and package-manager readiness.

v2.2.0

AniDB native scraper integration and ultra-fast standalone streaming.

Added & Changed

  • AniDB Native Scraper Integration: Integrated standalone AniDB scraper based on anidb.app (cross-referenced with ani-cli standards) as the primary search and streaming provider.
  • Ultra-Fast Standalone Streaming: Queries anidb.app suggestions and language endpoints directly using curl / fetch, providing direct 1080p, 720p, and 360p HLS playback in mpv without requiring a local Yorumi backend.
  • Resilient Fallback Hierarchy: Search and stream pipelines now query AniDB first, followed by AllAnime and AniNeko fallback providers if any source is unavailable.

v2.1.9

Provider fallbacks and search ranking.

Fixed & Added

  • Multi-Provider Fallback: Added standalone AniNeko stream scraper (src/anineko.ts) as a fallback provider when AllAnime streams fail or are missing for an episode.
  • Search Episode Ranking: Fixed episode calculation in backend-search.ts to prevent unreleased upcoming seasons (with 0 episodes) from being incorrectly scored and misranked above main released seasons.

v2.1.8

Dynamic token and payload decryption fixes.

Fixed & Changed

  • Dynamic AES-256-GCM Key Scraping: Replaced static AllManga keys with dynamic runtime scraping of epoch, partB, and SvelteKit JavaScript chunks from mkissa.to to compute the AES-256-GCM key (aaKey), preventing static key expiration.
  • ani-cli Alignment & Endpoints: Updated timestamp-bucketed aaReq signature generation (seconds-based timestamp, epoch:queryHash:ts seed) and switched API requests to mkissa.net/api with mkissa.to Origin and Referer headers.
  • AllAnime Payload Decryption: Added multi-pass key candidates (SimtVuagFbGR2K7P, Xot36i3lK3:v1, allanime) and resilient slicing strategies to decryptTobeparsed() in both yorumi-cli and the main Yorumi backend scraper to prevent "No valid sources" failures across API payload rotations.

v2.1.7

Decryption keys patch.

Fixed

  • AllAnime Scraper: Updated AES-GCM and AES-256-CTR encryption keys for aaReq generation and tobeparsed decryption to restore streaming source retrieval after API changes.
  • Backend Sync: Synchronized the main Yorumi backend scraper to utilize the CLI's aaReq handshake mechanism.

v2.1.5

Dynamic token and payload decryption fixes.

Fixed

  • AllAnime Scraper: Updated AES-GCM token generator to dynamically scrape keys from SvelteKit chunks to avoid static key rot.
  • Payload Decryption: Removed erroneous AES-GCM decryption for tobeparsed responses; AllAnime continues to return AES-256-CTR encoded responses with an appended garbage tag that is now safely discarded.

v2.1.4

Scraper decryption patch update.

Fixed

  • AllAnime Scraper: Updated AES-GCM decryption and request signature logic to handle AllAnime's new extensions.aaReq requirements and Cloudflare patches.

v2.1.0

Search and playback reliability update for backend-free CLI use.

Added

  • Added local backend search fallback to direct AllAnime GraphQL results when localhost:3001 is unavailable.

Changed

  • Prioritized exact and near-exact title matches above specials, movies, and recap entries so searches like naruto pick the main series first.

Fixed

  • Fixed No anime found results when the local Yorumi backend is not running.
  • Fixed non-HLS iframe/player URLs by resolving them through yt-dlp before launching mpv.
  • Restored direct AllAnime stream fallback so episode playback can resolve without the Yorumi backend.

v2.0.0

Major release featuring AllAnime native API scraping and direct mpv playback resolution.

Added

  • Integrated direct AllAnime (AllManga) GraphQL API scraper fallback, bypassing Cloudflare walls on search requests.
  • Added native decryption logic for AllAnime's AES-256-CTR encoded stream responses.
  • Added automatic --referrer injection and custom HTTP header configurations for Direct streams in mpv.

Changed

  • Architectural Refactor & Code Modularization: Deconstructed the monolithic CLI architecture into clean, decoupled, single-responsibility modules (src/allanime.ts, src/gogoanime.ts, src/player.ts, src/downloader.ts, src/scraper.ts, src/system.ts, src/cliUtils.ts, src/constants.ts, src/types.ts, src/utils.ts).

Fixed

  • Fixed mpv playback crashes (Exit Code 2) on direct HLS streams by bypassing youtube-dl / yt-dlp checks with --no-ytdl.
  • Fixed the episode list overflow bug (e.g. Naruto showing 1000+ episodes) by strictly scoping the sidebar parser to the target anime slug.

v1.6.8

Audio preference selection update.

Added

  • Added --sub and --dub flags to explicitly prefer SUBbed or DUBbed audio streams when resolving episodes.

v1.6.7

Features and stability updates.

Added

  • Added --latest flag to fetch the top recently updated anime directly from AllManga.
  • Added --popular flag to fetch trending anime from Animetsu and resolve them locally.

v0.1.4

Standalone API resolution update to bypass deployed backend.

Added

  • Integrated native GraphQL queries to AllManga's API directly within the CLI.
  • Implemented built-in AES-256-CTR decryption for AllManga's encrypted stream payloads (tobeparsed).
  • Added custom hex decoding and automatic proxy redirect resolution to extract final playback URLs locally.

Fixed

  • Fixed critical 404 errors caused by relying on stale Vercel backend routes. The CLI is now fully self-sufficient and does not require the Yorumi backend to resolve streams.

v0.1.3

Chocolatey package publishing fix.

Added

  • Added yorumi-cli --version and yorumi-cli -v to show the installed CLI version.

Fixed

  • Updated the Chocolatey package installer to download the Windows install script directly, avoiding stale Chocolatey web-file length validation.
  • Bumped Chocolatey package metadata for a clean v0.1.3 package publish.

Improved

  • Updated Windows package-manager docs to show the required Scoop bucket setup command.

v0.1.2

Package-manager installation hardening release.

Added

  • Added installer support for installing from a specific Git ref or release tag.

Fixed

  • Fixed the Scoop manifest so the command shim is created before Scoop links it.
  • Fixed Scoop dependency installation by running npm from the extracted app directory instead of using the Scoop current symlink as a prefix.
  • Made Scoop installs fail loudly if npm dependency installation fails instead of reporting a partial successful install.
  • Pinned the Chocolatey package install flow to the matching release tag instead of the moving main branch.

Improved

  • Documented local Scoop manifest testing and custom bucket publishing steps.
  • Updated package-manager templates for the v0.1.2 release.

v0.1.1

Packaging release for first package-manager submissions.

Added

  • Added MIT license metadata for package-manager review.
  • Added Scoop manifest template for installing from the GitHub release zip.
  • Added Chocolatey package scripts that run the official Windows installer.

Known Limitations

  • Documented the Winget blocker and required silent installer or portable executable artifact.

v0.1.0

First public release of Yorumi CLI.

Added

  • Added terminal anime search and playback through mpv.
  • Added episode selection, direct episode playback, and range playback.
  • Added download mode with MP4 output and AAC audio conversion.
  • Added Windows PowerShell installer with private Node.js, fzf, mpv, and ffmpeg setup paths.
  • Added macOS and Linux install script for Git, Node.js, npm, mpv, ffmpeg, and fzf based workflows.
  • Added documentation site with install, usage, command reference, troubleshooting, and changelog pages.