@fampep/kittycli
v2.6.1
Published
Anime aggregator terminal client with multi-provider support
Maintainers
Readme
KittyCLI
Terminal-based anime streaming and management client with multi-provider search, streaming, downloads, and watchlist tracking.
Installation
npm install -g @fampep/kittycliThen run:
kittycliRequirements
Node.js 18+
mpv - for streaming
- Windows:
choco install mpvorwinget install mpv.net - macOS:
brew install mpv - Linux:
apt install mpv
- Windows:
ffmpeg (optional) - for HLS downloads
- Windows:
choco install ffmpegorwinget install ffmpeg - macOS:
brew install ffmpeg - Linux:
apt install ffmpeg
- Windows:
Features
- Multi-Provider Search - Search 15+ anime providers simultaneously
- Streaming - Watch with quality selection and automatic subtitles
- Downloads - MKV/MP4 with resumable progress and batch processing
- Watchlist - Track progress and resume positions automatically
- Binge Mode - Auto-play next episode with countdown
- AniList Integration - Episode titles, metadata, and airing schedules
- Discord Rich Presence - Show what you're watching to friends
- Subtitle Management - Auto-download and organize by series
Quick Start
- Launch the app:
kittycli - Select "Search anime" from the menu
- Find your series and select a provider
- Choose your episode and press Enter to stream
- Progress saves automatically
Keyboard Controls
| Key | Action | |-----|--------| | UP/DOWN | Navigate menu | | ENTER | Select item | | 1-9 | Quick jump | | HOME/END | Top/bottom | | PAGE UP/DOWN | Next page | | Q/ESC | Go back | | ? | Help | | CTRL+C | Exit |
Binge Mode
| Key | Action | |-----|--------| | Y/ENTER | Play next episode | | N | Stop | | A | Toggle SUB/DUB |
Configuration
Settings stored at: ~/.kittycli/settings.json
Key options:
defaultAudio- sub or dubdownloadFormat- mkv or mp4playbackSpeed- 0.5x to 3.0xbingeCountdownSeconds- delay between episodesresumePlayback- auto-resume from last positiondiscordEnabled- show Discord presencepreferredQuality- auto, 1080p, 720p, etc
Data Directory
~/.kittycli/
├── watchlist.json # Your anime list and progress
├── search-history.json # Previous searches
├── settings.json # Your configuration
├── progress.json # Episode resume points
├── subs/ # Downloaded subtitles
└── debug.log # Debug logsAniList ID Support
The app uses AniList IDs for direct, instant streaming across all 19 supported providers.
When available, the CLI automatically:
- Uses the
/mapendpoint to resolve AniList ID to provider ID - Calls
/stream-directfor one-call streaming (fastest) - Falls back to traditional search/episodes/servers flow if direct streaming unavailable
Supported providers with direct AniList streaming: Miruro, MKissa, ReAnime, KickAssAnime, Animo, AniZone, Anikoto, AnimeGG, Senshi, Animetsu, AnimeOnsen, AllAnime, Nyanime, AniDao, Animeverse, AnimeHeaven, AniNeko, AnimeParadise, KaaLt, AniDB
Troubleshooting
Video won't play
- Ensure mpv is installed and in PATH
- Try a different provider
- Add to settings:
"mpvArgs": "--demuxer-lavf-o=analyzeduration=30000000,probesize=100000000,fflags=+discardcorrupt"
Downloads fail
- Check disk space
- Verify ffmpeg is installed
- Check network connection
Provider blocked
- Try different provider or region
- Check internet connection
- Try without VPN
Advanced
Enable debug logging:
DEBUG=true kittycliCustom API endpoint in ~/.kittycli/settings.json:
{
"apiBaseUrl": "https://your-backend.com"
}Default: https://kittyapi.buzz
License
GPL-3.0
For more info: https://github.com/fampep/Kitty-cli
