A feature-rich, beautiful, and efficient terminal-based BitTorrent client built with Python, leveraging rich for stunning console UI and libtorrent for robust torrenting capabilities.
- Intuitive Command-Line Interface: Navigate and manage your torrents directly from your terminal.
- Beautiful Console Output: Powered by
rich, enjoy vibrant colors, progress bars, and structured information. - Robust Torrent Engine: Utilizes
libtorrentfor reliable and high-performance torrent downloads and uploads. - Lightweight & Fast: Designed for minimal resource consumption, ideal for servers and low-power devices.
- Configurable: Customize torrcli behavior via a simple configuration file.
- Cross-Platform (Python compatible): Run torrcli on any system where Python and its dependencies are supported.
torrcli offers flexible installation methods to suit your preference.
Before installing, ensure you have Python 3.8 or newer installed on your system.
For Arch Linux users, torrcli is available in the AUR. This is the recommended method for easy installation and updates.
You can use any AUR helper like yay, paru, etc.
yay -S torrclipipx is required before installing so use apt/pacman/rpm to install pipx before continuing
If you're not using Arch or prefer manual installation, follow these steps:
- Clone the Repository:
git clone https://github.com/aayushkdev/torrcli.git
cd torrcli- Run the Installer Script:
./install.sh- To Uninstall:
./uninstall.shtorrcli uses a configuration file to allow you to customize its behavior, such as download directories, port settings, and more.
The default configuration file is located at ~/.config/torrcli/config.conf.
Detailed commands:
-
torrcli add <source> [--save/-s SAVE_PATH] [--stream/-t]Downloads a torrent from the specified source.-
<source>: Can be a magnet link (e.g.,"magnet:?xt=urn:btih:...") or a path to a.torrentfile (e.g.,/path/to/your/file.torrent). -
--save/-s SAVE_PATH: (Optional) Specify the directory where the downloaded files will be saved. If not provided, thedefault_save_pathfrom yourconfig.confwill be used. -
--stream/-t: (Optional) Specify if the files will be downloaded sequentially
-
-
torrcli search <torrent-name> [--save/-s SAVE_PATH] [--stream/-t]Searches for a torrent from various sources and lets you interactively select a torrent to download. It has all the same flags astorrcli add -
torrcli lsLists all active torrents, showing their status, progress, and index. -
torrcli info <index>Shows detailed information about a specific torrent. -
torrcli pause <index>Pauses a running torrent. -
torrcli resume <index>Resumes a paused torrent. -
torrcli rm <index>Removes a torrent from the list. This does not delete the downloaded files by default.
(Note: Replace `<index>` with the actual numerical index displayed by `torrcli list`)