logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ani-cli - watch anime from the commandline

Bugs

       Use the GitHub issue tracker: https://github.com/pystardust/ani-cli/issues

Description

       A shell script to browse and search anime from the command-line.
       This tool scrapes the site allanime.
       ani-cli  without  options defaults to iina on macOS, flatpak mpv on Steamdeck, mpv apk on android, vlc on
       iOS and mpv media player everywhere else.

Environment Variables

       ani-cli v4 uses environment variables to control unstable/untested and  niche  features  in  addition  to
       everything  that  has  an option. Command-line options take precedence over env vars. Note that these are
       all subject to change.

       ANI_CLI_MODE
              Controls the scraped media's mode, valid options are sub or dub. Default is sub.

       ANI_CLI_DOWNLOAD_DIR
              Controls the directory where files are downloaded. Default is the current dir.

       ANI_CLI_QUALITY
              Controls the scraped media's quality, check allanime for  valid  options  or  set  to  worst/best.
              Default is best.

       ANI_CLI_PLAYER
              Sets the player ani-cli uses. Can be debug (print links), download (equivalent to -d), android_mpv
              (apk and am start), android_vlc (apk and am start), flatpak_mpv (for flatpak), catt (for streaming
              to tv), or any player that can play urls. For defaults see working without arguments.

       ANI_CLI_EXTERNAL_MENU
              Controls the frontend of ani-cli. Can be 0 (uses fzf) or 1 (uses rofi dmenu). Default is 0.

       ANI_CLI_LOG_EPISODE
              Controls the logging feature for playback. Can be 1(logs) or 0(doesn't log). Default is 1.

       ANI_CLI_MULTI_SELECTION
              Controls the multi flag for the chosen frontend. Default is -m for fzf and --multi-select for rofi
              dmenu.

       ANI_CLI_NON_INTERACTIVE
              Enabled  by default if both -e and -S are given. Disables fzf dependency check. Also disables some
              debug information if running with ANI_CLI_PLAYER="debug"

       ANI_CLI_HIST_DIR
              Controls the directory ani-cli uses for storing history. A /ani-cli subfolder is created there for
              the histfile if doesn't exists. Default is $XDG_STATE_HOME if set, $HOME/.local/state if not.

       ANI_CLI_DEFAULT_SOURCE
              Controls the default source. Valid is history (equivalent to -c), everything  else  means  search.
              Default is search.

       ANI_CLI_SKIP_INTRO
              Controls  if  ani-skip  is  used  to  skip  intros (works with mpv only). Can be 0 (disabled) or 1
              (enabled). Default is 0.

       ANI_CLI_NO_DETACH
              Controls if mpv is detached from the main process for playback, which can be useful for  use  with
              terminal  renderers  such  as  kitty.  (works  with mpv only). Can be 0 (disabled) or 1 (enabled).
              Default is 0.

       ANI_CLI_SKIP_TITLE
              Overrides the anime title to query for skip times. Can be any  string  value.  Default  is  empty,
              resolving to the anime title as given by ani-cli.

Episode Selection

       Multiple  episodes  can  be  chosen  using fzf (or alternative frontend's) multi-selection mode. For this
       refer to their instructions.

Name

       ani-cli - watch anime from the commandline

Options

-e|--episode|-r|--range<episode>
              Specify the episode numbers to watch. If range is specified it should be quoted or separated by  a
              non-numeric character (eg. -).

       -c|--continue
              Continue watching anime from history.

       -d|--download
              Download episode.

       -D|--delete
              Delete history.

       -l|--logview
              Show logs.

       -h|--help
              Show summary of options.

       -q|--quality<best|worst|360|480|720|1080>
              Set the video quality. Default quality is best.

       -s|--syncplay
              Watch anime together with friends, using Syncplay (works with mpv only).

       -U|--update
              Fetch update from github.

       -v|--vlc
              Use VLC as the media player.

       -S|--select-nth<index>
              Selects nth entry.

       -N|--nextep-countdown
              Prints a countdown to the next episode as the last episode in the list. If in history is after the
              current episode.

       --dub  Play the dubbed version. Without this flag, it'll always play the subbed version.

       --rofi Use rofi instead of fzf for the interactive menu

       --skip Use ani-skip to skip the intro of the episode (mpv only)

       --no-detach
              Don't  detach  the  player  (useful for in-terminal playback, mpv only) --exit-after-play Exit the
              player, and return the player exit code (useful for non interactive scenarios, works only if --no-
              detach is used, mpv only)

       --skip-title<title>
              Specify the title to use for ani-skip

Synopsis

ani-cli [OPTIONS]

See Also