GitHub – huseyinbabal/taws: Terminal UI for AWS (taws)

💥 Check out this awesome post from Hacker News 📖

📂 **Category**:

💡 **What You’ll Learn**:

taws

taws provides a terminal UI to interact with your AWS resources. The aim of this project is to make it easier to navigate, observe, and manage your AWS infrastructure in the wild. taws continually watches AWS for changes and offers subsequent commands to interact with your observed resources.


License
Rust


EC2 Instances View

Lambda Functions View


  • Multi-Profile Support – Easily switch between AWS profiles
  • Multi-Region Support – Navigate across different AWS regions
  • 94+ Resource Types – Browse and manage resources across 60+ AWS services
  • Real-time Updates – Refresh resources with a single keystroke
  • Keyboard-Driven – Vim-like navigation and commands
  • Resource Actions – Start, stop, terminate EC2 instances directly
  • Detailed Views – JSON/YAML view of resource details
  • Filtering – Filter resources by name or attributes
  • Autocomplete – Smart resource type autocomplete with fuzzy matching

brew install huseyinbabal/tap/taws

Download Pre-built Binaries

Download the latest release from the Releases page.

Platform Architecture Download
macOS Apple Silicon (M1/M2/M3) taws-aarch64-apple-darwin.tar.gz
macOS Intel taws-x86_64-apple-darwin.tar.gz
Linux x86_64 taws-x86_64-unknown-linux-gnu.tar.gz
Linux ARM64 taws-aarch64-unknown-linux-gnu.tar.gz
Windows x86_64 taws-x86_64-pc-windows-msvc.zip

Quick Install (macOS/Linux)

# macOS Apple Silicon
curl -sL https://github.com/huseyinbabal/taws/releases/latest/download/taws-aarch64-apple-darwin.tar.gz | tar xz
sudo mv taws /usr/local/bin/

# macOS Intel
curl -sL https://github.com/huseyinbabal/taws/releases/latest/download/taws-x86_64-apple-darwin.tar.gz | tar xz
sudo mv taws /usr/local/bin/

# Linux x86_64
curl -sL https://github.com/huseyinbabal/taws/releases/latest/download/taws-x86_64-unknown-linux-gnu.tar.gz | tar xz
sudo mv taws /usr/local/bin/

# Linux ARM64
curl -sL https://github.com/huseyinbabal/taws/releases/latest/download/taws-aarch64-unknown-linux-gnu.tar.gz | tar xz
sudo mv taws /usr/local/bin/
  1. Download taws-x86_64-pc-windows-msvc.zip from the Releases page
  2. Extract the zip file
  3. Add the extracted folder to your PATH, or move taws.exe to a directory in your PATH

taws is built with Rust. Make sure you have Rust 1.70+ installed.

# Clone the repository
git clone https://github.com/huseyinbabal/taws.git
cd taws

# Build and run
cargo build --release
./target/release/taws

  • AWS Credentials – Configure your AWS credentials using one of:

    • aws configure (AWS CLI)
    • Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
    • IAM roles (when running on EC2/ECS/Lambda)
    • AWS profiles in ~/.aws/credentials
  • IAM Permissions – Your AWS user/role needs appropriate read permissions for the services you want to browse. At minimum, you’ll need Describe* and List* permissions.


# Launch taws with default profile
taws

# Launch with a specific profile
taws --profile production

# Launch in a specific region
taws --region us-west-2

Action Key Description
Navigation
Move up k / Move selection up
Move down j / Move selection down
Page up Ctrl-u Move up by page
Page down Ctrl-d Move down by page
Top g Jump to first item
Bottom G Jump to last item
Views
Resource picker : Open resource type selector
Describe Enter / d View resource details
Back Esc Go back to previous view
Help ? Show help screen
Actions
Refresh r Refresh current view
Filter / Filter resources
Profiles p Switch AWS profile
Regions R Switch AWS region
Quit q / Ctrl-c Exit taws
EC2 Actions
Start instance s Start selected EC2 instance
Stop instance S Stop selected EC2 instance
Terminate T Terminate selected EC2 instance


Press : to open the resource picker. Type to filter resources:

:ec2          # EC2 Instances
:lambda       # Lambda Functions
:s3           # S3 Buckets
:rds          # RDS Instances
:iam-users    # IAM Users
:eks          # EKS Clusters

Use Tab to autocomplete and Enter to select.


taws supports 30 core AWS services covering 95%+ of typical AWS usage:

Category Services
Compute EC2, Lambda, ECS, EKS, Auto Scaling
Storage S3
Database RDS, DynamoDB, ElastiCache
Networking VPC (Subnets, Security Groups), 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

Missing a service? Start a discussion to propose adding it!


taws looks for AWS credentials in the standard locations:

  • ~/.aws/credentials
  • ~/.aws/config
  • Environment variables

Variable Description
AWS_PROFILE Default AWS profile to use
AWS_REGION Default AWS region
AWS_ACCESS_KEY_ID AWS access key
AWS_SECRET_ACCESS_KEY AWS secret key
AWS_SESSION_TOKEN AWS session token (for temporary credentials)


  • Some resources may require specific IAM permissions not covered by basic read-only policies
  • Resource counts may vary during loading due to pagination
  • Some global services (IAM, Route53, CloudFront) always use us-east-1

Contributions are welcome! Please see our Contributing Guide for details.

Important: Before adding a new AWS service, please start a discussion first.


  • Inspired by k9s – the awesome Kubernetes CLI
  • Built with Ratatui – Rust TUI library
  • Uses aws-sigv4 for request signing

This project is licensed under the MIT License – see the LICENSE file for details.


Made with ❤️ for the AWS community

🔥 **What’s your take?**
Share your thoughts in the comments below!

#️⃣ **#GitHub #huseyinbabaltaws #Terminal #AWS #taws**

🕒 **Posted on**: 1767578957

🌟 **Want more?** Click here for more info! 🌟

By

Leave a Reply

Your email address will not be published. Required fields are marked *