No todas las herramientas con interfaz gráfica sobran, pero para quien pasa buena parte del día dentro de una terminal hay tareas en las que abrir otra aplicación, cambiar de ventana y navegar por menús empieza a tener un coste evidente. Proyectos como xh, k9s, lazydocker, lazygit, pgcli, yazi, btop o zellij muestran que muchas operaciones habituales de desarrollo y administración pueden resolverse desde consola con menos cambios de contexto y, además, con la ventaja de poder automatizarse.
Las claves de las herramientas CLI en 20 segundos
- Muchas alternativas de terminal no buscan reemplazar por completo a las aplicaciones gráficas, sino acelerar tareas repetitivas.
- xh sirve para probar APIs, k9s para operar Kubernetes y lazydocker para gestionar contenedores.
- lazygit y
ghcubren buena parte del flujo diario con Git y GitHub. - pgcli y mycli añaden autocompletado a PostgreSQL y MySQL.
- yazi, btop, lnav y zellij convierten la terminal en un entorno de trabajo bastante más completo.
La idea tampoco consiste en recuperar una especie de purismo de consola. Algunas interfaces gráficas siguen siendo claramente mejores para descubrir sistemas desconocidos, colaborar con perfiles no técnicos o trabajar de forma ocasional.
La diferencia aparece cuando una misma operación se repite diez, veinte o cincuenta veces al día.
Ahí, escribir un comando puede ser más rápido que abrir una aplicación completa.
De Postman y Kubernetes a Docker sin salir del terminal
1. xh: probar APIs sin abrir Postman
xh es un cliente HTTP escrito en Rust con una sintaxis inspirada en HTTPie. Su repositorio sigue activo y el proyecto se presenta como una alternativa rápida para ejecutar peticiones desde terminal.
Un POST puede resolverse así:
xh POST api.example.com/orders \
items:='[{"sku":"SKU-1042","qty":2}]' \
Authorization:"Bearer $API_TOKEN"Lenguaje del código: JavaScript (javascript)
Para un desarrollador que necesita probar rápidamente un endpoint, la ventaja es sencilla: la petición se ejecuta en la misma ventana donde probablemente ya están los logs.
Eso no elimina la utilidad de Postman. Las colecciones compartidas, mocks, documentación y flujos colaborativos siguen teniendo valor en equipos que necesitan una interfaz común.
2. k9s: Kubernetes en modo terminal
k9s ofrece una interfaz TUI (Terminal User Interface) para inspeccionar y gestionar clústeres Kubernetes.
Por ejemplo:
k9s -n production
Desde ahí se pueden revisar pods, logs, namespaces y otros recursos sin encadenar continuamente comandos de kubectl.
Para incidentes resulta especialmente cómodo porque la información se actualiza en tiempo real y permanece dentro de la sesión de terminal.
3. lazydocker: una interfaz TUI para Docker
El proyecto lazydocker mantiene una interfaz de terminal para contenedores, imágenes, logs y recursos.
Su arranque no tiene misterio:
lazydocker
Puede resultar útil para quien utiliza habitualmente Docker CLI pero quiere una vista continua de los contenedores sin depender de Docker Desktop.
Esto no significa que Docker Desktop haya dejado de tener sentido. Además del panel gráfico, integra diferentes piezas del entorno Docker y simplifica mucho la experiencia en macOS y Windows.
4. dive: entender por qué una imagen Docker ocupa tanto
dive tiene un objetivo más concreto: analizar las capas de una imagen Docker u OCI y mostrar qué archivos se han añadido, cambiado o eliminado en cada una.
dive myapp:latestLenguaje del código: CSS (css)
También puede utilizarse dentro de CI para detectar espacio desperdiciado:
CI=true dive myapp:latestLenguaje del código: JavaScript (javascript)
El proyecto mantiene más de 54.000 estrellas en GitHub y dispone incluso de pull requests recientes durante 2026, por lo que no parece correcto describirlo simplemente como un proyecto abandonado. Su propia documentación, eso sí, continúa calificándolo como software de calidad beta.
Git también tiene su propio escritorio dentro de la terminal
5. lazygit: Git sin memorizar cada combinación de comandos
lazygit es probablemente una de las herramientas TUI más conocidas para trabajar con repositorios Git.
Permite revisar cambios, hacer staging, gestionar commits, ramas, conflictos y operaciones de rebase desde una sola interfaz:
lazygit
No reemplaza Git. Lo utiliza por debajo y proporciona una capa interactiva encima.
Para administradores y desarrolladores que viven en SSH o terminales remotos puede resultar más cómoda que GitHub Desktop o Sourcetree.
6. Hunk: revisar diffs generados por agentes de IA
Hunk es bastante más reciente y está orientado a un problema que ha aparecido con los asistentes de programación: revisar cambios grandes producidos por agentes.
Su repositorio lo define como un visor de diferencias para terminal centrado en revisión, con soporte para cambios de varios archivos, navegación lateral y anotaciones de agentes o IA.
El uso actual es:
hunk diff
o:
hunk show HEAD
También dispone de modo de vigilancia:
hunk diff --watch
Esto permite mantener abierto el diff mientras un agente modifica el repositorio.
Aquí conviene corregir un detalle de algunas guías que circulan: el comando documentado actualmente por el proyecto no es simplemente hunk review, sino una interfaz basada principalmente en hunk diff, hunk show y hunk patch.
7. GitHub CLI: issues, pull requests y Actions mediante gh
La CLI oficial de GitHub permite gestionar buena parte del flujo sin abrir el navegador:
gh pr status
gh pr view 482 --comments
gh run listLenguaje del código: PHP (php)
También permite crear, revisar y fusionar pull requests, consultar issues y trabajar con GitHub Actions.
No reemplaza la interfaz web para procesos de revisión complejos, pero funciona especialmente bien para comprobaciones rápidas.
Bases de datos sin TablePlus ni pgAdmin
8. pgcli: PostgreSQL con autocompletado
pgcli mantiene la experiencia clásica de psql, pero añade autocompletado, resaltado y edición más cómoda.
pgcli postgresql://user@localhost/ordersLenguaje del código: JavaScript (javascript)
Puede sugerir tablas, columnas y palabras clave a medida que se escribe.
9. mycli: la misma idea para MySQL y MariaDB
mycli pertenece al mismo ecosistema dbcli y proporciona una experiencia parecida para MySQL:
mycli mysql://user@localhost/ordersLenguaje del código: JavaScript (javascript)
Los repositorios públicos de ambos proyectos permanecen disponibles y activos dentro de la organización dbcli.
Para consultas rápidas sobre bases que ya se conocen, resultan especialmente cómodos.
Cuando se necesita descubrir visualmente un esquema enorme, inspeccionar relaciones o navegar entre tablas desconocidas, herramientas como TablePlus o pgAdmin pueden continuar siendo más rápidas.
Archivos, procesos y logs también tienen alternativas
10. yazi: un gestor de archivos dentro de la consola
yazi es un gestor de archivos TUI rápido, escrito en Rust y con navegación inspirada en herramientas como Vim.
yazi
Permite recorrer directorios, previsualizar ficheros y realizar operaciones habituales sin salir de la terminal.
El proyecto continúa activo en GitHub y puede ser especialmente práctico cuando se trabaja mediante SSH.
11. btop: CPU, RAM, disco y red en una sola pantalla
btop proporciona una vista interactiva de recursos:
btop
Muestra procesos, uso de CPU, memoria, almacenamiento y tráfico de red.
No pretende sustituir una plataforma completa de observabilidad. Su ventaja aparece en diagnósticos locales rápidos, especialmente en servidores donde instalar una interfaz gráfica no tiene sentido.
12. lnav: navegar y consultar logs
lnav, abreviatura de Log File Navigator, permite fusionar diferentes archivos de logs y analizarlos desde una sola interfaz.
lnav /var/log/app/*.logLenguaje del código: JavaScript (javascript)
Una de sus funciones más interesantes es que permite realizar consultas sobre los logs utilizando SQL.
Eso lo convierte en algo bastante diferente de herramientas como tail, less o grep: no solo muestra líneas, también puede estructurar ciertos formatos y ayudar a correlacionar eventos.
Notificaciones y sesiones persistentes
13. ntfy: avisos desde scripts usando HTTP
Para recibir una notificación cuando termina una tarea no hace falta necesariamente un bot de Slack.
ntfy permite publicar mensajes mediante HTTP y recibirlos en móvil o escritorio:
curl -d "Backup completado" ntfy.sh/mi-servidorLenguaje del código: JavaScript (javascript)
También puede desplegarse en infraestructura propia. Su repositorio open source continúa activo y en mayo de 2026 publicó la versión 2.23.0.
Es especialmente útil para scripts, backups, jobs de CI o tareas largas.
14. zellij: varias terminales dentro de una terminal
zellij es un multiplexor similar conceptualmente a tmux:
zellij
o:
zellij attach --create work
Permite dividir una sesión en paneles y pestañas y recuperarla después.
Para quien empieza desde cero puede resultar más accesible que tmux porque muestra ayudas de teclado directamente en la interfaz.
Un flujo cotidiano podría quedar así:
┌──────────────────────┬──────────────────────┐
│ │ │
│ lazygit │ aplicación │
│ │ logs │
├──────────────────────┼──────────────────────┤
│ │
│ shell │
│ │
└─────────────────────────────────────────────┘
Todo dentro de una única sesión.
15. Un agente de código también encaja en esta forma de trabajar
La última pieza de muchas configuraciones modernas es un agente de programación ejecutándose directamente en terminal.
Aquí no existe una única opción. Claude Code, Codex y otras herramientas han trasladado parte de la experiencia que antes estaba integrada exclusivamente dentro de IDEs hacia sesiones CLI.
La diferencia respecto a un chat tradicional consiste en que estos agentes pueden trabajar sobre varios archivos, ejecutar comandos y comprobar tests dentro del repositorio.
Esto encaja de forma natural con herramientas como Hunk, lazygit o zellij: un panel puede mantener el agente, otro mostrar el diff y otro ejecutar la aplicación.
El resultado no es necesariamente un escritorio sin interfaces gráficas. Es más bien un entorno de administración y desarrollo donde la terminal se convierte en el punto central y las GUIs se utilizan cuando realmente aportan algo.
Qué herramienta usar para cada tarea
| Tarea | Herramienta CLI/TUI | Alternativa gráfica habitual |
|---|---|---|
| Probar APIs | xh | Postman |
| Kubernetes | k9s | Lens |
| Contenedores | lazydocker | Docker Desktop |
| Analizar imágenes | dive | Docker Desktop |
| Git | lazygit | GitHub Desktop / Sourcetree |
| Revisar diffs | Hunk | GitHub |
| GitHub | gh | GitHub web |
| PostgreSQL | pgcli | pgAdmin / TablePlus |
| MySQL | mycli | MySQL Workbench / TablePlus |
| Archivos | yazi | Finder / Explorer |
| Sistema | btop | Activity Monitor |
| Logs | lnav | dashboards de logs |
| Notificaciones | ntfy | Slack / correo |
| Multiplexación | zellij | múltiples ventanas de terminal |
| Agentes de código | CLI de agentes | chat integrado en IDE |
La comparación no debe interpretarse como una equivalencia absoluta. Postman tiene capacidades colaborativas que xh no pretende reproducir; Docker Desktop proporciona bastante más que una vista de contenedores; y un dashboard centralizado de observabilidad sigue siendo imprescindible cuando hay que analizar cientos de servidores.
La ganancia aparece sobre todo en trabajos frecuentes y locales.
Una herramienta CLI tiene además otra propiedad especialmente útil para administradores: el comando que hoy se ejecuta manualmente puede terminar mañana dentro de un script, un pipeline de CI o una tarea automatizada.
Esa posibilidad es probablemente una diferencia más importante que ahorrar unos segundos al abrir una ventana.
Preguntas frecuentes
¿Es necesario sustituir las aplicaciones gráficas por herramientas CLI?
No. Las CLI son especialmente útiles en tareas repetitivas, automatización y administración remota. Las interfaces gráficas siguen teniendo ventajas para descubrir sistemas desconocidos, colaboración y operaciones ocasionales.
¿Qué herramienta puede sustituir a Postman para peticiones rápidas?
xh permite ejecutar peticiones HTTP desde terminal con una sintaxis sencilla. No reproduce funciones colaborativas como las colecciones y mocks de Postman.
¿Cuál es una buena alternativa de terminal para Docker Desktop?
lazydocker ofrece administración interactiva de contenedores, mientras que dive está especializado en analizar las capas y tamaño de imágenes Docker u OCI.
¿Qué herramientas son especialmente interesantes para administradores de sistemas?
k9s, lazydocker, btop, lnav, ntfy y zellij destacan para operación de Kubernetes, contenedores, monitorización local, logs, alertas y sesiones remotas persistentes.







