---
title: Install (standalone binary)
path: install
status: published
---

# Installing ScaiFlux

ScaiFlux ships as a single self-contained Linux binary — no Python,
no pip, no virtualenv on the target machine. Download, decompress,
verify, drop on `$PATH`, run.

If you have Python and prefer `pip install`, see [`README.md`](./README.md)
for the wheel-based path. This document is for the no-Python case.

## Quick install (one-liner)

```bash
# Replace VERSION below with the release you want, e.g. 0.1.0
VERSION=0.1.0
BASE=https://downloads.scailabs.ai/dist/scaiflux
NAME=scaiflux-${VERSION}-linux-x86_64

curl -fLO "$BASE/$NAME.gz" \
  && curl -fLO "$BASE/$NAME.gz.sha256" \
  && sha256sum -c "$NAME.gz.sha256" \
  && gunzip "$NAME.gz" \
  && chmod +x "$NAME" \
  && mkdir -p ~/.local/bin \
  && mv "$NAME" ~/.local/bin/scaiflux \
  && echo "Installed to ~/.local/bin/scaiflux"
```

Make sure `~/.local/bin` is on your `$PATH`:

```bash
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc   # or ~/.zshrc
exec "$SHELL"   # reload
```

Verify:

```bash
scaiflux --version
scaiflux setup     # first-time wizard: endpoint + API key + default model
```

## Step-by-step (auditable)

If you'd rather see each step on its own, copy-paste these one at a
time:

```bash
# 1. Download the gzipped binary + its sha256.
curl -fLO https://downloads.scailabs.ai/dist/scaiflux/scaiflux-0.1.0-linux-x86_64.gz
curl -fLO https://downloads.scailabs.ai/dist/scaiflux/scaiflux-0.1.0-linux-x86_64.gz.sha256

# 2. Verify the download. This MUST print "OK" before you continue.
sha256sum -c scaiflux-0.1.0-linux-x86_64.gz.sha256

# 3. Decompress.
gunzip scaiflux-0.1.0-linux-x86_64.gz
# This produces:
#   scaiflux-0.1.0-linux-x86_64       (~25 MB executable)

# 4. Mark it executable.
chmod +x scaiflux-0.1.0-linux-x86_64

# 5. (Optional) verify the decompressed binary checksum too.
curl -fLO https://downloads.scailabs.ai/dist/scaiflux/scaiflux-0.1.0-linux-x86_64.sha256
sha256sum -c scaiflux-0.1.0-linux-x86_64.sha256

# 6. Move into PATH and rename.
mkdir -p ~/.local/bin
mv scaiflux-0.1.0-linux-x86_64 ~/.local/bin/scaiflux

# 7. Confirm.
scaiflux --version
```

## System-wide install

Install for all users instead of just yours:

```bash
sudo mv scaiflux-0.1.0-linux-x86_64 /usr/local/bin/scaiflux
sudo chmod +x /usr/local/bin/scaiflux
```

## First-run

Configure ScaiFlux interactively:

```bash
scaiflux setup
```

The wizard walks through three prompts:

1. Pick the ScaiGrid endpoint (default: ScaiLabs at
   `https://scaigrid.scailabs.ai`, or paste a custom URL).
2. Paste a ScaiGrid API key (`sgk_live_...`). Get one from your
   ScaiKey account dashboard.
3. Pick a default model from the discovered catalog.

Credentials are stored at `~/.scaiflux/credentials.json` (mode 0600).
Re-run `scaiflux setup` any time to reconfigure.

Once configured:

```bash
scaiflux                  # drop into the interactive REPL
scaiflux repl             # same thing, explicit
scaiflux prompt "say hi"  # one-shot prompt
scaiflux doctor           # health check
```

## Updating

To install a newer release, repeat the **Quick install** with the new
`VERSION`. The binary at `~/.local/bin/scaiflux` is just a file — it
gets overwritten in place. Your credentials, sessions, and config
files are stored separately (`~/.scaiflux/` and per-workspace
`.scaiflux.json`) and survive upgrades untouched.

## Uninstall

```bash
rm ~/.local/bin/scaiflux            # or /usr/local/bin/scaiflux
rm -rf ~/.scaiflux                  # credentials + sessions + memory
```

## Requirements

* **Linux x86_64**, any glibc.

  The binary is statically linked — `ldd ./scaiflux` reports `not a
  dynamic executable` — so there's no host glibc requirement.
  Works on Debian 11+, Ubuntu 20.04+, RHEL 8+, Fedora 33+, Arch,
  Alpine, etc.

* Nothing else for the binary itself.

* **Optional**: `git`, `gh`, and `ripgrep` enhance the tool surface
  (the `/diff`, `/commit`, `/pr`, `grep_search` paths get faster /
  fancier when these are on `$PATH`). All optional — `scaiflux
  doctor` reports which are present.

## Troubleshooting

**`./scaiflux: cannot execute binary file: Exec format error`**
You're on a different architecture than the binary was built for.
Check `uname -m` — the binary is for `x86_64`. ARM64 needs a
separate build.

**`./scaiflux: error while loading shared libraries: libc.so.6: version 'GLIBC_2.XX' not found`**
This shouldn't happen with releases ≥ 0.1.0 — the binary is
statically linked and brings its own libc. If you do see this,
you've likely downloaded a non-portable build. Re-download from the
official URL; if the problem persists, contact
downloads@scailabs.ai with the URL and the error.

**`sha256sum: WARNING: 1 computed checksum did NOT match`**
The download was corrupted or tampered with. Re-download. If it
fails again, contact downloads@scailabs.ai with the URL and the
checksum you're seeing.

**`scaiflux: command not found` after install**
`~/.local/bin` isn't on your `$PATH`. Either run the binary by full
path (`~/.local/bin/scaiflux ...`), or add the directory to `$PATH`
as shown in **Quick install**.

**First run: `No credentials configured`**
Run `scaiflux setup` to configure the endpoint + API key + default
model. ScaiFlux detects this on REPL launch and offers to run the
wizard for you on interactive terminals.

## Verifying provenance

Every release is published with two checksums on the downloads host:

* `<name>.gz.sha256` — over the compressed download (verify before
  decompressing).
* `<name>.sha256` — over the decompressed binary (verify after).

Match the line in the `.sha256` file against the output of
`sha256sum <file>` locally. If the two don't agree, do not run the
binary — re-download or report the mismatch.
