Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Dev Env
  3. peco

peco

MITGov0.6.0

A simplistic interactive filtering tool for the command line, written in Go, that filters and selects from piped input.

GitHubGitHub
7.9k stars233 forks0 contributors

What is peco?

peco is an interactive filtering tool for the command line that processes piped input, allowing users to search, filter, and select lines in real-time. It solves the problem of navigating large text streams by providing a visual, incremental search interface that works with logs, file lists, process outputs, and other command-line data.

Target Audience

Developers and system administrators who work extensively in the terminal and need to quickly filter and select from command output, logs, or file lists without leaving the command line.

Value Proposition

Developers choose peco for its simplicity, speed, and seamless integration into Unix pipelines. As a single Go binary with no dependencies, it offers powerful interactive filtering with features like multiple selection, ANSI color support, and flexible matching filters, enhancing productivity in shell workflows.

Overview

Simplistic interactive filtering tool

Use Cases

Best For

  • Filtering and selecting process IDs from `ps` output
  • Searching through git log history interactively
  • Navigating and selecting files from `find` or `ls` results
  • Parsing and filtering application logs in real-time
  • Selecting multiple lines from command output for further processing
  • Interactive search within shell history or command outputs

Not Ideal For

  • Real-time log monitoring where immediate, unbuffered filtering is critical (peco buffers input and processes in batches)
  • Shell scripts that must run without external binary dependencies (peco is a standalone Go executable)
  • Tasks requiring in-line data transformation or extraction beyond line selection (peco only filters and selects, doesn't modify content)

Pros & Cons

Pros

Single Binary Simplicity

peco is distributed as a single Go binary with no external dependencies, making installation trivial via releases or package managers like Homebrew and apt.

Incremental AND Search

Results filter in real-time as you type, and multiple terms are treated as AND queries, allowing precise drilling down without separate commands or scripts.

ANSI Color Preservation

It parses and renders ANSI SGR escape sequences from input, so colored output from tools like `git log --color` remains visible while filtering on stripped text.

Cons

Manual Keybinding Overhead

Advanced features like multi-stage filtering (FreezeResults) and horizontal scrolling lack default keybindings, requiring users to edit JSON config files for setup.

Custom Filter Constraints

External custom filters process batches sequentially without match highlighting and must be stateless, limiting complex or context-aware filtering compared to built-in options.

Cross-Platform Inconsistencies

Known issues on msys2/cygwin and with non-latin fonts on Windows reduce reliability, as noted in the FAQ about bracketed paste and font display problems.

Open Source Alternative To

peco is an open-source alternative to the following products:

p
percol

percol is an interactive grep tool for Unix-like systems that allows real-time filtering and selection of command output.

Frequently Asked Questions

Quick Stats

Stars7,889
Forks233
Contributors0
Open Issues1
Last commit3 days ago
CreatedSince 2014

Tags

#interactive-filter#shell-integration#terminal#command-line-tool#fuzzy-search#go

Built With

G
Go

Included in

Go169.1kDev Env3.2k
Auto-fetched 1 day ago

Related Projects

fzffzf

:cherry_blossom: A command-line fuzzy finder

Stars80,921
Forks2,804
Last commit1 day ago
ripgrepripgrep

ripgrep recursively searches directories for a regex pattern while respecting your gitignore

Stars64,877
Forks2,597
Last commit3 days ago
divedive

A tool for exploring each layer in a docker image

Stars54,214
Forks1,990
Last commit5 months ago
the_silver_searcherthe_silver_searcher

A code-searching tool similar to ack, but faster.

Stars27,069
Forks1,435
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub