The largest Awesome List of CLI/TUI programs
This repository - to the best of my knowledge - contains the largest collection of CLI/TUI tools available in the form of awesome list.
To contribute, see the contribution section. As a follower of the 0-inbox approach for emails, I strive to maintain a 0-length list of pull requests for new contributions.
Some links are available to related resources.
Summary
- Apps/tools: 1573
- Categories: 77
Index
- AI / ChatGPT (25), Anki, decks and flashcards (7)
- Backup (16)
- Calculators (16), Chat and instant messaging (32), Clean up of files and directories (12), Co-pilot (10), Command launchers (21), Commands cheatsheet and snippets (22), Containerization and virtualization (21), Conversion (14)
- Data management (17), Data management - JSON/YAML/etc. (43), Data management - Tabular data (28), Data transfer (42), DevOps (8), Diff (10), Directory changers (alternatives to cd) (21), Disk usage analyzers (12)
- Editors (27), Email (17)
- File and file system handling (21), File deletion and trash bin (alternatives to rm) (13), File explorer and tree visualization (11), File finding (alternatives to find) (8), File listing (alternatives to ls) (9), File manager (21), File renamers (14), File systems (4), File watching for changes (7), Financial tools (15), Font management (4), Funny tools (35), Fuzzy finders and option pickers (14)
- Games (53), Git and accessories (55), Graphics (40)
- History management (4)
- Markdown (11)
- Networking (74), Note taking (24)
- Office tools (15), Online search and resources (18), Organizers and calendars (22)
- Package managers (20), Password managers (21), Pastebin (3), Process viewers and monitoring (alternatives to top) (26), Productivity (10), Program templates and boilerplate (12), Programming (41), Prompts (15)
- RSS (10), Religion (4)
- Science (20), Screen recorder (10), Screen savers (4), Security and encryption (33), Shells (25), Sound and music (50), System monitoring (31), System tools (30)
- Terminals (22), Text processing (36), Text search (alternatives to grep) (11), Text search and replace (alternatives to sed) (6), Time trackers (20), Todo managers (34), Torrent (8), Typing test and practice (14)
- Utilities (40)
- Versioning (9), Video (12), Viewers (28)
- Web browser (18), Web development (28), Writing (9)
AI / ChatGPT
Interfaces and front-ends to GPT engines and other tools powered by artificial intelligence and Natural Language Processing.
- AI - A command-line ChatGPT client in BASH with conversation/completion support.
- AIChat - Using ChatGPT/GPT-3.5/GPT-4 in the terminal.
- ata - Ask the Terminal Anything: OpenAI GPT in the terminal.
- cai - The fastest CLI tool for prompting LLMs. Including support for prompting several LLMs at once!
- cha - A simple CLI chat tool to easily interface with OpenAI's models.
- Chatblade - Chatblade is a versatile command-line interface (CLI) tool designed to interact with OpenAI's ChatGPT.
- chatgpt - Simple command line integration to ChatGPT.
- ChatGPTerminator - GPTerminator provides a convenient way to interact with OpenAI's chat completion and image generation API's using your command line interface.
- clai - Command Line AI is a command line integration for openai. It's setup to help you learn new shell commands and construct more complex commands.
- clevercli - ChatGPT powered CLI utilities. Easily add new prompt types.
- cligpt - ChatGPT but in the terminal.
- Elia - A terminal ChatGPT client built with Textual.
- gemini-cli - A command-line interface (CLI) for Google Gemini.
- gpterm - Yet another command-line ChatGPT frontend written in Rust.
- GPTparser - Use GPTparser with your OpenAI API to scrape & parse files into structured JSON files.
- HAL 2023 - Inspired by the infamous HAL9000, it is a simple script to chat with OpenAI's ChatGPT.
- ht - A shell command that answers your questions about shell commands using OpenAI GPT.
- Instrukt - A integrated AI environment in the terminal. Build, test and instruct agents.
- llm-term - Chat with OpenAI's GPT models directly from the command line.
- Mods! - AI for the command line, built for pipelines.
- ollama - Get up and running with large language models locally.
- osh - Ollama Shell Helper (osh): English to Unix-like Shell Commands translation using Local LLMs with Ollama.
- parllama - TUI designed for easy management and use of Ollama based LLMs.
- safespace - Your local AI counselor. LLM app that runs offline from a single binary.
- Sengpt - ChatGPT in your terminal, no OpenAI API key required.
Anki, decks and flashcards
Manage decks of flashcards and Anki decks.
- flash-tui - Flashcard app for the terminal.
- hardv - A CLI flashcard app for UNIX-compatible systems, conforming to the UNIX philosophy.
- mdfc - Easily create and study flashcards using a Markdown file with spaced repetition.
- py_flashcards - Text-only CLI flashcards parsed from Markdown file.
- speki - Manage flashcards in the terminal similar to anki.
- ToRRential Card processor - A command-line program to add a card to Anki using AnkiConnect API.
- tui-deck - A TUI frontend for Nextcloud Deck app.
Backup
Tools to manage the backup of files and directories.
- autorestic - A wrapper around the restic backup tool, with the goal of simplifying the setup and usage through the use of config files.
- borg - Encrypted backups with a clean and simple interface, easy to use and set up, possibility to mount the backup archive with FUSE and inspect it as a regular file system.
- bup - Very efficient backup system based on the git packfile format, providing fast incremental saves and global deduplication.
- bupstash - Easy and efficient encrypted backups.
- Crestic - Configurable Restic Wrapper.
- duplicity - Creates GPG encrypted, compressed backups; client-side encryption allows uploading the backup onto untrusted servers.
- Duply - Simplifies the use of duplicity by keeping clean configuration files to automate the backup.
- gwbackupy - Open source Google Workspace™ backup solution.
- Kopia - Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression, and data deduplication. CLI and GUI included.
- paperbackup - Create a PDF with barcodes to backup text files on paper.
- rdiff-backup - Reverse differential backup tool, over a network or locally, using the same protocol as rsync to transfer and store data.
- Restic - A backup program that is fast, efficient, and secure.
- shallow-backup - Git integrated backup tool.
- thread-safe - Keep your favorite Twitter threads safe with a local copy.
- Zaloha.sh - Shellscript for synchronization of files and directories.
- zbackup - A globally-deduplicating backup tool, based on the ideas found in rsync.
Calculators
Calculators for mathematical operations among numbers, dates, base conversions, etc..
- AngouriMathCLI - CLI calculator based on AngouriMath.
- bcal - Byte CALculator - A REPL CLI utility for storage expression evaluation, SI/IEC conversion, byte address calculation, base conversion and LBA/CHS calculation.
- Bitwise - Base conversion and bit manipulator in ncurses.
- CalcPy - Terminal calculator and advanced math solver using Python, IPython and SymPy.
- DateTimeMate - Golang package and CLI to compute the difference between date, time or duration.
- genius - Genius calculator is a general purpose calculator and mathematics tool with many features.
- HIP35 - HP-35 RPN calculator emulator in C++17 with a terminal user interface.
- kalc - A complex numbers, 2D/3D graphing, arbitrary precision, vector, CLI calculator with real-time output.
- kalker - Calculator that supports math-like syntax with user-defined variables, functions, derivation, integration, and complex numbers.
- maxima - Maxima is a manipulation system for symbolic and numerical expressions, including differentiation, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear equations, polynomials, sets, lists, vectors, matrices and tensors.
- mdlt - A lightweight command line tool that lets you perform arithmetic and symbolic math operations right from the terminal.
- Nota - Terminal calculator with rich notation.
- Numbat - Numbat is a calculator for scientific computations with first class support for physical dimensions and units.
- pdd - Tiny date, time diff calculator.
- Programmer calculator - Terminal calculator made for programmers working with multiple number representations, sizes, and overall close to the bits.
- Qalculate - Multi-purpose calculator with customizable functions, units, arbitrary precision, plotting (it includes a GUI).
Chat and instant messaging
Clients for chat and other instant messaging protocols, e.g., IRC, Discord, Mattermost, Matrix, Slack, Telegram, Reddit.
- devzat - Custom SSH server that takes you to a chat instead of a shell prompt.
- Discordo - A lightweight, secure, and feature-rich Discord terminal client.
- finch - IM program supporting many protocols, including Yahoo!, AIM, IRC, or WLM; comes with the
Pidgin
project. - GNU Freetalk - A console based chat client for Jabber and other XMPP servers. It has context-sensitive autocompletion for buddy names, commands, and even ordinary English words.
- gomuks - A terminal based Matrix client written in Go.
- irssi - The most popular IRC client for the command-line; a flexible program, with many options and supporting many protocols.
- kirc - A tiny IRC client written in POSIX C99.
- matrix-commander - Simple but convenient CLI-based Matrix client app for sending and receiving.
- matrixcli - A minimal command line matrix client.
- matterhorn - A terminal client for the Mattermost chat system.
- MCABBER - A small XMPP (Jabber) console client including features such as SASL/SSL/TLS support, MUC (Multi-User Chat) support, history logging, command completion, OpenPGP encryption and more.
- PingMe - Sends messages or alerts to multiple messaging platforms & email, including Slack, Telegram, Mattermost, WeChat, and others.
- Poezio - Poezio is a free console XMPP client. It lets you connect very easily (no account creation needed) to the network and join various chatrooms. Many commands are identical to common IRC clients. Configuration can be made in a configuration file or directly from the client.
- Profanity - Profanity is a console based XMPP client written in C using ncurses and libstrophe, inspired by Irssi.
- RainbowStream - Twitter client for the terminal allows almost all the operations that can be done from GUI and Web clients.
- scli - A simple terminal user interface for signal messenger.
- Servitor - A command-line