aicoolies logo

Terminal Power User Stack

$0/mo

The ultimate terminal-centric development environment — no GUI needed, maximum keyboard efficiency.

Share

What This Stack Does

Terminal-first development is not a nostalgic throwback to the pre-GUI era — it is a deliberate, modern workflow choice that prioritizes speed, composability, and keyboard efficiency above all else. Every time you reach for a mouse, you break flow. Every time you wait for an Electron-based editor to load, you lose seconds that compound across thousands of daily interactions. Terminal-native tools start instantly, consume minimal resources, and can be composed through Unix pipes and shell scripts in ways that GUI applications cannot match. A terminal power user can navigate a million-line codebase, search across every file, edit multiple locations simultaneously, run tests, commit changes, and deploy — all without their fingers leaving the home row. This workflow is also inherently more accessible across environments: the same configuration works over SSH on a remote server, inside a Docker container, on a lightweight laptop, or on a powerful workstation. There is no "this feature is not available in the remote version" limitation that plagues GUI-based editors. The tools in this stack represent the cutting edge of terminal-based development in 2025 — each one is actively maintained, highly performant, and designed to integrate seamlessly with the others. Together, they create a development environment that is faster, more customizable, and more resource-efficient than any GUI-based alternative, while still providing all the modern features developers expect: syntax highlighting, language server protocol support, AI-powered code generation, and intelligent navigation.

The Core: A Fast Terminal and a Modern Editor

Ghostty, created by Mitchell Hashimoto (founder of HashiCorp), is a terminal emulator built from the ground up for performance using Zig and GPU-accelerated rendering. It is the fastest terminal emulator available on macOS and Linux, with input latency under 4 milliseconds and rendering performance that never drops frames even when scrolling through massive log files. Unlike Alacritty, which also prioritizes performance, Ghostty supports native platform features — macOS tabs, native fullscreen, system notifications, and proper font rendering with ligature support. Unlike iTerm2 or Warp, Ghostty does not sacrifice speed for features — it achieves both. The configuration is a simple key-value text file that supports themes, font customization, keybindings, window management, and split panes. Ghostty's split pane implementation is built into the terminal itself rather than relying on tmux, meaning you get native-feeling splits with GPU-accelerated rendering in every pane. That said, Ghostty works beautifully with tmux for developers who prefer session management, detachable sessions, and the ability to attach to running sessions from different machines. For a terminal power user, the emulator is the most fundamental tool in the stack — you spend every working moment inside it — and Ghostty ensures that the foundation is rock-solid, visually beautiful, and never the bottleneck in your workflow.

Neovim is the text editor at the heart of this stack, and modern Neovim with its built-in LSP client, Treesitter integration, and Lua-based configuration is a fundamentally different tool from the Vim of a decade ago. With nvim-lspconfig, Neovim connects to the same language servers that VS Code uses — TypeScript, Python, Rust, Go, C++ — providing identical code intelligence: autocompletion, go-to-definition, find references, rename symbol, code actions, and real-time diagnostics. Treesitter provides syntax highlighting that understands the actual parse tree of your code rather than relying on fragile regex patterns, enabling features like incremental selection (expand your selection to the enclosing syntactic node), structural navigation (jump to the next function, class, or parameter), and text objects based on code structure rather than text patterns. The plugin ecosystem is extraordinarily rich: Telescope for fuzzy finding across files, buffers, LSP symbols, and git history; nvim-cmp for intelligent completion with multiple sources; oil.nvim or neo-tree for file management; gitsigns for inline git blame and hunk management; and lazy.nvim for plugin management with lazy loading that keeps startup time under 50 milliseconds even with 50+ plugins. The learning curve is real — becoming productive in Neovim takes days, and becoming fast takes weeks — but the ceiling is far higher than any other editor. A skilled Neovim user edits text at the speed of thought, composing motions and operators into editing commands that accomplish in two keystrokes what takes ten clicks in a GUI editor.

AI Assistants That Live in Your Terminal

Claude Code brings AI-powered coding directly into the terminal, operating as an agentic coding assistant that understands your entire project context without leaving your command line. Unlike AI features embedded in GUI editors, Claude Code works through your terminal and integrates naturally with a Neovim-based workflow — you can invoke it to analyze your codebase, generate implementations, refactor across multiple files, run and fix tests, and even execute complex multi-step tasks autonomously. Claude Code indexes your entire repository and maintains context across interactions within a session, so it understands your project's architecture, coding conventions, and dependencies. The agentic capabilities are what set Claude Code apart: you can ask it to implement a feature, and it will read the relevant files, write the code, run the tests, fix any failures, and present you with the completed work — all while you watch the process in your terminal. For a Neovim user, the workflow is fluid: edit in Neovim for precise, intentional changes where you know exactly what you want, and delegate to Claude Code for larger tasks that benefit from AI reasoning — writing boilerplate, implementing well-defined features, refactoring patterns across a codebase, or exploring unfamiliar libraries. Aider complements Claude Code by offering a different interaction model — it focuses on pair programming with a conversational interface where you discuss changes with the AI before they are applied. Aider supports multiple AI providers (Claude, GPT-4, local models via Ollama), shows diffs before applying changes, and integrates with git to automatically commit each AI-generated change with a descriptive message. Having both tools available gives you flexibility: Claude Code for autonomous task completion, Aider for collaborative, conversational development.

Utilities and Shell Customization That Tie It Together

The modern CLI tool ecosystem has produced replacements for classic Unix utilities that are dramatically faster and more user-friendly, and this stack includes the best of them. fzf (fuzzy finder) is perhaps the single most transformative tool in a terminal workflow — it turns any list into an interactive, fuzzy-searchable menu. Pipe your git branches into fzf to quickly switch branches. Pipe your command history into fzf to search and re-run previous commands. Use fzf with fd (a modern find alternative) to open any file in your project in milliseconds. The key bindings Ctrl+R (history search) and Ctrl+T (file search) become muscle memory within days and save hundreds of keystrokes per hour. ripgrep (rg) replaces grep with a tool that is an order of magnitude faster — it respects .gitignore by default, searches recursively, supports PCRE2 regex, and outputs results with color-coded context. Searching a million-line codebase with ripgrep takes milliseconds, not seconds. zoxide replaces the cd command with a smart alternative that learns your most-visited directories and lets you jump to them with abbreviated names — type "z proj" and it takes you to /home/user/Documents/Projects because it knows that is where you go most often. Additional tools that complete the experience include bat (cat with syntax highlighting and line numbers), eza (ls with git integration, icons, and tree view), delta (beautiful git diff viewer with syntax highlighting), and fd (a simpler, faster alternative to find). Each of these tools is a small, focused program that does one thing exceptionally well — the Unix philosophy at its finest — and together they create a terminal experience that is not just functional but genuinely enjoyable to use.

Shell customization with Starship and a well-configured multiplexer workflow tie the entire stack together into a cohesive development environment. Starship is a cross-shell prompt written in Rust that displays contextual information — current git branch and status, active language versions (Node, Python, Rust), Kubernetes context, AWS profile, command duration, and exit codes — using a beautiful, minimal design with nerd font icons. It works identically across bash, zsh, fish, and PowerShell, so your prompt looks the same regardless of which shell you use or which machine you are on. Configuration is a single TOML file that is easy to version control and share across machines. For multiplexing, tmux remains the gold standard for terminal session management. A typical tmux workflow involves creating named sessions for different projects, with multiple windows (tabs) for different tasks — one for Neovim, one for a development server, one for git operations, one for Claude Code. The killer feature of tmux is session persistence: you can detach from a session, close your terminal, even SSH into a different machine, and reattach to find everything exactly as you left it. tmux pairs exceptionally well with Ghostty's native splits — use Ghostty splits for quick, visual pane arrangements and tmux sessions for persistent, named workspaces that survive terminal restarts. The combination of Ghostty, Neovim, Claude Code, modern CLI tools, Starship, and tmux creates a development environment that boots in under a second, uses less than 200MB of RAM, works identically on local machines and remote servers, and provides every feature that a modern developer needs — without a single Electron process in sight.

Stack Overview

ToolRolePricingOpen Source
GhosttyTerminal EmulatorFreeYes
NeovimEditorFreeYes
Claude CodeAI AgentIncluded with Claude Pro/Max or API usageYes
AiderAI Pair ProgrammerFree (bring your own API key)Yes
fzfFuzzy FinderFreeYes
ripgrepCode SearchFreeYes
StarshipShell PromptFreeYes
zoxideSmart cdFreeYes