lf

9.1k

Terminal file manager for navigating directories, selecting files, and running shell-integrated file actions.

$env CGO_ENABLED=0 go install -ldflags="-s -w" github.com/gokcehan/lf@latest
Language
Go
Stars
9,110
Agent
AI Analysis

lf is a fullscreen terminal file manager for browsing directories, marking files, previewing content, and handing paths back to the shell or other commands. It is aimed at keyboard-driven local filesystem work rather than headless automation.

What It Enables
  • Browse large directory trees, jump between locations, mark files, and perform copy, move, rename, delete, and open workflows from one terminal UI.
  • Return the last visited directory to the shell or export selected file paths, which makes lf usable as a cd helper or interactive file picker.
  • Send commands to running lf clients and query state such as visible files, history, jumps, mappings, or custom commands through the built-in server.
Agent Fit
  • The command surface is stable and shell-friendly for wrapper workflows like lf -print-last-dir, lf -print-selection, and lf -remote queries.
  • All useful exported state is plain text, and the primary experience is a fullscreen TUI, so unattended parsing and control are limited.
  • Best fit is paired workflows where an agent or script cooperates with a human-operated file manager session rather than replacing it.
Caveats
  • Most functionality assumes an interactive terminal session; the headless server is mainly for coordinating clients and remote commands, not full standalone file automation.
  • Shell cd integration depends on helper scripts from etc/ rather than the lf binary alone.