Skip to main content
The Dedalus CLI manages Dedalus Cloud Services (DCS) from a terminal or automated workflow. API commands group actions under resources such as machines and usage. This guide covers stable workflows and command families. For the exact commands and flags supported by your installed version, use the generated --help output.

Install

Homebrew installs the version currently published in the tap. Compare dedalus --version with the latest CLI release; if the tap trails the release, use Go, curl, or PowerShell.
Verify the installation and inspect the available commands:

Authenticate

Create an API key in the Dedalus Dashboard, then export it in your shell:
Prefer the environment variable to --api-key in scripts. This keeps the key out of shell history and command arguments. Verify that the CLI can access your account:

Update

Update the current installation, or check for a newer release without installing it:
Homebrew and curl-installer installations update in place. On Windows, the command prints the PowerShell update command. Go users should rerun go install github.com/dedalus-labs/dedalus-cli/cmd/dedalus@latest; other unrecognized installs receive manual instructions. During interactive use, the CLI periodically checks for a newer release and asks before updating. Continuous integration jobs and commands without an interactive terminal skip this check. Set DEDALUS_NO_UPDATE_CHECK=1 to disable it in interactive shells. If an older CLI does not recognize dedalus update, reinstall it with the Go, curl, or PowerShell command above.

Command structure

API commands follow the resource hierarchy:

Manage a Machine

See Machine lifecycle for the state model and operations.

Work with Machine resources

For workflow details, see Executions, Terminals, Ports, and SSH.

Inspect organization usage

Usage commands use the organization associated with your API key:

Control input and output

The default output format is JSON. Use --format for human-readable YAML or the interactive explorer:
GJSON is the field-selection syntax for CLI JSON output. Use GJSON path syntax to transform each list item. This example prints one Machine ID per line without JSON quotes:
Commands with a request body also accept JSON or YAML from standard input:
Run dedalus <command> --help to inspect pagination flags and accepted input fields. Run dedalus --help to see the global output formats for your version.

Shell completions

Homebrew installs completions automatically. Manual installations can generate a script for Bash, zsh, Fish, or PowerShell. The command writes the script to standard output; source it for the current session or save it where your shell loads completions.

Command reference

The CLI generates its reference from the same command tree it executes. Add --help at any level to see the exact flags and nested commands in the installed release:
See the CLI repository for release notes and source code.
Last modified on August 19, 2026