Skip to content

Install the Riptides CLI

The Riptides CLI (riptides-cli) is the primary tool for managing control plane resources. It provides the riptides-cli ctl command — a kubectl-compatible interface that handles authentication automatically — and riptides-cli context for managing multiple control plane connections.

Install via Homebrew:

Terminal window
brew tap riptides-packages/homebrew-tap
brew trust riptides-packages/tap
brew install --cask riptides-cli

Packages are available for amd64 and arm64. Replace <arch> with your architecture and <version> with the release you want (e.g. 0.5.16):

Terminal window
curl -LO https://github.com/riptides-packages/daemon/releases/download/v<version>/riptides-cli_<version>_linux_<arch>.deb
sudo dpkg -i riptides-cli_<version>_linux_<arch>.deb
Terminal window
curl -LO https://github.com/riptides-packages/daemon/releases/download/v<version>/riptides-cli_<version>_linux_<arch>.rpm
sudo rpm -i riptides-cli_<version>_linux_<arch>.rpm
Terminal window
curl -LO https://github.com/riptides-packages/daemon/releases/download/v<version>/riptides-cli_<version>_linux_<arch>.tar.gz
tar -xzf riptides-cli_<version>_linux_<arch>.tar.gz
sudo mv riptides-cli /usr/local/bin/

All releases are published at github.com/riptides-packages/daemon/releases.

Add a context for your control plane. This opens a browser window to complete OIDC authentication and saves the session locally under ~/.riptides/contexts/.

Terminal window
riptides-cli context add --url https://<your-env-id>.console.riptides.io

On the first run, a browser window opens to authenticate. After authenticating, the token is cached and reused on subsequent commands until it expires — at which point riptides-cli will prompt you to log in again.

Verify the connection:

Terminal window
riptides-cli ctl get daemons

If you connect to multiple control planes, use contexts to switch between them.

CommandDescription
riptides-cli context add [<name>]Add a new context and authenticate
riptides-cli context listList all saved contexts
riptides-cli context currentShow the active context
riptides-cli context use <name>Switch to a different context
riptides-cli context statusShow auth status for the current context
riptides-cli context login [<name>]Re-authenticate an existing context
riptides-cli context delete [<name>]Remove a context

To target a specific context for a single command without switching, use the --context flag:

Terminal window
riptides-cli --context staging ctl get daemons

riptides-cli ctl is a kubectl-compatible interface scoped to the Riptides control plane. It authenticates using your active context and defaults to the riptides-system namespace.

Supported subcommands: get, describe, delete, apply, patch, replace, diff, wait, edit, label, annotate, explain, api-resources, api-versions.

Terminal window
# List all connected daemons
riptides-cli ctl get daemons
# Inspect a WorkloadIdentity
riptides-cli ctl describe workloadidentity my-workload
# Apply a resource manifest
riptides-cli ctl apply -f my-resource.yaml
# Apply an inline manifest
riptides-cli ctl apply -f - <<EOF
apiVersion: core.riptides.io/v1alpha1
kind: WorkloadIdentity
metadata:
name: my-workload
namespace: riptides-system
spec:
workloadID: my-app/workload
selectors:
- process:name: my-app
connection:
tls:
mode: PERMISSIVE
EOF

Connection flags (--kubeconfig, --cluster, --context, --namespace, --user, --token, --server) are not available — the CLI derives all connection details from the active Riptides context automatically.