TUI and CLI tool for managing AWS SSO sessions with fuzzy search, account switching, and shell integration.
awsesh is a terminal user interface (TUI) and command-line tool for managing AWS Single Sign-On (SSO) sessions and account switching. It provides an interactive interface with fuzzy search filtering to navigate between AWS accounts and roles, eliminating the need to manually manage AWS credentials and session tokens.
The tool integrates with shell environments through the --eval flag, setting AWS environment variables (AWS_PROFILE, AWS_REGION, AWS_ACCESS_KEY_ID, etc.) for compatibility with AWS CLI tools and shell prompt utilities like Starship. It supports custom profile names that are remembered per account-role combination, and can open AWS console sessions directly in a browser. The tool respects XDG Base Directory specification and handles AWS credentials file management automatically.
Awsesh is designed for developers and DevOps engineers who frequently switch between multiple AWS accounts and roles in SSO environments. It includes safeguards for large AWS setups (>100 accounts) by implementing lazy-loading of roles to avoid API rate limiting. The tool writes session credentials to the AWS credentials file and provides both interactive TUI mode and direct CLI commands for scripting and automation workflows.
# via Homebrew
brew tap elva-labs/elva && brew install awsesh
# via Installation Script
curl -sSL https://raw.githubusercontent.com/elva-labs/awsesh/main/install.sh | bash

