◆ docs

The rickub CLI

rickub is a command-line client for rickub — create repositories, open merge requests, watch CI, and script anything the API can do.

Install

One command — it detects your OS and architecture, verifies the download's checksum, and drops rickub onto your PATH:

curl -sSL https://rickub.com/install.sh | sh
Note

The CLI is currently a release candidate (v0.1.0-rc.x): the installer tracks the latest prerelease until the first stable build ships.

Prefer not to pipe into a shell? Read the script first at rickub.com/install.sh, or install manually below.

Manual install

Download the archive for your platform, unpack it, and move the rickub binary onto your PATH:

OS Architecture uname -m Asset
Linux x86-64 x86_64 rickub_<version>_linux_amd64.tar.gz
Linux ARM64 aarch64 rickub_<version>_linux_arm64.tar.gz
macOS Apple Silicon arm64 rickub_<version>_darwin_arm64.tar.gz
macOS Intel x86_64 rickub_<version>_darwin_amd64.tar.gz

Every release publishes a SHA256SUMS file next to the archives; the assets live on the CLI releases page. For a specific version v0.1.0-rc.11, the stable download URL is https://rickub.com/rickub/cli/releases/download/v0.1.0-rc.11/rickub_0.1.0-rc.11_linux_amd64.tar.gz.

tar -xzf rickub_<version>_<os>_<arch>.tar.gz
sudo mv rickub /usr/local/bin/
rickub version

Verify, upgrade & uninstall

rickub version          # confirm the install and see the version
curl -sSL https://rickub.com/install.sh | sh   # upgrade: just re-run it
sudo rm /usr/local/bin/rickub                   # uninstall

Pin a version

Set RICKUB_CLI_VERSION to a release tag to install exactly that build; set RICKUB_INSTALL_DIR to choose where it lands.

RICKUB_CLI_VERSION=v0.1.0-rc.11 curl -sSL https://rickub.com/install.sh | sh
RICKUB_INSTALL_DIR="$HOME/.local/bin" curl -sSL https://rickub.com/install.sh | sh

Build from source

The CLI is a single Go binary, and it lives in its own repository: rickub/cli.

git clone https://git.rickub.com/rickub/cli.git
cd cli
go build -o rickub .
sudo mv rickub /usr/local/bin/

Log in

Authenticate once with a personal access token. The host and token are stored in ~/.config/rickub/config.yaml.

rickub auth login --host https://rickub.com
# or non-interactively:
echo $RICKUB_TOKEN | rickub auth login --with-token --host https://rickub.com

rickub auth status   # verify the stored token

Common commands

Commands are grouped by area, much like gh:

# Repositories
rickub repo create my-project --private
rickub repo view your-handle/my-project
rickub repo clone your-handle/my-project

# Merge requests
rickub pr create --title "Fix login" --base main
rickub pr list
rickub pr view 12
rickub pr merge 12

# CI runs
rickub run list
rickub run view 34
rickub run logs 34
rickub run rerun 34
rickub run cancel 34

# Review a merge request from the terminal
rickub pr line-comments 11
rickub pr comment 11 --file web/api.go --line 128 --intent request_change -b "guard the nil case"
rickub pr resolve 11 <comment-id>

# Organizations
rickub org view your-org
rickub org members your-org
rickub org teams your-org

# Search
rickub search repos "portal gun"

# Low-level API escape hatch
rickub api GET /api/v1/user
Tip

Run rickub <command> --help at any level to see subcommands and flags.

Note

The CLI calls them pr for short; they're the same merge requests you see in the web UI and the API.

Was this page helpful?