Installation
Install, verify, update, and uninstall the Fiveonefour CLI.
Requirements
- OS: macOS or Linux on x86_64 or aarch64
- Runs: sign-in (
ax auth loginorAX_API_KEY); sign up for an account. Runs execute in Fiveonefour-managed sandboxes, so no local Docker or provider keys are needed. See Model providers
Quick install
curl -fsSL https://dl.514.ax/install.sh | bash -s -- axax --helpThen sign up for an account, and sign in with ax auth login.
What the install script does
- Downloads the release archive for your OS/arch and verifies its SHA-256
checksum (and GPG signature when
gpgis present). - Installs it under
~/.fiveonefour/versions/axp/<channel>/<version>/. - Writes a version-pinning wrapper at
~/.fiveonefour/bin/axand putsaxon yourPATH(a symlink into a directory already onPATH, or aPATHexport appended to your shell rc).
Install with Homebrew
If you use Homebrew (including Linuxbrew), install the latest stable CLI from our tap:
brew install 514-labs/tap/ax
ax --helpThen sign up for an account, and sign in with ax auth login.
Homebrew tracks the latest stable release only. To install a specific version, a dev or branch build, or to pin versions, use Quick install.
Versions
Install a specific version by appending the version identifier to the quick install command:
curl -fsSL https://dl.514.ax/install.sh | bash -s -- ax@0.4.0-rpList available versions (pass stable, dev, or all after --list to narrow the channel):
curl -fsSL https://dl.514.ax/install.sh | bash -s -- --listCheck the active version:
ax --versionUpdate to the latest stable release:
ax updateHomebrew installs update with brew upgrade ax instead.
Version pinning
The ax command is a small wrapper. Each run, it takes the version from the first of these it finds:
- the
AX_VERSIONenv var (a version id orbranch:<name>) - the nearest
.ax-versionfile - the latest installed stable
A pinned version you don't have yet is downloaded on first use. Legacy AXP_VERSION and .axp-version still work. Homebrew installs skip the wrapper.
Install location
By default, Fiveonefour installs into ~/.fiveonefour. Set FIVEONEFOUR_HOME before running the installer if you need a different install root.
Telemetry
The installer, uninstaller, and CLI send a bounded product-telemetry event to Fiveonefour. Each event carries a random install id (cid) stored in ~/.fiveonefour/machine_id, plus command name, success, exit code, duration, CLI version, OS, and architecture. It does not collect prompts, SQL, credentials, command arguments, or hardware identifiers. Until you sign in, it also does not collect user or organization identity. Events that fail to send are kept locally for up to 24 hours and retried.
The first time a cid is minted — install, or the first CLI run on a machine that has none — the command names what is collected, this page, and how to opt out. Authenticating the CLI sends one alias event that links that cid to your account; anonymous rows are not rewritten. Deleting ~/.fiveonefour/machine_id starts a fresh, unlinked identity.
Disable it for the installer:
DO_NOT_TRACK=1 curl -fsSL https://dl.514.ax/install.sh | bash -s -- axDisable it for a CLI run:
DO_NOT_TRACK=1 ax experiment run experiment.yamlFor persistent opt-out, set telemetry_enabled = false in ~/.fiveonefour/config.toml. Opt-out sends nothing at all, including the install id: the cid file is neither minted nor read. Opting out also deletes any events still waiting to be retried in ~/.fiveonefour, without sending them.
In a recognized CI environment (a provider variable such as GITHUB_ACTIONS, GITLAB_CI, BUILDKITE, or CI=true), the CLI sends no command telemetry. To keep sending from CI, set AX_TELEMETRY_IN_CI=1; an explicit opt-out still wins.
Coding-agent sessions
When you run ax from a shell tool inside Claude Code or Codex, the CLI also tells your AX account which agent session it ran in, so the AX plugin can offer to send feedback at the end of that session. The report is signed in only and carries the agent client, the session id the agent already exports to its shell (CLAUDE_CODE_SESSION_ID or CODEX_SESSION_ID), and the command name (for example experiment.list). It never carries arguments, output, file names, or paths. It runs alongside your command, is skipped when you are signed out, and never changes the command's output or exit code.
Turn it off with AX_AGENT_SESSION_REPORT=0. Any of these also turns it off:
| Opt-out | Value |
|---|---|
DO_NOT_TRACK | 1 |
AX_FEEDBACK_OPT_OUT | true |
AX_TELEMETRY | 0 |
AX_TELEMETRY_ENABLED | false |
telemetry_enabled in ~/.fiveonefour/config.toml | false |
Troubleshooting
ax: command not found after install
The installer writes the wrapper to ~/.fiveonefour/bin/ax. If that directory was not already on PATH, it either symlinks into a PATH directory or appends an export to your shell rc.
Open a new shell, or source the rc file the installer updated:
# zsh
source ~/.zshrc
# bash
source ~/.bashrcOr add the path for the current session:
export PATH="$HOME/.fiveonefour/bin:$PATH"
ax --helpIf you installed with FIVEONEFOUR_HOME=<path>, use <path>/bin instead. See also Troubleshooting.
Checksum mismatch
If SHA-256 verification fails, retry the install. A transient download glitch is the usual cause. If it fails again with the same digest error, report it: the published archive and checksum should always match.
Uninstall
Uninstall the wrapper and cached CLI versions:
bash <(curl -fsSL https://download.514.ax/uninstall.sh) --yesHomebrew installs uninstall with brew uninstall ax instead.
The uninstaller removes installer-managed files only. Other files under ~/.fiveonefour, such as credentials or config, are left in place.