Installation¶
Install atb on Linux, macOS, or Windows using the one-line script, a pre-built binary, or from source.
Download pre-built binaries¶
Pre-built binaries for all platforms:
| Platform | Architecture | File |
|---|---|---|
| Linux | x86_64 (amd64) | atb-cli_<version>_linux_amd64.tar.gz |
| Linux | ARM64 | atb-cli_<version>_linux_arm64.tar.gz |
| macOS | Intel (amd64) | atb-cli_<version>_darwin_amd64.tar.gz |
| macOS | Apple Silicon (arm64) | atb-cli_<version>_darwin_arm64.tar.gz |
| Windows | x86_64 (amd64) | atb-cli_<version>_windows_amd64.zip |
| Windows | ARM64 | atb-cli_<version>_windows_arm64.zip |
Latest release: github.com/allthebacteria/atb-cli/releases/latest
Download the file for your platform, extract, and place the atb binary (or atb.exe on Windows) somewhere in your PATH.
One-line installer (Linux/macOS)¶
curl -fsSL https://raw.githubusercontent.com/allthebacteria/atb-cli/main/install.sh | bash
This detects your OS and architecture, downloads the latest release, and installs to ~/.local/bin. It will add the directory to your PATH automatically if needed.
# Install a specific version
curl -fsSL https://raw.githubusercontent.com/allthebacteria/atb-cli/main/install.sh | ATB_VERSION=v0.1.0 bash
# Install the binary to a custom directory
curl -fsSL https://raw.githubusercontent.com/allthebacteria/atb-cli/main/install.sh | ATB_INSTALL_DIR=/usr/local/bin bash
Environment variable placement
The env var goes after the pipe so it applies to bash, not curl. Writing ATB_INSTALL_DIR=/path curl ... | bash looks plausible but only sets the variable for the curl process — the install script run by bash never sees it.
Pick a data directory before fetching
ATB_INSTALL_DIR only controls where the atb binary lands, not where the database goes. A default atb fetch pulls the core parquet tables (~600 MB) and builds the per-genus AMR indexes, which expand to ~35 GB on disk. Add another ~4.2 GB if you run atb sketch fetch. By default everything goes to ~/.local/share/atb/data, which is often on a small home volume. To put it elsewhere, either pass --data-dir per command or set it once:
atb config set general.data_dir /path/to/large/volume
# or, ad hoc:
atb fetch --data-dir /path/to/large/volume
If you don't need AMR queries, you can skip that table to save the ~35 GB. atb fetch will prompt before downloading amrfinderplus.parquet; answer n to skip just that table and continue with the rest. To bypass the prompt non-interactively, either pre-select tables or pass --yes:
# Skip AMR explicitly (non-interactive)
atb fetch --tables assembly.parquet,assembly_stats.parquet,checkm2.parquet,sylph.parquet,run.parquet,mlst.parquet
# Or accept the AMR download without prompting
atb fetch --yes
Windows¶
Windows: Download the .zip from the Download pre-built binaries table above, extract, and add atb.exe to your PATH.
Other methods¶
# Go install (requires Go 1.23+)
go install github.com/allthebacteria/atb-cli/cmd/atb@latest
# From source
git clone https://github.com/allthebacteria/atb-cli.git
cd atb-cli
make build # binary at ./bin/atb
Docker¶
The repository ships a Dockerfile at its root for containerized use. You can build and run atb inside a container without installing Go or the binary directly on the host.
For MCP-server deployment with Docker Compose (docker compose up -d), see MCP server — that page covers the full setup including public access, SSE endpoints, and cloud deployment options.
Next: Quick start