Skip to content

Configuration and History

Charlie edited this page Jul 28, 2026 · 4 revisions

Configuration and History

ani-cli-rs uses command-line options for one-off choices and environment variables for defaults. It does not currently maintain a general application configuration file.

Environment variables

Variable Purpose
ANI_CLI_MODE Default translation mode: sub or dub
ANI_CLI_PLAYER Desktop player executable, or Android activity-launcher path in Termux
ANI_CLI_DOWNLOAD_DIR Compatibility-mode download directory
ANI_CLI_QUALITY Default quality (best, worst, or resolution)
ANI_CLI_HIST_DIR Directory containing the ani-hsts history file
ANI_CLI_ALLOW_ADULT Enable adult search results
ANI_CLI_MULTI_SELECTION Open episode multi-select directly
ANI_CLI_NO_DETACH Wait for the player
ANI_CLI_EXIT_AFTER_PLAY Propagate attached player failures
ANI_CLI_RS_INSTALL_DIR Installer/uninstaller target directory
ANI_CLI_RS_PROFILE Unix profile modified by install/uninstall scripts

Boolean variables recognize 1, true, or yes where consumed as application booleans.

PowerShell examples

Current process only:

$env:ANI_CLI_QUALITY = "720p"
$env:ANI_CLI_DOWNLOAD_DIR = "$HOME\Downloads\Anime"
ani-cli-rs "title"

Persistent user variable:

[Environment]::SetEnvironmentVariable("ANI_CLI_QUALITY", "720p", "User")

Open a new terminal after changing persistent variables.

Unix shell examples

One command:

ANI_CLI_QUALITY=720p ani-cli-rs "title"

Persistent shell configuration:

export ANI_CLI_QUALITY=720p
export ANI_CLI_DOWNLOAD_DIR="$HOME/Downloads/Anime"

Place exports in the profile loaded by your shell.

History format

The ani-hsts file uses the Bash ani-cli-compatible tab-separated format:

EPISODE<TAB>SHOW_ID<TAB>TITLE

Example:

4	SyR2K6bGYfKSE6YMm	Example Anime

One entry is retained per show ID. Successful playback/download updates the current episode through an atomic temporary-file rewrite.

History location

For predictable sharing with Bash ani-cli, set:

$env:ANI_CLI_HIST_DIR = "$HOME\.local\state\ani-cli"
export ANI_CLI_HIST_DIR="$HOME/.local/state/ani-cli"

ani-cli-rs appends ani-hsts to that directory. Without the variable, the directories crate chooses the platform-native application state directory, falling back to local application data when the OS has no dedicated state directory.

Continue and clear

ani-cli-rs --continue
ani-cli-rs --delete

--continue lists entries that have a published next episode. --delete rewrites the history as empty; it does not delete downloaded media.

Provider cache

Successful catalog and series responses are cached in memory for five minutes. The cache is process-local and contains no media files or persistent provider credentials.

Logging

$env:RUST_LOG = "warn"
ani-cli-rs "title"
RUST_LOG=debug ani-cli-rs "title"

Debug logs can expose provider names, response categories, and local executable paths. The application redacts complete signed provider URLs in routine scraper diagnostics, but review logs before sharing them publicly.

Clone this wiki locally