Skip to content
← Back to collections

Free Software Collection

Free Command-Line Tools

Command-line tooling went through a rewrite wave: ripgrep for grep, fd for find, Yazi for ranger — mostly redone in Rust or Go, one to two orders of magnitude faster, with defaults that match how people actually work today, such as skipping paths listed in .gitignore. This list sorts five ways — finding things, managing files, managing sessions, managing code, processing media. Each is a single executable that works on install, with no network and no telemetry.

15 curated recommendations

Selection Criteria

  • Open source, a single executable, with no registration or online activation.
  • Cross-platform, or with official builds on the major platforms.
  • Works offline and sends no usage data.
  • Solves one concrete problem rather than stacking features into a suite.

Recommended Tools

Free

ripgrep

Search a whole codebase for a string in tens of milliseconds

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

fzf

Fuzzy-find anything that comes one item per line

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Yazi

A terminal file manager that never stalls on huge directories — and previews images inline

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Zellij

Terminal sessions that survive a dropped ssh — without memorising shortcuts

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Starship

One config file, the same prompt in every shell

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Git

The de facto version control system — the whole repository lives on your machine

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

lazygit

A Git interface in your terminal — no more memorizing rebase flags

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Neovim

A hyperextensible modern Vim with built-in LSP and Lua

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

Helix

A modal editor with LSP and syntax highlighting out of the box — no night of configuration

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

uv

One tool replacing pip, poetry, pyenv and virtualenv

  • Open Source
  • No Ads
  • No Tracking
  • No Sign-up
Free

Pandoc

The universal translator between document formats

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

ImageMagick

FFmpeg for images — one command, thousands of files

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

FFmpeg

The foundation under nearly all media software — you already use it

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

yt-dlp

The de-facto standard for downloading video, in one command

  • Open Source
  • No Ads
  • No Tracking
  • Offline
Free

rclone

Seventy-plus cloud storage services, one set of commands

  • Open Source
  • No Ads
  • No Tracking
  • No Sign-up

FAQ

If I only install two?
fzf and ripgrep. Once fzf takes over Ctrl-R, finding an old command goes from remembering the exact prefix to typing any few letters, which pays off daily. ripgrep turns searching a codebase for a string from tens of seconds into tens of milliseconds, because it does not descend into node_modules or .git by default. Together they are under 20 MB.
Zellij or tmux?
They do the same job — a dropped ssh does not kill the work. The difference is the entry cost: tmux expects a whole Ctrl-b vocabulary, while Zellij keeps the available keys pinned to the bottom of the screen and is usable on first launch. In exchange Zellij uses more resources, noticeable on an old low-memory VPS, and has no native Windows build.
Neovim or Helix?
Helix works out of the box — syntax highlighting, LSP completion and multiple cursors are built in, and you can write code without a config file. Neovim expects you to build a configuration or adopt someone's distribution, but its ecosystem and plugin count are an order of magnitude beyond. Take Helix to start immediately, Neovim to trade time for total control.
Why is Git on this list?
Because many people treat Git and a code hosting platform as one thing. Git runs on your machine, and a repository from `git init` needs no account and no network. When a platform goes down or an account is suspended, the history is still on your disk — worth stating on its own.