a9s

Installation

Homebrew (macOS and Linux)

brew install k2m30/a9s/a9s

Scoop (Windows)

scoop bucket add a9s https://github.com/k2m30/scoop-a9s.git
scoop install a9s

Go install

go install github.com/k2m30/a9s/v3/cmd/a9s@latest

Download binary

Download the latest release for your platform from GitHub Releases.

Available platforms:

Windows note: Downloaded binaries may trigger a Microsoft Defender SmartScreen warning because they are not code-signed. Click “More info” → “Run anyway” to proceed, or install via Scoop to avoid this. Windows support is new and has been verified via cross-compilation and CI only — the maintainer does not have a Windows machine. If you encounter any issues, please open an issue.

Docker

# Demo mode (no AWS credentials needed)
docker run --rm -it ghcr.io/k2m30/a9s:latest --demo

# Real AWS access on a laptop — mount the whole ~/.aws directory so SSO
# tokens and static credentials resolve, and set AWS_EC2_METADATA_DISABLED
# so missing creds fail fast instead of timing out against the 169.254
# IMDS endpoint.
docker run --rm -it \
  -v ~/.aws:/home/a9s/.aws:ro \
  -e AWS_EC2_METADATA_DISABLED=true \
  ghcr.io/k2m30/a9s:latest

# On an EC2 host that should inherit the instance profile, omit the env
# var so the SDK can reach IMDS and pick up the attached role.
docker run --rm -it ghcr.io/k2m30/a9s:latest

For SSO profiles, run aws sso login --profile <name> on the host before starting the container so the cached token exists in ~/.aws/sso/cache.

To persist per-user view / theme customization across runs, also mount ~/.a9s: -v ~/.a9s:/home/a9s/.a9s. Without that mount the container ships with the built-in defaults only.

Build from source

Requires Go 1.26+.

git clone https://github.com/k2m30/a9s.git
cd a9s
make build
./a9s

Quick Start

a9s uses the standard AWS credential chain. Any of these work:

a9s                       # use default profile
a9s -p production         # use a specific profile
a9s -r eu-west-1          # override region
a9s -c ec2                # open directly to EC2 instances, skipping the menu
a9s -p prod -c events     # open CloudTrail events list in a specific profile
a9s --version             # print version
a9s --demo                # run with synthetic demo data (no AWS credentials needed)
a9s --no-cache            # disable resource availability cache
a9s --reset-views         # delete view configs and regenerate defaults
a9s --reset-themes        # delete theme files and regenerate defaults