CLI
Overview

CLI Overview

The redu CLI is the primary interface for working with the redu.cloud platform.

It is designed to be:

  • predictable
  • easy to explore
  • script-friendly
  • consistent across commands

You should be able to use the CLI effectively without needing any additional context.


Design principles

What to expect from the CLI:

  • Clear command grouping
    Commands are organized by domain (for example server, network, image).
  • Action-oriented commands
    Common actions follow familiar verbs such as list, create, delete, and update.
  • Explicit flags and arguments
    Options are named clearly and behave consistently.
  • Human-readable output by default
  • Machine-readable output when needed
    JSON output is available via --json where supported.

The CLI favors clarity and predictability over cleverness.


CLI structure

All commands follow the same general pattern:

redu <group> <command> [arguments] [flags]

Example:

redu server list

Top-level command groups

These are the main CLI domains:

auth        Authentication and credentials
server      Compute / virtual machines
network     Networks and security groups
image       Images
ssh         SSH access helpers
setup       Initial configuration and onboarding
whoami      Show current identity and context
ai          AI-related services (experimental)

Each group provides its own help output:

redu server --help

Authentication model

Most commands require authentication.

Authentication is handled interactively through the CLI:

redu auth -u <username>

Once authenticated, credentials are stored locally and reused automatically for future commands.

You do not need to manually pass credentials or tokens.


Output formats

By default, output is formatted for humans.

Where supported, you can request JSON output:

redu server list --json

JSON output is useful for:

  • scripting
  • piping into jq
  • automation tools

Help system

Help is available at every level of the CLI:

redu --help
redu server --help
redu server list --help

Use --help whenever you are unsure about arguments or flags. The CLI is designed to be discoverable.


Command behavior and conventions

General conventions across commands:

  • list commands return collections
  • commands act on clearly defined resources
  • errors are printed with a non-zero exit code
  • successful commands exit with code 0

These conventions make the CLI safe to use both interactively and in scripts.


Who this CLI is for

  • Developers working directly from the terminal
  • DevOps engineers automating infrastructure
  • Platform engineers managing environments

The CLI is designed to be fast, explicit, and reliable.