toolleeo
awesome-cli-apps-in-a-csv
Python

The largest Awesome Curated list of command line programs (CLI/TUI) with source data organized into CSV files

Last updated Jul 8, 2026
2.5k
Stars
222
Forks
99
Issues
+7
Stars/day
Attention Score
96
Language breakdown
No language data available.
β–Έ Files click to expand
README

Awesome Command Line (CLI/TUI) Programs Awesome

This repository - to the best of my knowledge - contains the largest collection of command line (CLI/TUI) tools available in the form of awesome list. With source information maintained in a handy CSV file. To contribute, see the contribution section. Read the instructions before rushing at changing the README file: you must edit the CSV files, not the README! Some links are available to related resources.

Summary:

  • Apps/tools: 2230
  • Categories: 81

Contents

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.
  • Alibaba-CLI-Scraper - Create your own Alibaba dataset and interact with it in plain English.
  • AskOra - Unified Python CLI interacting with multiple AI providers sending prompts and getting structured AI responses, all from your terminal.
  • ata - Ask the Terminal Anything: OpenAI GPT in the terminal.
  • Browser CLI - AI agent browser automation tool.
  • cai - The fastest CLI tool for prompting LLMs. Including support for prompting several LLMs at once!
  • CarthageAI - Multi-provider AI terminal assistant for developers and AI enthusiasts.
  • cha - A simple CLI chat tool to easily interface with OpenAI's models.
  • chat.sh - Pipeable LLM wrapper with code execution (OpenRouter).
  • 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.
  • codepack v4 - CLI tool to extract folder structure and file contents with advanced minification for AI processing.
  • Context Extractor - Command line tool that aggregates file and directory contents into the clipboard, for providing project context to AI chatbots in the browser like ChatGPT and Perplexity.
  • egit - A.I. tools and workflows for Git.
  • Elia - A terminal ChatGPT client built with Textual.
  • Elroy - AI personal assistant that remembers and sets goals.
  • fabric - An open-source framework for augmenting humans using AI, providing a modular framework for solving specific problems using a crowdsourced set of AI prompts that can be used anywhere.
  • Ferrules - Modern, fast, document parser written in Rust designed to generate LLM-ready documents.
  • Gemini CLI - It provides lightweight access to Gemini from the terminal.
  • gemini-cli - A command-line interface (CLI) for Google Gemini.
  • genie - Personal assistant for the CLI that helps in tasks such as running commands, generating images and music, summarizing comments.
  • 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.
  • hns - A privacy-focused open-source command-line tool for on-device speech-to-text. It records your voice, transcribes it completely locally using faster-whisper, and automatically copies the text to clipboard for immediate use in any application.
  • Instrukt - A integrated AI environment in the terminal. Build, test and instruct agents.
  • kwaak - Run a team of autonomous AI agents on your code.
  • LamaCLI - AI assistante in both interactive mode and command-line mode in the terminal.
  • leettools - AI Search tools.
  • llm-term - Chat with OpenAI's GPT models directly from the command line.
  • mcp-manager - CLI tool for managing Model Context Protocol (MCP) servers in one place & using them across them different clients.
  • Mods! - AI for the command line, built for pipelines.
  • ollama - Get up and running with large language models locally.
  • OrChat - A powerful, feature-rich command-line interface for interacting with AI models through OpenRouter.
  • 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.
  • savvy-cli - Automatically capture and surface your team's tribal knowledge.
  • tenere - A TUI for LLMs (ChatGPT, llamacpp, ollama) written in Rust.
  • termite - Generative UI in your terminal.
  • unibear - A lean TUI AI assistant.
  • vibebox - Per-project micro-VM sandbox for running coding agents on macOS with fast re-entry and explicit mounts.
  • wtg - What The GPT (wtg), a CLI to chat with your program logs.

AI terminal command generator

Generates or explains commands for the command line using AI.

  • Blitzdenk - A minimal multi provider coding agent and personal AI TUI; Similar to tools like opencode or claudecode; Written in Rust.
  • c0admin - A terminal-based AI assistant for Linux sysadmins. Uses the Gemini API.
  • cmd-ai - Natural language shell command generator and executor powered by AI.
  • ht - A shell command that answers your questions about shell commands using OpenAI GPT.
  • LazyShell - AI CLI tool that generates and executes shell commands using AI.
  • llm-term - A Rust-based CLI tool that generates and executes terminal commands using OpenAI's language models.
  • Octomind - Sessions-based AI coding agent with extensible architecture, smart codebase understanding and no AI provider lock-in.
  • Ollamacode CLI - The program creates a Python script from natural language and execute it automatically.
  • OpenCode - AI coding agent, built for the terminal.
  • osh - Ollama Shell Helper (osh): English to Unix-like Shell Commands translation using Local LLMs with Ollama.
  • py-ai-shell - AI-powered shell for command line users.
  • reTermAI - Smart command assistant for your terminal, using LLM.
  • Spren - AI-powered terminal assistant that converts natural language to shell commands. Supports PowerShell, Bash, and CMD with intelligent command suggestions and safety checks.
  • terminal-command - A Python-based CLI tool for generating, and optionally executing, shell commands from natural language.
  • wut - An terminal assistant for the hopelessly confused; it explains the meaning of the output from the last command.
  • zev - A simple CLI tool to generate terminal commands using AI.

Animation

Generate or display animated graphics and effects.

  • aclock - Ascii analog clock for text console displays and terminals and terminal emulators.
  • animatrix - C program that will create some basic animation of ascii-art loaded from a txt file, while rendering the matrix effect in the terminal window.
  • ascii-matrix - This script written in the C language, will render the matrix effect in the terminal, while rendering ASCII art loaded from a txt file, at the center of the terminal window.
  • ascii-movie - Allows to play the ASCII art Star War movie locally or it can open a connection to play it over SSH or telnet.
  • asciicquarium - Enjoy the mysteries of the sea from the safety of your own terminal!
  • bb - The portable BB demo of AAlib, with fixes for vax etc.
  • Binary Clock - Displays a clock where numbers are represented with blue and gray dots with binary encoding.
  • c-pipes - Program written in the C language that will render random coloured zigzag lines in the terminal, while the font, speed, density and number of lines are fully costumizable. Each line stops once it reaches the edge of the window, only for a new line to begin.
  • c-squares - Program written in C that will render random coloured rectangulars in the terminal, while the font, speed, density, color, ratio and number of the shapes drawn are fully costumizable.
  • cbonsai - A bonsai tree generator, written in C using ncurses. It intelligently creates, colors, and positions a bonsai tree.
  • ccube - Rotating 3d cube in terminal; written in C.
  • cellscape - TUI simulator for eight classic cellular automata.
  • cgol - Conway's Game of Life in C.
  • chaftrix - C program that will render the matrix effect in the terminal window in the background, while rendering an image in the foreground, allowing animation of this image in one or two dimensions.
  • cli-fireplace - Shows digital fireplace.
  • cli-mandelbrot - A CLI for traversing the Mandelbrot fractal.
  • cmatrix - ncurses program that display the scrolling lines found in the movie The matrix.
  • console-fun - Some console stuff to have a fun and watch some animations with texts, figures, etc.
  • cpond - The program creates procedurally animated fish to swim around your terminal.
  • ctree - A Christmas tree right from your terminal.
  • firew0rks - Fireworks in your terminal.
  • gostty - Animation of a ghost for the terminal.
  • LundukeHoliday - A simple Bash script that shows some animated, ASCII holiday decorations in your shell.
  • Maze Solver - Generate, display and solve mazes in an animated way in the terminal.
  • neo - Recreates the digital rain effect from "The Matrix". Streams of random characters will endlessly scroll down your terminal screen.
  • No More Secrets - A command line tool that recreates the famous data decryption effect seen in the 1992 movie Sneakers.
  • nyancat - Nyancat in your terminal, rendered through ANSI escape sequences.
  • ora - Elegant terminal spinner.
  • paclear - paclear is a clear command with pacman animation.
  • PyBonsai - Generate procedural ASCII art trees in the terminal.
  • rich_life - Conway's Game of Life and Langton's Ant.
  • rusty-rain - A cross platform matrix rain made with Rust.
  • sha256-animation - Animation of the SHA-256 hash function in your terminal.
  • StarWars vision - See Star Wars in ASCII with `telnet towel.blinkenlights.nl (server seems down recently - I leave the link in the hope that it will be resumed in the future).
  • Steam Locomotive - A steam locomotive traverses the screen from right to left if sl is typed instead of ls.
  • terminal-art - Art made in the terminal: rotating cube.
  • terminaltexteffects - TerminalTextEffects (TTE) is a terminal visual effects engine, application, and Python library.
  • ternimal - Simulate a life form in the terminal.
  • The Cognitive Sandbox - The project is a local simulation environment that allows individual agents (particles) to interact with and remeber each other across sessions.

<a name="flashcard"></a>Anki, decks and flashcards

Manage decks of flashcards and Anki decks.

  • flash-tui - Flashcard app for the terminal.
  • GoCard - A lightweight file-based spaced repetition system (SRS) that uses plain Markdown files for flashcards. Perfect for developers who prefer text files, Git version control, and keyboard-driven interfaces.
  • 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.
  • revise-tui - A TUI Anki client. Revise is a command-line program used to schedule the review of items using spaced repetition.
  • 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.
  • vocage - Vocage is a minimalistic terminal-based vocabulary-learning tool. It presents flashcards using a spaced-repetition algorithm (e.g. Leitner). Data is stored in a simple plain-text tab-separated values format (TSV).

<a name="backup"></a>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.
  • backhub - Backhub helps maintain backups of multiple GitHub repos as full local mirrors.
  • 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 - Secure, encrypted backups with efficient deduplication, client-side encryption, offline decryption, search-tagged data protection, strong privacy, robust performance on slow networks, memory-safe security against attacks, incremental backups, and minimal RAM usage for production use.
  • 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.
  • qbak - A single-command backup helper for Linux and POSIX systems written in Rust; The program creates timestamped backup copies of files and directories with zero configuration.
  • 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.
  • rsnapshot - A filesystem snapshot utility based on rsync. It manages a rotation schedule when to discard older backup, e.g. from hourly to yearly. The Perl code makes extensive use of hard links and greatly reduces the disk space required.
  • 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.
  • ZnapZend - ZFS centric backup tool creates snapshots and sends them to backup volumes. It manages local and remote copies by thinning them out as time progresses.

<a name="calc"></a>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.
  • ka - A calculator language.
  • 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.
  • numio-cli - Tool to perform time calculations.
  • 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).
  • Speedcrunch - SpeedCrunch is a high-precision scientific calculator featuring a fast, keyboard-driven user interface.
  • TuringTape - Turing machine.
  • Vectro - RPN (reversible polish notation) calculator for your terminal.

<a name="chat"></a>Chat and instant messaging

Clients for chat and other instant messaging protocols, e.g., IRC, Discord, Mattermost, Matrix, Slack, Telegram, Reddit.

  • clichat_app - A end-to-end encrypted chat application.
  • 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.
  • Endcord - Lightweight and feature rich Discord TUI client, running entirely in terminal, built with python and ncurses library.
  • 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.
  • Gomphotherium - A command line Mastodon client, offering a CLI and TUI with usage similar to rainbowstream; Intended to be used at 80 characters width maximum, ideally inside tmux as a sidebar-style program.
  • gomuks - A terminal based Matrix client written in Go.
  • gurk - Signal Messenger client for terminal.
  • iamb - A Matrix client for the terminal that uses Vim keybindings.
  • icy_tools - Icy Term a terminal program for legacy BBS systems, Icy Draw a drawing tool supporting almost all ANSI formats, Icy View a viewer to browse/view Ansi screens, Icy Play a tool that shows icy draw animations on cmd line/bbs.
  • Instagram CLI - Instagram from your terminal; It allows you to use social media more intentionally (chat, stay updated with post and stories without falling into endless brainrot).
  • 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.
  • nchat - Terminal Telegram, WhatsApp and Signal client for LInux and macOS.
  • nostratui - TUI for browsing Nostr posts, written in Rust.
  • nostui - TUI client for Nostr.
  • 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.
  • Sclack - CLI client for Slack.
  • scli - A simple terminal user interface for signal messenger.
  • senpai - A modern terminal IRC client.
  • Servitor - A command-line Fediverse client that doesn’t require a server.
  • sic - sic is an extremely simple IRC client. It consists of less than 250 lines of code.
  • siggo - TUI for signal-cli, written in Go, vim-style ux (quick messages, emoji support, configurable contacts, filter messages).
  • signal-cli - signal-cli provides an unofficial command-line, dbus and JSON-RPC interface for the Signal messenger.
  • slack-term - Slack client for the terminal.
  • ssh-chat - Custom SSH server written in Go. Instead of a shell, you get a chat prompt.
  • Telegram messenger CLI - Command-line interface for Telegram using the readline interface.
  • tgbounce - Simple Telegram Assistant that allows replying to messages, clicking buttons from bots, marking messages as read, logging notable messages, and providing desktop notifications, among other features.
  • tgt - A TUI for Telegram written in Rust.
  • tiny - tiny is an IRC client written in Rust.
  • toot - Mastodon CLI & TUI.
  • toxic - A Tox-based instant messaging and video chat client.
  • ttchat - Twitch chats in the terminal.
  • TUIR - Text-based interface (TUI) to view and interact with Reddit from your terminal; TUIR is a fork of rtv, featuring vim keybindings and themes.
  • tuisky - TUI client for Bluesky.
  • tut - TUI for Mastodon with vim inspired keys.
  • tweets - Decentralized alternative to Twitter that uses git as support tool to manage the tweets.
  • twitch-tui - Twitch chat in the terminal.
  • twterm - A full-featured TUI Twitter client.
  • WeeChat - WeeChat is a fast, light and extensible chat client, with a text-based user interface, designed to be light and extensible: a lightweight core with optional plugins.
  • WeeChat - Fast and light chat client, customizable and extensible with scripts.
  • Weechat-Matrix - A Python script for Weechat that lets Weechat communicate over the Matrix protocol.
  • Zulip Terminal - Official Zulip terminal client with TUI.
  • ZUSE - Minimal IRC client for the terminal written in Go with Bubbletea.

<a name="file-dir-cleanup"></a>Clean up of files and directories

Find/remove duplicate files, automatically organize files, etc..

  • backdown - Safely and ergonomically remove duplicate files
  • classifier - Organize files in your current directory, by classifying them into folders of music, PDFs, images, etc.
  • czkawka - Remove unnecessary files from your computer
  • detox - Easily clean up filenames; it replaces characters like spaces with standard equivalents and UTF-8 or Latin-1 (or CP 1252) characters with more handy ones.
  • Dext - (Directories by Extensions) is a script that moves (or copies) files of the same extension into a folder.
  • doggo - CLI tool that uses AI to help you search for and organize images using natural language queries (instead of remembering filenames, you can describe what you're looking for).
  • duple - Find and remove duplicate files.
  • Duplito - Command-line tool designed to help you identify duplicate file on your system by listing the files in folders like ls does and highlighting what is duplicate.
  • FClones - Efficient Duplicate File Finder.
  • Framed - A CLI tool that simplifies the organization and management of files and directories in a reusable and architectural manner.
  • image-sorter - Terminal user interface for sorting images using key bindings written in Rust; It requires w3m to render the images.
  • inventory - Move files like an old text adventure.
  • mat2 - Metadata removal tool, supporting a wide range of commonly used file formats.
  • NTC - A program that, based on the contents of a folder, create tabs (subfolders inside the selected folder) and displays their contents.
  • organize-cli - Organize your files automatically.
  • rmlint - Recursively scan a directory tree looking for duplicate and broken files; it outputs statistics and save the list of files in JSON format and produces a shell script that can be inspected before running it to delete the desire files.
  • smash - Smash through to find duplicate files super fast by slicing files intelligently.

<a name="copilot"></a>Co-pilot

Programs that use GPT and GPT-like engines to generate commands at the command line or code in general from natural language.

  • aider - aider is AI pair programming in your terminal.
  • aido-cli - Looks another interface to online GPT models to execute command through natural language. Very poor documentation and readme, though.
  • aish - A program that retrieve shell script one-liners, ready to be executed in the terminal.
  • CLI Co-Pilot - CLI tool that uses GPT4 to turn natural language commands into their Bash/ZShell/PowerShell equivalents.
  • codemancer - Code with GPT-4 from your command line.
  • Commandpilot - An assistant which uses ChatGPT to aid in constructing commands for bash.
  • gpt-do - This is a handy-dandy CLI for when you don't know wtf to do; instead of furiously grepping through man pages, simply use do (or ddo if on bash/zsh), and have GPT-3 do all the magic for you.
  • Llama Terminal Completion - Application that interacts with the llama.cpp library to provide virtual assistant capabilities through the command line. It allows you to ask questions and receive intelligent responses, as well as generate Linux commands based on your prompts.
  • Open Interpreter - OpenAI's Code Interpreter in your terminal, running locally.
  • shy-sh - Shell AI copilot.
  • Smart-Shell - Intelligent terminal assistant that converts natural language into executable Bash or Zsh commands using Gemini AI model via google-genai SDK.
  • Yai - Yai (your AI) is an assistant for your terminal, using OpenAI ChatGPT to build and run commands for you.

<a name="launcher"></a>Command launchers

Applications to launch/execute programs, either interactively, automatically, in parallel, etc..

  • climenu - Compact application for creating shell menus with executable entries. Use it to build straightforward static shortcut menus or dynamically generate advanced menus for more complex programs.
  • entr - Event Notify Test Runner - Run an arbitrary command when files change.
  • foy - A simple, light-weight, type-friendly and modern task runner for general purpose.
  • fzs - "Fuzzy selector for your binaries that generalizes the function of launchers like rofi and alfred/raycast using the concept of plugins to group related "actions".
  • Gaze - Runs a command, right after you save a file.
  • hypershell - Spawn shells anywhere. Fully peer-to-peer, authenticated, and end-to-end encrypted.
  • lmt - A program that can be used to run applications with resource limits enforced using cgroupsv2 on Linux; it allows setting limits on CPU usage, memory usage, and the number of cores for a process.
  • Marker - The terminal command palette.
  • mash - A customizable command launcher for storing and executing commands with a tree view of commands and filterable list tagging.
  • menu.sh - A lightweight menu and launcher for text-mode consoles. Menus are described with YAML and sub-menus are supported.
  • mk - Interactive task runner for Makefile or Taskfile.yml, designed to interactively execute make commands. It provides a user-friendly interface to select and run predefined commands, making it easier to manage and execute build tasks.
  • mprocs - mprocs runs multiple commands in parallel and shows output of each command separately.
  • Mxflow-cli - A modern, general purpose CLI task runner with human-readable YAML config file.
  • paneru - Launcher panel from the terminal.
  • parallel - A shell tool from GNU for executing jobs in parallel using one or more computers, it can split the input and pipe it into commands in parallel.
  • process-compose - TUI for running apps and processes.
  • procmux - A TUI utility for running multiple commands in parallel in easily switchable terminals.
  • pueue - Pueue is a command-line task management tool for sequential and parallel execution of long-running tasks.
  • rofi - A window switcher, application launcher and dmenu replacement.
  • sake - A command runner for local and remote hosts. You define servers and tasks in sake.yaml file and then run the tasks on the servers.
  • shell2http - Executing shell commands via HTTP server.
  • Steam TUI - A simple TUI client for steamcmd, allows for the graphical launching, updating, and downloading of steam games through a simple terminal client.
  • sunbeam - General purpose command-line launcher that defines UIs composed of a succession of views from simple scripts written in any language; a mix between an application launcher like raycast or rofi and a fuzzy-finder like fzf or telescope.
  • Sway-Talisman - Terminal application launcher in scratchpad, minimalist and native.
  • Task - A task runner / simpler Make alternative written in Go.
  • task-spooler - A Unix batch system that can be used to add the Linux commands to the queue and execute them one after the other in numerical order (ascending order, to be precise). This can be very useful when you have to run a lot of commands, but you don't want to waste time waiting for one command to finish and run the next command. You can queue it all up and Task Spooler will execute them one by one. In the mean time, you can do other activities.
  • taverner - CLI launcher menu for games (or anything), the UNIX way.
  • Violet - Colorful TUI frontend to run Vagrant commands.

<a name="cheatsheet"></a>Commands cheatsheet and snippets

Tools to manage often used commands, code snippets, and alternative manual pages.

  • alman - TUI for managing shell aliases with intelligent suggestions based on you command history (organize, create and manage aliases across multiple files and shells).
  • asciit - A more compact and intuitive ASCII table in your terminal: an alternative to "man 7 ascii" and "ascii".
  • bkmr - A unified CLI tool for bookmark, snippet, and knowledge management.
  • carapace - Carapace provides argument completion for multiple CLI commands and works across multiple POSIX and non-POSIX shells.
  • cheatshh - A fzf based cheatsheet to store commands and their descriptions in a place you can look into so you dont have to remember them.
  • cmdCompass - Cross-platform terminal command manager/notebook with features like custom collections, tagging, variable substitution, and integrated man page with option highlighting.
  • docfd - TUI fuzzy document finder that looks for documentation files in Markdown and txt format in the directory tree.
  • eg - Useful examples at the command line.
  • ehh - Command-line tool for remembering Linux/terminal commands.
  • fzf-help - An fzf extension that allows you to select command line options of a given command; the options are retrieved from the command its --help` documentation.
  • gocheat - Customizable TUI cheatsheet for keybindings, hotkeys, gestures and aliases.
  • halp - halp aims to help find the correct arguments for command-line tools by checking the predefined list of commonly used options/flags.
  • IntelliShell - Like IntelliSense, but for shells, acting like a bookmark store for commands.
  • IntelliShell - Command template and snippet manager for the shell.
  • kmdr-cli - The CLI tool for explaining commands from your terminal.
  • ManPDF & ManWEB - Read your Man pages in PDF format. Even online!
  • mdpick - A terminal user interface (TUI) tool for interactively selecting and extracting code blocks or links from Markdown files and copy them to the clipboard, ready for being pasted right in the command line or anywhere else, or a tmux pane.
  • MUC - Visualize your most used commands.
  • Nap - Code snippet manager that allows creating and access new snippets quickly with the command-line interface or browse, manage, and organize them with the text-user interface.
  • navi - An interactive cheatsheet tool for the command-line.
  • pet - Pet is a simple command-line snippet manager, written in Go.
  • rsnip - A powerful command-line snippet manager.
  • Runme - DevOps notebooks built with Markdown.
  • snip - A snippet manager for bash, mostly written in pure bash.
  • snip - A simple and minimal command-line snippet manager.
  • snipt - Snipt is a powerful text snippet expansion tool.
  • Subshella - The program helps you manage groups of Bash environment variables with an interactive menu, making it quick to activate different configurations.
  • tealdeer - Very fast implementation of tldr in Rust.
  • The Fuck - Magnificent app which corrects your previous console command (although I would be extra-cautious at making a program to automatically infer what I was intending).
  • tldr - Client for tldr pages, a community effort to simplify the beloved man pages with practical examples.
  • tlrc - Official tldr client written in Rust.
  • tome - Interactive Script playbooks for your terminal with Vim/Neovim (and Tmux).
  • topalias - Linux alias generator from bash/zsh command history with statistics, written on Python.
  • Wat - Instant, central, community-built docs.

Containerization and virtualization

Tools to manage virtual machines and/or containers and related utilities.

  • bocker - Docker implemented in around 100 lines of bash.
  • ContainerSSH - An SSH Server that Launches Containers in Kubernetes and Docker on demand.
  • ctop - Top-like interface for container metrics.
  • decompose - Reverse-engineering tool for docker environments.
  • distrobox - Use any Linux distribution inside your terminal as docker or podman containers.
  • dive - A tool for exploring each layer in a docker image.
  • docker - Self-sufficient runtime for containers.
  • docker-shell - A simple interactive prompt for Docker.
  • Dockly - Immersive terminal interface for managing docker containers, services, and images.
  • dry - A Docker manager for the terminal.
  • EMU2 - A simple DOS emulator for the Linux text console, supporting basic DOS system calls and console I/O.
  • Incus - A manager/hypervisor for containers (via LXC) and virtual-machines (via QEMU).
  • lazydocker - The lazier way to manage everything docker. A simple terminal UI for both docker and docker-compose, written in Go with the gocui library.
  • lxc - A userspace interface for the Linux kernel containment features.
  • nemu - Ncurses UI for QEMU.
  • ocui - Simple text based UI for managing containers.
  • oxker - A simple TUI to view & control docker containers.
  • Pocker - Pocker is a TUI tool to help with docker related tasks, such as view containers/images, manage status of containers, see logs, attributes, environment variables and container statistics, filter logs based on keywords, start shell inside a container.
  • podman - Podman is a daemonless, open source, Linux native tool designed to make it easy to find, run, build, share and deploy applications using OCI Containers and Container Images.
  • QEMU - A generic machine & userspace emulator and virtualizer.
  • quickemu - Quickly create and run optimized Windows, macOS and Linux desktop virtual machines.
  • toolbox - Use containerized environments where development tools and libraries can be easily installed and used.
  • VCTUI - Console interface for vCenter: create, delete and search virtual machines and power management.
  • virsh - An interactive shell, and batch scriptable tool for performing management tasks on all libvirt managed domains, networks, and storage. A part of the libvirt core distribution.
  • Waydroid - A container-based approach to boot a full Android system on a regular Linux distribution.

Conversion

File format converters.

  • antiword - Reader and converted for the proprietary MS .doc file format.
  • BaFi - Universal JSON, BSON, YAML, CSV, XML translator to ANY format using templates.
  • catdoc - Convert Microsoft Word files to plain text; output is sent to the standard output.
  • hecat - A generic automation tool around data stored as plain-text YAML files.
  • hget - A CLI to convert HTML into plain text. Can be used to fetch a site's HTML version and convert it into plain text, or to deliver plain text versions of your site dynamically.
  • jsonify-resume - A CLI that converts resumes into JSON Resume schema.
  • lx - Convert arbitrary files into Markdown-fenced blocks for LLM context.
  • markdrop - Converts PDFs to markdown while extracting images and tables, generating descriptive text descriptions for extracted tables/images using several LLM clients.
  • MarkItDown - Python tool for converting files and office documents to Markdown.
  • NestedTextTo - CLI to convert between NestedText and JSON, YAML, or TOML.
  • Pandoc - Universal document file converter; handles input output from/to a number of formats: HTML, PDF, LaTeX, DOCX, ODT, AsciiDoc, Markdown, Textile, just to mention a few; the quality of conversion strongly depends on the combination of input/output formats.
  • scss-to-css - Recursively compile all SCSS files into minified CSS.
  • simtex - simtex (simplified LaTeX) allows you to convert your Markdown or text lectures into LaTeX file with one command, configured with simple .json file.
  • transflac - A repository containing a series of utilities to assist in the maintenance and organization of FLAC based music collections.
  • unoserver - Using LibreOffice as a server for converting documents, it allows converting multiple documents without loading libreoffice into memory every time.
  • Vertopal-CLI - Vertopal-CLI is a small, yet powerful utility for converting digital files to a variety of file formats using Vertopal public API.
  • wv - Utility for performing operations on .doc files. The tool is now deprecated in favor of AbiWord, which uses the same library that is used in the CLI program.

Copy/paste and clipboard

Clipboard managers and text copy/paste tools.

  • clipboard-viewer - Terminal-based clipboard browser.
  • clipper - Seamlessly copy file contents to clipboard from command line. Lightweight, cross-platform tool for instant text transfers.
  • clipse - TUI-based clipboard manager application written in Go.
  • Clipsync - Share your clipboard across multiple machines using an MQTT service.
  • clipy - Manage clipboard history.
  • copytools.sh - Tools for copying and pasting in the command line.
  • extrakto - extrakto for tmux - quickly select, copy/insert/complete text without a mouse.
  • pbproxy - Send your clipboard anywhere you can ssh to.
  • pcopy - A temporary file host, nopaste and clipboard across machines. It can be used from the Web UI, via a CLI or without a client by using curl.
  • shcopy - Copy text to your system clipboard locally and remotely using ANSI OSC52 sequence.
  • yank - Reads input from stdin and display a selection interface that allows a field to be selected and copied to the clipboard.

Data management

Tools to manage data files.

  • chndlr - Replacement for xdg-open; It determines the appropriate application to open a file or URL based on user-defined rules in configuration.
  • crudini - A utility for manipulating .ini files.
  • datadash - Visualize and graph data in the terminal.
  • datasetGPT - A command-line interface and a Python library for inferencing Large Language Models to generate textual datasets.
  • dateutils - Dateutils are a bunch of tools that revolve around fiddling with dates and times in the command line with a strong focus on use cases that arise when dealing with large amounts of financial data.
  • GNU Recutils - Set of tools and libraries to access human-editable, text-based databases called recfiles.
  • gnuplot - Generate two and three-dimensional plots of data.
  • IRedis - Interactive Redis: A CLI for Redis with autocompletion and Syntax Highlighting.
  • lowcharts - lowcharts is meant to be used in those scenarios where we have numerical data in text files that we want to display in the terminal to do a basic analysis.
  • osmf - OpenStreetMap find - A simple command line tool to explore OSM data.
  • ramda-cli - A tool for processing data with functional pipelines.
  • Redis Viewer - A tool to view Redis data in terminal.
  • redis_tui - Redis terminal browser application.
  • ROAPI - ROAPI automatically spins up read-only APIs for static datasets without requiring you to write a single line of code.
  • sampler - Sampler is a tool for shell commands execution, visualization, and alerting. Configured with a simple YAML file.
  • ttyplot - A realtime plotting utility for terminals with data input from stdin/pipe.
  • WOPR - A simple markup language for creating rich terminal reports, presentations, and infographic.
  • zq - A command-line tool that uses the Zed language for pipeline-style search and analytics. It can query a variety of data formats (CSV, JSON, etc.) in files, over HTTP, or in S3 storage.

Data management - JSON/YAML/etc.

Tools to manage data files, dedicated to JSON, YAML and other similar formats.

  • dasel - Allows you to query and modify data structures using selector strings.
  • faq - Format Agnostic jQ - process various formats with libjq.
  • Frontmatter CLI Tool - CLI tool for managing YAML frontmatter in text files; Built with Go and optimized for performance with large files.
  • fx - Command-line JSON viewer.
  • gojq - Pure Go implementation of jq.
  • Graphtage - Graphtage is a command-line utility and underlying library for semantically comparing and merging tree-like structures, such as JSON, XML, HTML, YAML, plist, and CSS files.
  • gron - gron transforms JSON into discrete assignments to make it easier to grep for what you want and see the absolute 'path' to it.
  • GROQ - The CLI tool consumes both JSON and NDJSON documents. You can pass in data from a local file, or from piping to standard input.
  • jaq - jaq is a clone of the JSON data processing tool jq, that aims to support a large subset of jq's syntax and operations.
  • jayin - Piping with js at terminal.
  • jc - Serializes the output of command line tools to JSON.
  • jellex - TUI to filter JSON and JSON Lines data with Python syntax.
  • jello - CLI tool to filter JSON and JSON Lines data with Python syntax, similar to - surpri

README truncated. View on GitHub
πŸ”— More in this category

Β© 2026 GitRepoTrend Β· toolleeo/awesome-cli-apps-in-a-csv Β· Updated daily from GitHub