1 puntos por GN⁺ 2026-01-05 | 1 comentarios | Compartir por WhatsApp
  • taws es una herramienta de UI basada en Rust para explorar y administrar recursos de AWS desde la terminal, permitiendo observar y controlar la infraestructura de AWS en tiempo real
  • Soporta más de 94 tipos de recursos y más de 60 servicios de AWS, y ofrece cambio de perfiles y regiones, controles de teclado estilo Vim y autocompletado
  • Soporta inicio, detención y terminación de instancias EC2, vista detallada en JSON/YAML de recursos, además de filtrado y actualización en tiempo real
  • Ofrece varios métodos de instalación en macOS, Linux y Windows, incluyendo Homebrew, Cargo y descarga de binarios, y requiere configurar credenciales de AWS y permisos de IAM
  • Es un proyecto open source inspirado en k9s y creado con la librería Ratatui, que ofrece a los usuarios de AWS CLI una experiencia de administración visual e intuitiva

Resumen de taws

  • taws es un visor y administrador de recursos de AWS basado en terminal, diseñado para facilitar la exploración y gestión de infraestructura en AWS
    • Supervisa continuamente los cambios en los recursos de AWS y ofrece ejecución de comandos sobre los recursos observados
  • El objetivo del proyecto es simplificar y hacer más eficiente la administración de infraestructura en AWS
  • Está publicado bajo licencia MIT y fue escrito en Rust

Funciones principales

  • El soporte para múltiples perfiles y regiones permite cambiar fácilmente entre distintas cuentas y regiones de AWS
  • Soporta la exploración y administración de más de 94 tipos de recursos y más de 60 servicios
  • La actualización en tiempo real permite refrescar el estado de los recursos con una sola tecla
  • Controles de teclado similares a Vim para navegación rápida y ejecución de comandos
  • Incluye control de instancias EC2 (iniciar, detener, terminar)
  • Ofrece vista detallada en JSON/YAML, filtrado por nombre y propiedades y autocompletado con coincidencia difusa

Métodos de instalación

  • Homebrew (macOS/Linux): brew install huseyinbabal/tap/taws
  • Descarga de binarios precompilados: paquetes por arquitectura para macOS, Linux y Windows
  • Instalación con Cargo: cargo install taws
  • Compilación desde código fuente: requiere Rust 1.70 o superior, además de compilador y enlazador de C
    • Se proporcionan comandos de instalación de herramientas de desarrollo por plataforma (por ejemplo, xcode-select --install, sudo apt install build-essential -y)

Ejecución y configuración

  • Las credenciales de AWS se reconocen desde rutas estándar como aws configure, variables de entorno, roles de IAM y el archivo ~/.aws/credentials
  • Los permisos de IAM requieren como mínimo permisos Describe* y List*
  • Ejemplos de ejecución:
    • Ejecutar con el perfil predeterminado: taws
    • Especificar un perfil: taws --profile production
    • Especificar una región: taws --region us-west-2
    • Activar logs de depuración: taws --log-level debug
  • Ruta del archivo de logs:
    • Linux: ~/.config/taws/taws.log
    • macOS: ~/Library/Application Support/taws/taws.log
    • Windows: %APPDATA%\taws\taws.log

Atajos de teclado

  • Navegación: mover con j/k o teclas de flecha, cambiar de página con Ctrl-u/d
  • Cambio de vista: abrir el selector de recursos con :, ver detalles con Enter o d
  • Acciones: r refrescar, / filtrar, p cambiar perfil, R cambiar región, q salir
  • Control de EC2: s iniciar, S detener, T terminar

Servicios soportados

  • Soporta 30 servicios principales de AWS (cubriendo más del 95% del uso total)
    • Compute: EC2, Lambda, ECS, EKS, Auto Scaling
    • Storage: S3
    • Database: RDS, DynamoDB, ElastiCache
    • Networking: VPC, Route 53, CloudFront, API Gateway, ELB
    • Security: IAM, Secrets Manager, KMS, ACM, Cognito
    • Management: CloudFormation, CloudWatch Logs, CloudTrail, SSM, STS
    • Messaging: SQS, SNS, EventBridge
    • Containers: ECR
    • DevOps: CodePipeline, CodeBuild
    • Analytics: Athena

Configuración de variables de entorno

  • AWS_PROFILE: perfil predeterminado
  • AWS_REGION: región predeterminada
  • AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN: información de autenticación

Problemas conocidos

  • Algunos recursos pueden no ser accesibles con la política predeterminada de solo lectura
  • Debido a la paginación, la cantidad de recursos puede variar durante la carga
  • Algunos servicios globales como IAM, Route53 y CloudFront usan siempre la región us-east-1

Contribuciones y base tecnológica

  • Las contribuciones son bienvenidas, y antes de agregar un nuevo servicio se debe proponer en GitHub Discussions
  • Está inspirado en k9s y utiliza Ratatui (librería TUI de Rust) y aws-sigv4 (AWS SDK for Rust)
  • Como proyecto open source para la comunidad de AWS, registra 622 estrellas y 15 forks

Licencia

  • Se distribuye bajo MIT License
  • El código fuente y el archivo de licencia pueden consultarse en el repositorio de GitHub

1 comentarios

 
GN⁺ 2026-01-05
Comentarios en Hacker News
  • No termino de ver cuál es el atractivo de las TUI
    La ventaja de una CLI es la automatización con scripts y la componibilidad, pero una TUI solo se siente como una versión de baja resolución de una UI de navegador

    • Desde un punto de vista práctico, la mayoría de los programas centrados en el teclado son TUI
      En las GUI no se ven mucho este tipo de interfaces de teclado tan expresivas
    • Es atractivo poder operar en un servidor simplemente con una conexión de terminal
    • Por ejemplo, me encanta Lazygit. Es lo más rápido después de la CLI, y como también puedes ver información visual, me parece la forma más eficiente de trabajar con git
    • Si revisas k9s, es un buen ejemplo. La mayoría de las acciones se pueden hacer con una sola tecla
    • Sumando a otro comentario, una TUI se puede instalar en un servidor y usarse de forma remota por SSH
  • No me funcionó bien
    Me preocupa agregar una capa intermedia encima de la infraestructura de AWS. Un comando incorrecto o un bug podría tener consecuencias graves
    En AWS en particular hay muchas bases de datos con estado y cargas de trabajo de producción, así que recuperarse es difícil
    Está bien intentar mejorar la experiencia de la CLI, pero personalmente me cuesta confiar incluso en un modo de solo lectura
    Al menos la AWS CLI o la consola eliminan un punto posible de falla

    • Si es de solo lectura, ese nivel de cautela parece excesivo. Aunque falle, como mucho la herramienta se cae o muestra datos incorrectos
      Con la AWS CLI o la consola pasa lo mismo.
      Si gestionas los cambios con IaC, una herramienta para explorar recursos visualmente sí resulta útil. La consola de AWS es demasiado incómoda
    • Pienso parecido. Ya gestiono el aprovisionamiento con Terraform, y para tareas ad-hoc me basta con aws-cli
      Agregar otra capa más implica demasiado riesgo
    • Aun así, estaría bien poder ir rápido entre logs y consolas para entender la situación
      Si fuera para usarlo solo con permisos de solo lectura, como k9s, podría estar bien
    • Estaría bien que hubiera un motor que, como Terraform, mostrara un “plan” antes de ejecutar y no hiciera absolutamente nada más
  • Estaría bueno que en la barra de menú hubiera algo como “Precio de los cambios actuales (Price of Current Changes)”
    Para poder ver de inmediato si el cambio cuesta 0.01 dólares o 10,001 dólares

    • Uno piensa en lo bueno que sería si Amazon lo hubiera hecho así de simple
  • En el código hay un comentario // TODO: Handle credential_source, role_arn, source_profile, sso_*
    O sea, no soporta SSO ni inicio de sesión multi-cuenta, y obliga a usar directamente AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY
    En un entorno de producción eso me parece difícil de usar de verdad por el riesgo de seguridad

    • Yo también creo que la seguridad es importante, pero esta es una versión inicial. La idea es ir agregando funciones gradualmente incorporando el feedback de la comunidad
    • Si no soporta SSO, a mí también me costaría usarlo
  • Últimamente parece que un script de shell de 15 líneas de pronto termina creciendo hasta convertirse en una app CLI o TUI de bun de 50k líneas

    • Sirven para cosas distintas. aws-cli es para scripting y tareas repetitivas, mientras que este tipo de herramientas es para exploración y revisión puntual
      No hay que verlo como un reemplazo de la CLI existente, sino como un complemento
    • Dicho de otro modo, se siente como Electron dentro de la terminal
  • Si estás en una organización con varias cuentas de AWS, preparar los perfiles de antemano con herramientas como aws-sso-util hace mucho más rápido cambiar de cuenta

  • Cuando vi el título por primera vez, por un momento me emocioné pensando que significaba que la UI de AWS se había vuelto basada en terminal

  • Quizá sea una pregunta tonta, pero me da curiosidad si una TUI se ve bien también en una terminal con fondo claro

    • No es para nada una pregunta tonta. Soy de la generación de las viejas terminales de pantalla verde, así que me resulta mucho más cómodo texto negro sobre fondo blanco
      El modo oscuro más bien me cansa la vista
      Lamentablemente, en mi terminal de fondo claro la app se crasheó apenas arrancó, así que no pude probarlo
  • Se crashea apenas la ejecutas por primera vez. En ese estado va a ser difícil que se vuelva viral

    • Había un problema en el manejo de recursos, pero ya se corrigió en la versión 1.0.1, así que se puede intentar de nuevo
  • Ojalá más diseñadores de TUI hubieran experimentado interfaces de la época de mainframes como Hercules
    La filosofía de construcción de UI de esa época tiene mucho que enseñar

    • A mí también me da curiosidad esa parte. Las apps TUI de hoy se parecen mucho entre sí, así que me interesa saber cuál era el enfoque de diseño diferente de esa época
    • Me gustaría escuchar más en concreto qué era lo que te gustaba tanto