Installation¶
aws-tui supports Python 3.11, 3.12, and 3.13 on macOS, Linux, and Windows. Until the first PyPI release is published, install the application directly from its Git repository.
1. Isolated application install¶
Use either pipx or uv tool so aws-tui and its dependencies remain isolated
from system Python packages:
pipx install git+https://github.com/thekaveh/aws-tui.git
uv tool install git+https://github.com/thekaveh/aws-tui.git
Verify the installed console entry point:
aws-tui --version
2. Optional extras¶
pip install aws-tui installs everything the application needs. One feature
ships as an extra because its wheel is large relative to the rest of the
install:
| Extra | Installs | Enables |
|---|---|---|
duckdb |
duckdb>=1.3,<2 (~14 MB per platform) |
The Glue Iceberg Peek tab, which previews table rows by reading S3 directly |
pipx install "aws-tui[duckdb] @ git+https://github.com/thekaveh/aws-tui.git"
uv tool install "aws-tui[duckdb] @ git+https://github.com/thekaveh/aws-tui.git"
Without the extra, aws-tui runs normally and the Peek tab reports the missing engine and the install command rather than disappearing.
The first Peek query on a machine downloads DuckDB's httpfs, aws, and
iceberg extensions from extensions.duckdb.org and caches them under
~/.duckdb/. Queries after that need no connection beyond S3 itself. On a
host without egress to that domain the first query fails; pre-populating the
cache on a connected machine, or installing the extensions into the same
DuckDB version yourself, avoids it.
3. Development install¶
git clone https://github.com/thekaveh/aws-tui.git
cd aws-tui
uv sync --locked --all-groups
uv run aws-tui
The lockfile is the reproducibility baseline for development and CI. See Platforms for terminal and font guidance, then Connections to configure AWS profiles or S3-compatible endpoints.
4. Demo mode¶
Launch the complete interface against deterministic in-memory providers when AWS credentials are unavailable:
aws-tui --demo
Demo mode does not write the user's aws-tui configuration and does not issue AWS requests. Its local filesystem pane still points at the real local filesystem.
5. Release channels¶
The repository contains PyPI, TestPyPI, GitHub Release, and Homebrew automation, but the public PyPI package and Homebrew tap are not yet available. The Git installation above is the supported installation path until that first release completes.