Installing the CLI

The rwx CLI launches and manages RWX runs from your local machine, your CI, or your own scripts.

macOS

Install via Homebrew:

brew install rwx-cloud/tap/rwx

Windows Subsystem for Linux (WSL)

Install via Homebrew:

brew install rwx-cloud/tap/rwx

Linux

Download the latest release on GitHub for your platform and architecture. Move the binary into a directory on your PATH and make it executable.

curl -fsSL https://github.com/rwx-cloud/rwx/releases/download/latest/rwx-linux-x86_64 > rwx
chmod +x rwx
sudo install rwx /usr/local/bin/rwx

Authenticating

You'll need to log in to use the CLI. Run rwx login and it will facilitate the authentication process. To confirm that your CLI is authenticated, run rwx whoami. For programmatic use cases, you can use the RWX_ACCESS_TOKEN environment variable.

See Getting Started to walk through authenticating and running your first task.

Backwards compatibility

The rwx CLI does not currently follow Semantic Versioning (SemVer).

Within the current 3.x release series, we may make small changes that break backwards compatibility. We expect these changes to be fairly minor — things like adjustments to command output, flags, or defaults — and we expect that both humans and coding agents will be able to adapt to them easily.

Pinning a version for scripts

If you're writing a script or automation that invokes the rwx CLI, pin to a specific version rather than tracking the latest release. This insulates your script from any backwards-incompatible change.

Instead of downloading latest:

curl -fsSL https://github.com/rwx-cloud/rwx/releases/download/latest/rwx-linux-x86_64 > rwx

Pin to a version tag:

curl -fsSL https://github.com/rwx-cloud/rwx/releases/download/v3.9.0/rwx-linux-x86_64 > rwx

You can check which version is installed with rwx --version, and browse the available versions on the releases page.

When you're ready to adopt a newer version, bump the pinned version deliberately and confirm your script still behaves as expected.

Pinning via .tool-versions

If you're using a tool like asdf or mise-en-place to manage your tool versions at the repository level, you can pin the CLI version in your .tool-versions file.

github:rwx-cloud/rwx v3.19.0

Pinning on RWX

If you're installing the CLI within an RWX run, pin it the same way with the rwx/install-cli package's cli-version parameter.

tasks:
  - key: rwx-cli
    call: rwx/install-cli 4.0.5
    with:
      cli-version: v3.19.0

If you've defined your pinned version in your .tool-versions file for local usage, you can use that on RWX as well with the rwx/tool-versions package.

tasks:
  - key: code
    call: git/clone 2.0.0
    with:
      repository: https://github.com/YOUR_ORG/YOUR_REPO.git
      ref: ${{ init.ref }
      github-token: ${{ github.token }}

  - key: tool-versions
    use: code
    call: rwx/tool-versions 1.0.8
    filter: [.tool-versions]

  - key: rwx-cli
    call: rwx/install-cli 4.0.5
    with:
      cli-version: ${{ tasks.tool-versions.values.rwx }}