Let’s talk CLI/TUI and Developer Workflows!
I’m looking to refresh my local toolkit and I’m curious: what are the absolute “must-have” CLI or TUI programs in your current rotation?
Whether it’s a specialized utility for a specific language, a terminal-based interface for a common service, or a workflow-changing alias, I want to hear about it. I’m especially interested in tools that prioritize keyboard-driven navigation and accessibility.
My Current Favorites:
To get the ball rolling, here are a few tools I’ve been leaning on lately:
- uv — Fast, reliable Python package and project management.
- fzf & ripgrep — The classic duo for fuzzy finding and searching.
- tmux — For session management and persistent terminal workspaces.
- jq / yq — Essential for wrangling JSON and YAML without leaving the prompt.
What about you?
- What is one tool you’ve discovered recently that you can’t live without?
- Are there any TUI-based clients for web services (like Mastodon, GitHub, or RSS) that you recommend?
- Do you have a favorite “hidden gem” script or small utility?
Mentions & Groups
@programming
@linux @terminal_u_i@lemmy.ml @selfhosted
Hashtags
#CLI #TUI #Terminal #OpenSource #FOSS #Programming #DevTools #Linux #SysAdmin #Workflow #Python #Backend #ArchLinux #KeyboardDriven #Accessibility #SoftwareDevelopment #TechTalk


Ones I haven’t seen mentioned (unless it came in while I was typing this).
https://github.com/kainctl/isd - Interactive systemd.
https://github.com/zellij-org/zellij - tmux alternative. Its alright. Built in which-key functionality. I initially switched to it because I like large scrollback buffers and tmux was super slow at resizing window panes. Can open buffers in nvim for better search.
https://github.com/arxanas/git-branchless - Work on stacked commits. Instead of opening PRs linerally you work on several commits at once with the expectation each commit will be a PR. Promotes smaller PRs that are easier to review to complete a feature. Often when doing that linerally you may discover a bad choice made earlier and have to reverse course and refactor. With a branchless workflow you go back and forth on commits so the final stack of PRs doesn’t include those reverse course refactors.
https://github.com/mystor/git-revise - Split, rearrange commits. Works nicely with git-branchless.
https://github.com/tummychow/git-absorb - Reflect changes from a commit backwards. Also works well with a branchless workflow.
If I’m honest I just develop linerally and use an AI agent/skill to restack using the 3 programs above.
https://github.com/ymtdzzz/otel-tui - Open Telemetry viewer.
https://github.com/brocode/fblog - JSON Lines viewer.
https://github.com/aristocratos/btop - Better top.
https://github.com/jandedobbeleer/oh-my-posh - Terminal prompt.
https://starship.rs/ - Another terminal prompt.
https://rclone.org/ - Remote backups using my own encryption key. Supports many cloud providers.
https://github.com/Mic92/nix-fast-build - Not sure its really faster but has a nicer TUI.
https://dircolors.com/ - Directory colors in terminal output to better distinguish directory types.
https://github.com/jesseduffield/lazygit - Git TUI. I only use in neovim though, don’t think I’ve ever run it directly.
https://github.com/sindrets/diffview.nvim - Better merge conflict handling in neovim.
https://github.com/getsops/sops / https://github.com/mic92/sops-nix - Encrypt secrets in git repos.
https://github.com/zdharma-continuum/fast-syntax-highlighting - Syntax highlighting as you type shell commands.
https://github.com/luccahuguet/yazelix - Opinionated Yazi, Helix, Zellij setup with custom patches to integrate. Looks interesting but could never get to work with nix as it keeps trying to write to store paths. They even have a flake.nix in the repo…
less - Less shitty more (terminal pager) with the options below.
export LESS="-aRix2 --use-color --mouse --wheel-lines=3" export SYSTEMD_LESS="$LESS" # a = search from current position # i = case insensitive # x2 = tabstop # R = color control chars show colorGreat list! I’m trying out oxc instead of biome right now. Based on your git tools I recommend you check out jj
Thanks for sharing! I will have to try this out on a project. Matches many of my own workflow habits, and more importantly, how I train devs on my team. Commit often, don’t care if its broken, the pipeline will fix the history. They can truly stump me with how they get into the train wrecks they find themselves in. Committing conflicts sounds like a super power to help them out.