commands
A complete reference of every avocado command and subcommand on a single page, taken from --help of avocado 1.0.0-rc.5 (78732c3 2026-09-17). Use your browser's find (Ctrl+F / Cmd+F) to search.
Top-Level Commands
avocado
Avocado CLI - A command line interface for Avocado
Usage: avocado [OPTIONS] <COMMAND>
Commands:
sdk SDK related commands
ext Extension related commands
rootfs Rootfs sysroot and image commands
initramfs Initramfs sysroot and image commands
kernel Kernel image commands
sbom Emit an SPDX 3.0 SBOM of the packages installed in this project
init Initialize a new avocado project
runtime Runtime management commands
hitl Hardware-in-the-loop testing commands
vm Manage the local avocado-vm helper VM (macOS / Windows dev hosts)
container Container Dev Mode: iterate on containers running on a device
config Project configuration introspection (read-only)
clean Clean the avocado project by removing docker volumes and state files
install Install all components, or add specific packages to an extension/runtime/SDK
uninstall Remove packages from an extension, runtime, or SDK and update avocado.yaml
upgrade Upgrade the CLI to the latest (or specified) version
completion Generate a shell completion registration script
build Build all components (SDK compile, extensions, and runtime images)
fetch Fetch and refresh repository metadata for sysroots
provision Provision a runtime (shortcut for 'runtime provision')
deploy Deploy a runtime to a device (shortcut for 'runtime deploy')
signing-keys Manage signing keys for extension and image signing
var-key Operator-held recovery key for an encrypted /var (runtimes.<r>.var.recovery)
sign Sign runtime images (shortcut for 'runtime sign')
prune Remove abandoned Docker volumes no longer associated with active configs
save Save the current build state to a compressed archive
load Load build state from a compressed archive
unlock Unlock (remove lock entries for) sysroots to allow package updates
update Move a target forward: advance to the latest feed snapshot and re-resolve packages to their latest versions on the next install (rewrites the lock)
login Log in to Connect (shortcut for `connect auth login`)
connect Avocado Connect platform commands (auth, upload)
Options:
--target <TARGET> Global target architecture
--no-stamps Disable stamp validation and writing
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
-V, --version Print version
avocado build
Build all components (SDK compile, extensions, and runtime images)
Usage: avocado build [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-r, --runtime <RUNTIME> Runtime name to build (if not provided, builds all runtimes)
-e, --extension <EXTENSION> Extension name to build (if not provided, builds all required extensions)
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--output <OUTPUT> Output format. JSON skips TUI rendering and emits NDJSON events [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado clean
Clean the avocado project by removing docker volumes and state files
Usage: avocado clean [OPTIONS] [DIRECTORY]
Arguments:
[DIRECTORY] Directory to clean (defaults to current directory)
Options:
--skip-volumes
Skip cleaning docker volumes (volumes are cleaned by default)
--container-tool <CONTAINER_TOOL>
Container tool to use (docker/podman) [default: docker]
-v, --verbose
Enable verbose output
--stamps
Also remove stamp files (requires -C/--config and --target)
-C, --config <CONFIG>
Path to avocado.yaml configuration file (required when --stamps or --unlock is used)
--target <TARGET>
Target architecture (required when --stamps or --unlock is used)
-f, --force
Force removal by killing and removing containers using the volume
--unlock
Also unlock (clear lock file entries) for all sysroots (requires -C/--config)
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado completion
Generate a shell completion registration script.
The output is a small wrapper that, when sourced, makes the shell call `avocado` itself for each TAB press. That round-trip lets completions stay live for values that depend on the local `avocado.yaml` (extension/runtime/target names) and the user's signing-key registry.
Install: bash: `avocado completion bash > /etc/bash_completion.d/avocado` (or add `source <(avocado completion bash)` to ~/.bashrc) zsh: add `source <(avocado completion zsh)` to ~/.zshrc
Usage: avocado completion [OPTIONS] <SHELL>
Arguments:
<SHELL>
Shell to generate completions for
[possible values: bash, elvish, fish, powershell, zsh]
Options:
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado deploy
Deploy a runtime to a device (shortcut for 'runtime deploy')
Usage: avocado deploy [OPTIONS] --device <DEVICE> [NAME]
Arguments:
[NAME] Runtime name (must be defined in config)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-d, --device <DEVICE> Device to deploy to as [user@]host[:port] (e.g. root@192.168.1.100:2222)
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--connect-sign Sign TUF metadata via the Connect platform instead of locally. Use this when deploying to a device that has received a Connect OTA update. Requires a local signing key configured for the runtime (Level 2: signing.key + avocado connect trust promote-root --key <KEY>); without one no root.json is baked and the deploy fails during Phase 1 hash collection
--output <OUTPUT> Output format. JSON skips TUI rendering and emits NDJSON events [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado fetch
Fetch and refresh repository metadata for sysroots
Usage: avocado fetch [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-e, --extension <EXTENSION> Extension name to fetch metadata for (if not provided, fetches for all sysroots)
-r, --runtime <RUNTIME> Runtime name to fetch metadata for (if not provided, fetches for all sysroots)
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado init
Initialize a new avocado project
Usage: avocado init [OPTIONS] [DIRECTORY]
Arguments:
[DIRECTORY] Directory to initialize (defaults to current directory). When `--name` is also given, the project is created at <directory>/<name>/ instead of being written directly into <directory>
Options:
--target <TARGET>
Target architecture (e.g., "qemux86-64")
--reference <REFERENCE>
Reference example to initialize from (downloads from avocado-linux/references)
--reference-branch <REFERENCE_BRANCH>
Branch to fetch reference from (defaults to "main")
--reference-commit <REFERENCE_COMMIT>
Specific commit SHA to fetch reference from
--reference-repo <REFERENCE_REPO>
Repository to fetch reference from (format: "owner/repo", defaults to "avocado-linux/references")
--name <NAME>
Name for the new project. When provided, the project is created in `<directory>/<name>/`. Defaults to the reference name when initializing from a reference, or to the destination directory name otherwise
--output <OUTPUT>
Output format [default: human] [possible values: human, json]
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado install
Install all components, or add specific packages to an extension/runtime/SDK
Without packages: syncs all sysroots with avocado.yaml (installs missing, removes extraneous). With packages: adds them to the specified scope and writes to avocado.yaml.
Usage: avocado install [OPTIONS] [PACKAGES]...
Arguments:
[PACKAGES]...
Packages to install (when provided, adds to config and installs into the specified scope)
Options:
-e, --extension <EXTENSION>
Extension to install packages into (required when adding packages)
-C, --config <CONFIG>
Path to avocado.yaml configuration file
[default: avocado.yaml]
-v, --verbose
Enable verbose output
-f, --force
Reinstall extensions from scratch: clear every extension's sysroot and re-seed it.
Not needed to skip dnf's prompts — installs never prompt. Forcing discards every extension's built content, so the next build has to redo all of it.
-r, --runtime <RUNTIME>
Runtime name to install packages into (or sync when no packages given)
--sdk
Install packages into the SDK
--no-save
Skip writing packages to avocado.yaml
-t, --target <TARGET>
Target architecture
--target-board <TARGET_BOARD>
Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS>
Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS>
Additional arguments to pass to DNF commands
--output <OUTPUT>
Output format. JSON skips TUI rendering and emits NDJSON events
[default: human]
[possible values: human, json]
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado load
Load build state from a compressed archive
Usage: avocado load [OPTIONS] --input <INPUT>
Options:
-i, --input <INPUT>
Input archive file path
-C, --config <CONFIG>
Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose
Enable verbose output
--container-tool <CONTAINER_TOOL>
Container tool to use (docker/podman) [default: docker]
-f, --force
Overwrite existing volume and config if present
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado login
Log in to Connect (shortcut for `connect auth login`)
Your builds then identify themselves to the package feeds, which raises your rate limit and gives access to private feeds.
Usage: avocado login [OPTIONS]
Options:
--url <URL>
API URL (defaults to https://connect.peridio.com or AVOCADO_CONNECT_URL env var)
--profile <PROFILE>
Profile name (defaults to "default")
--token <TOKEN>
Use an existing API token instead of browser login
--org <ORG>
Organization id (UUID) to scope the new token to. Required for non-interactive multi-org logins; ignored when --token is set
--output <OUTPUT>
Output format
[default: human]
[possible values: human, json]
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado provision
Provision a runtime (shortcut for 'runtime provision')
Usage: avocado provision [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name (must be defined in config)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-f, --force Force the operation to proceed, bypassing warnings or confirmation prompts
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
--profile <PROVISION_PROFILE> Provision profile to use
--env <ENV> Environment variables to pass to the provision process
--out <OUT> Output path relative to src_dir for provisioning artifacts
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--list List the provisioning profiles available for the resolved target instead of provisioning. Reads the stone manifest from the installed SDK volume; requires `avocado install` to have run
--output <OUTPUT> Output format. JSON skips TUI rendering and emits NDJSON events [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado prune
Remove abandoned Docker volumes no longer associated with active configs
Usage: avocado prune [OPTIONS]
Options:
--container-tool <CONTAINER_TOOL>
Container tool to use (docker/podman) [default: docker]
-v, --verbose
Enable verbose output
--dry-run
Perform a dry run without actually removing volumes
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado save
Save the current build state to a compressed archive
Usage: avocado save [OPTIONS] --output <OUTPUT>
Options:
-o, --output <OUTPUT>
Output file path (e.g. state.tar.gz)
-C, --config <CONFIG>
Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose
Enable verbose output
-t, --target <TARGET>
Target architecture
--container-tool <CONTAINER_TOOL>
Container tool to use (docker/podman) [default: docker]
--include-src
Include the src_dir contents in the archive
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado sbom
Emit an SPDX 3.0 SBOM of the packages installed in this project
Usage: avocado sbom [OPTIONS]
Options:
-o, --output-path <PATH> Write the document here instead of to stdout
-C, --config <CONFIG> Path to avocado.yaml (defaults to ./avocado.yaml) [default: ./avocado.yaml]
-t, --target <TARGET> Target architecture
--include-sdk Also describe the SDK and target sysroot. They run on the build host and ship nothing to a device, so they are excluded by default: an SBOM answering "what is on this device" must not list the cross toolchain alongside what the device actually holds
-v, --verbose Verbose output
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--output <OUTPUT> Output format. The document itself is JSON-LD either way; this only controls whether the summary lines accompany it [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sign
Sign runtime images (shortcut for 'runtime sign')
Usage: avocado sign [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name to sign (if not provided, signs all runtimes with signing config)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado uninstall
Remove packages from an extension, runtime, or SDK and update avocado.yaml
Usage: avocado uninstall [OPTIONS] <PACKAGES>...
Arguments:
<PACKAGES>... Packages to remove
Options:
-e, --extension <EXTENSION> Extension to remove packages from
-r, --runtime <RUNTIME> Runtime to remove packages from
--sdk Remove packages from the SDK
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-f, --force Force the operation to proceed, bypassing warnings or confirmation prompts
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado unlock
Unlock (remove lock entries for) sysroots to allow package updates
Usage: avocado unlock [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-e, --extension <EXTENSION> Unlock a specific extension
-r, --runtime <RUNTIME> Unlock a specific runtime
--sdk Unlock SDK (rootfs, initramfs, target-sysroot, and all SDK arches)
--rootfs Unlock rootfs
--initramfs Unlock initramfs
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado update
Move a target forward: advance to the latest feed snapshot and re-resolve packages to their latest versions on the next install (rewrites the lock)
Usage: avocado update [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado upgrade
Upgrade the CLI to the latest (or specified) version
Usage: avocado upgrade [OPTIONS]
Options:
--version <VERSION> Controls what version to upgrade to. If not specified, the latest version will be used
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Connect Commands
avocado connect
Avocado Connect platform commands (auth, upload)
Usage: avocado connect [OPTIONS] <COMMAND>
Commands:
auth Authenticate with the Connect platform
init Initialize connect settings in avocado.yaml (org, project, server key, extensions, claim token, device config)
clean Remove connect configuration (connect section, connect-config extension, and device config overlay)
orgs Manage organizations
ext Publish extensions to the feed (super-admin)
projects Manage projects
devices Manage devices
cohorts Manage cohorts
runtimes List uploaded runtimes on the Connect platform
claim-tokens Manage claim tokens
upload Upload current runtime build to the Connect platform
deploy Deploy a runtime to a cohort
server-key Retrieve the Connect server's TUF signing public key
keys Manage signing keys registered with the Connect server
trust Fleet trust posture commands
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect auth
Authenticate with the Connect platform
Usage: avocado connect auth [OPTIONS] <COMMAND>
Commands:
login Login to the Connect platform
logout Logout from the Connect platform
status Show current auth status
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect auth login
Login to the Connect platform
Usage: avocado connect auth login [OPTIONS]
Options:
--url <URL> API URL (defaults to https://connect.peridio.com or AVOCADO_CONNECT_URL env var)
--profile <PROFILE> Profile name (defaults to "default")
--token <TOKEN> Use an existing API token instead of browser login
--org <ORG> Organization id (UUID) to scope the new token to. Required for non-interactive multi-org logins; ignored when --token is set
--output <OUTPUT> Output format [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect auth logout
Logout from the Connect platform
Usage: avocado connect auth logout [OPTIONS]
Options:
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect auth status
Show current auth status
Usage: avocado connect auth status [OPTIONS]
Options:
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect init
Initialize connect settings in avocado.yaml (org, project, server key, extensions, claim token, device config)
Usage: avocado connect init [OPTIONS]
Options:
--org <ORG> Organization ID (skip interactive prompt)
--project <PROJECT> Project ID (skip interactive prompt)
--cohort <COHORT> Cohort ID (skip interactive prompt)
-r, --runtime <RUNTIME> Runtime to add connect extensions to (default: dev) [default: dev]
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or NDJSON event stream) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect clean
Remove connect configuration (connect section, connect-config extension, and device config overlay)
Usage: avocado connect clean [OPTIONS]
Options:
-r, --runtime <RUNTIME> Runtime to remove connect-config extension from (default: dev) [default: dev]
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Removes Connect state from the project: strips the connect: section and the avocado-ext-connect-config extension from avocado.yaml, and deletes overlay/etc/avocado-conn/. Operations are idempotent — missing items are skipped with an info message.
avocado connect orgs
Manage organizations
Usage: avocado connect orgs [OPTIONS] <COMMAND>
Commands:
list List organizations you belong to
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect orgs list
List organizations you belong to
Usage: avocado connect orgs list [OPTIONS]
Options:
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect ext
Publish extensions to the feed (super-admin)
Usage: avocado connect ext [OPTIONS] <COMMAND>
Commands:
publish Build-once publish a packaged extension RPM to the feed (super-admin)
status Show the status of a published extension version
list List published extension versions
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect ext publish
Build-once publish a packaged extension RPM to the feed (super-admin)
Usage: avocado connect ext publish [OPTIONS] <RPM>
Arguments:
<RPM> Path to the extension RPM (from `avocado ext package`)
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--name <NAME> Extension name (default: parsed from the RPM filename)
--version <VERSION> Extension version (default: parsed from the RPM filename)
--release <RELEASE> Extension release (default: parsed, else r0)
--arch <ARCH> Extension arch (default: parsed, else noarch)
--targets <TARGETS> Override the target machines (comma-separated). Defaults to the project's `supported_targets` from avocado.yaml; only pass this to override that
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect ext status
Show the status of a published extension version
Usage: avocado connect ext status [OPTIONS] <ID>
Arguments:
<ID> Version id
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect ext list
List published extension versions
Usage: avocado connect ext list [OPTIONS]
Options:
--name <NAME> Filter by package name
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect projects
Manage projects
Usage: avocado connect projects [OPTIONS] <COMMAND>
Commands:
list List projects in an organization
create Create a new project
delete Delete a project
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect projects list
List projects in an organization
Usage: avocado connect projects list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect projects create
Create a new project
Usage: avocado connect projects create [OPTIONS] --name <NAME>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--name <NAME> Project name
--description <DESCRIPTION> Project description
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect projects delete
Delete a project
Usage: avocado connect projects delete [OPTIONS] --id <ID>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--id <ID> Project ID to delete
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices
Manage devices
Usage: avocado connect devices [OPTIONS] <COMMAND>
Commands:
list List devices in an organization
create Create a new device
delete Delete a device
reclaim Manage admin-approved device reclaim requests
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices list
List devices in an organization
Usage: avocado connect devices list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices create
Create a new device
Usage: avocado connect devices create [OPTIONS] --name <NAME> --identifier <IDENTIFIER>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--name <NAME> Device name
--identifier <IDENTIFIER> Device identifier (must be unique per org)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices delete
Delete a device
Usage: avocado connect devices delete [OPTIONS] --id <ID>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--id <ID> Device ID to delete
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices reclaim
Manage admin-approved device reclaim requests
Usage: avocado connect devices reclaim [OPTIONS] <COMMAND>
Commands:
list List reclaim requests (defaults to pending)
approve Approve a pending reclaim request
deny Deny a pending reclaim request
delete Delete a denied reclaim request (recovery for typo'd denies)
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices reclaim list
List reclaim requests (defaults to pending)
Usage: avocado connect devices reclaim list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--status <STATUS> Filter by status [default: pending] [possible values: pending, approved, completed, denied, expired, all]
--device-id <DEVICE_ID> Filter to a single device by id. Returns at most one row when combined with --status pending (the partial unique index allows one pending reclaim per device)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices reclaim approve
Approve a pending reclaim request
Usage: avocado connect devices reclaim approve [OPTIONS] <ID>
Arguments:
<ID> Reclaim request ID
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices reclaim deny
Deny a pending reclaim request
Usage: avocado connect devices reclaim deny [OPTIONS] <ID>
Arguments:
<ID> Reclaim request ID
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--reason <REASON> Reason for denial (max 1024 chars). If omitted, prompts interactively. Pass --reason "" to skip
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect devices reclaim delete
Delete a denied reclaim request (recovery for typo'd denies)
Usage: avocado connect devices reclaim delete [OPTIONS] <ID>
Arguments:
<ID> Reclaim request ID
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect cohorts
Manage cohorts
Usage: avocado connect cohorts [OPTIONS] <COMMAND>
Commands:
list List cohorts in a project
create Create a new cohort
delete Delete a cohort
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect cohorts list
List cohorts in a project
Usage: avocado connect cohorts list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect cohorts create
Create a new cohort
Usage: avocado connect cohorts create [OPTIONS] --name <NAME>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
--name <NAME> Cohort name
--description <DESCRIPTION> Cohort description
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect cohorts delete
Delete a cohort
Usage: avocado connect cohorts delete [OPTIONS] --id <ID>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
--id <ID> Cohort ID to delete
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect runtimes
List uploaded runtimes on the Connect platform
Usage: avocado connect runtimes [OPTIONS] <COMMAND>
Commands:
list List runtimes uploaded to the Connect platform
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect runtimes list
List runtimes uploaded to the Connect platform
Usage: avocado connect runtimes list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect claim-tokens
Manage claim tokens
Usage: avocado connect claim-tokens [OPTIONS] <COMMAND>
Commands:
list List claim tokens in an organization
create Create a new claim token
delete Delete a claim token
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect claim-tokens list
List claim tokens in an organization
Usage: avocado connect claim-tokens list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect claim-tokens create
Create a new claim token
Usage: avocado connect claim-tokens create [OPTIONS] --name <NAME>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (skip interactive prompt)
--cohort <COHORT> Cohort ID (skip interactive prompt)
--name <NAME> Token name
-t, --tag <TAG> Tags to associate with devices claimed using this token (repeatable)
--max-uses <MAX_USES> Maximum number of times this token can be used
--no-expiration Disable expiration (default: expires in 24h)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect claim-tokens delete
Delete a claim token
Usage: avocado connect claim-tokens delete [OPTIONS] --id <ID>
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--id <ID> Claim token ID to delete
-y, --yes Skip confirmation prompt
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect upload
Upload current runtime build to the Connect platform
Usage: avocado connect upload [OPTIONS] --version <VERSION> <RUNTIME>
Arguments:
<RUNTIME> Runtime name to upload
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
--version <VERSION> Human-readable version for this upload (e.g. v0.0.2-dev)
--description <DESCRIPTION> Description for the upload
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--file <FILE> Path to pre-built tarball or artifact directory (skips export from Docker volume)
--profile <PROFILE> Profile name (defaults to the active default profile)
--publish Publish the runtime immediately after upload (draft → published)
--deploy-cohort <DEPLOY_COHORT> Deploy after upload: cohort ID to target
--deploy-name <DEPLOY_NAME> Deploy after upload: deployment name (auto-generated if omitted)
--deploy-tag <DEPLOY_TAG> Deploy after upload: filter by tags (repeatable)
--deploy-activate Deploy after upload: activate immediately (skip draft)
--output <OUTPUT> Output format (human prose or NDJSON event stream) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect deploy
Deploy a runtime to a cohort
Usage: avocado connect deploy [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--project <PROJECT> Project ID (or set connect.project in avocado.yaml)
--runtime <RUNTIME> Runtime ID (skip interactive prompt)
--cohort <COHORT> Cohort ID (skip interactive prompt)
--name <NAME> Deployment name (auto-generated if omitted)
--description <DESCRIPTION> Description for the deployment
-t, --tag <TAG> Filter by tags — only deploy to devices with these tags (repeatable)
--activate Activate immediately (skip draft status)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--output <OUTPUT> Output format (human prose or NDJSON event stream) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect server-key
Retrieve the Connect server's TUF signing public key
Usage: avocado connect server-key [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect keys
Manage signing keys registered with the Connect server
Usage: avocado connect keys [OPTIONS] <COMMAND>
Commands:
register Register a local signing key with the Connect server
approve Approve a staged delegate key (admin only)
list List delegate keys registered with the server
retire Discard a staged delegate key
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect keys register
Register a local signing key with the Connect server
Usage: avocado connect keys register [OPTIONS] --type <KEY_TYPE> --key <KEY>
Options:
--type <KEY_TYPE> Key type: content or root
--key <KEY> Name of the local signing key (from 'avocado signing-keys list')
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect keys approve
Approve a staged delegate key (admin only)
Usage: avocado connect keys approve [OPTIONS] <KEYID>
Arguments:
<KEYID> Key ID of the staged key to approve
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect keys list
List delegate keys registered with the server
Usage: avocado connect keys list [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
--type <KEY_TYPE> Filter by key type: content or root
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect keys retire
Discard a staged delegate key
Usage: avocado connect keys retire [OPTIONS] <KEYID>
Arguments:
<KEYID> Key ID of the staged key to discard
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect trust
Fleet trust posture commands
Usage: avocado connect trust [OPTIONS] <COMMAND>
Commands:
status Show fleet trust status for an organization
promote-root Promote root trust to user control (Level 1 → 2)
rotate-server-key Rotate the server signing key
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect trust status
Show fleet trust status for an organization
Usage: avocado connect trust status [OPTIONS]
Options:
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect trust promote-root
Promote root trust to user control (Level 1 → 2)
Usage: avocado connect trust promote-root [OPTIONS] --key <KEY>
Options:
--key <KEY> Name of the local root signing key to use
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado connect trust rotate-server-key
Rotate the server signing key
Usage: avocado connect trust rotate-server-key [OPTIONS]
Options:
--key <KEY> Name of the local root signing key (required at security level 2)
--org <ORG> Organization ID (or set connect.org in avocado.yaml)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--profile <PROFILE> Profile name (defaults to the active default profile)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Extension Commands
avocado ext
Extension related commands
Usage: avocado ext [OPTIONS] <COMMAND>
Commands:
install Install dependencies into extension sysroots
fetch Fetch remote extensions from repo, git, or path sources
build Build sysext and/or confext extensions from configuration
list List extension names
deps List dependencies for extensions
dnf Run DNF commands in an extension's context
clean Clean an extension's sysroot
checkout Check out files from extension sysroot to source directory
image Create squashfs image from system extension
package Package extension sysroot into an RPM
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext install
Install dependencies into extension sysroots
Usage: avocado ext install [OPTIONS] [NAME]
Arguments:
[NAME]
Extension name (if not provided, installs all extensions)
Options:
-C, --config <CONFIG>
Path to avocado.yaml configuration file
[default: avocado.yaml]
-v, --verbose
Enable verbose output
-f, --force
Reinstall from scratch: clear this extension's sysroot and re-seed it.
Not needed to skip dnf's prompts — installs never prompt. Forcing discards the extension's built content, so the next build has to redo it.
-t, --target <TARGET>
Target architecture
--container-arg <CONTAINER_ARGS>
Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS>
Additional arguments to pass to DNF commands
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado ext fetch
Fetch remote extensions from repo, git, or path sources
Usage: avocado ext fetch [OPTIONS] [NAME]
Arguments:
[NAME] Extension name (if not provided, fetches all remote extensions)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-f, --force Force re-fetch even if already installed
--locked Fail instead of updating avocado.lock: a declared extension with no lock entry, a pinned version that moved, or a pin that cannot satisfy the current requirements. Never writes the lock. Use this in CI
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext build
Build sysext and/or confext extensions from configuration
Usage: avocado ext build [OPTIONS] [NAME]
Arguments:
[NAME] Extension name (must be defined in config)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
-r, --runtime <RUNTIME> Runtime to build the extension against (kernel/rootfs context). Required when the project has multiple runtimes. Resolves from AVOCADO_RUNTIME / default_runtime / sole-runtime when omitted
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext list
List extension names
Usage: avocado ext list [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext deps
List dependencies for extensions
Usage: avocado ext deps [OPTIONS] [NAME]
Arguments:
[NAME] Extension name (if not provided, shows all extensions)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext dnf
Run DNF commands in an extension's context
Usage: avocado ext dnf [OPTIONS] --extension <EXTENSION> [COMMAND]...
Arguments:
[COMMAND]... DNF command and arguments to execute
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-e, --extension <EXTENSION> Name of the extension to operate on
-t, --target <TARGET> Target architecture
-r, --runtime <RUNTIME> Runtime context for the dnf operation (scopes which extension sysroot tree dnf operates on)
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext clean
Clean an extension's sysroot
Usage: avocado ext clean [OPTIONS] [NAME]
Arguments:
[NAME] Extension name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-r, --runtime <RUNTIME> Runtime context for the clean (resolves which extension sysroot tree to operate on). Falls through to legacy per-target behavior when no runtime resolves
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext checkout
Check out files from extension sysroot to source directory
Usage: avocado ext checkout [OPTIONS] --ext-path <EXT_PATH> --src-path <SRC_PATH> [NAME]
Arguments:
[NAME] Extension name
Options:
-C, --config <CONFIG>
Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose
Enable verbose output
-t, --target <TARGET>
Target architecture
-r, --runtime <RUNTIME>
Runtime context for the checkout (selects which sysroot tree the files come from)
--ext-path <EXT_PATH>
Path within the extension sysroot to checkout (e.g., /etc/config.json or /etc for directory)
--src-path <SRC_PATH>
Destination path in source directory (relative to src root)
--container-tool <CONTAINER_TOOL>
Container tool to use (docker/podman) [default: docker]
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help
avocado ext image
Create squashfs image from system extension
Usage: avocado ext image [OPTIONS] [NAME]
Arguments:
[NAME] Extension name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-r, --runtime <RUNTIME> Runtime to image the extension under (kernel/rootfs context). Same resolution rules as `ext build -r`
--out <OUT_DIR> Output directory on host to copy the resulting image to
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado ext package
Package extension sysroot into an RPM
Usage: avocado ext package [OPTIONS] [NAME]
Arguments:
[NAME] Extension name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-r, --runtime <RUNTIME> Runtime context for the package operation
--out-dir <OUTPUT_DIR> Output directory on host for the RPM package (relative or absolute path). If not specified, RPM stays in container at $AVOCADO_PREFIX/output/extensions
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Runtime Commands
avocado runtime
Runtime management commands
Usage: avocado runtime [OPTIONS] <COMMAND>
Commands:
install Install dependencies into runtime installroots
build Build a runtime
provision Provision a runtime
list List runtime names
deps List dependencies for a runtime
dnf Run DNF commands in a runtime's context
clean Clean runtime installroot directory
deploy Deploy a runtime to a device
sign Sign runtime images
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime install
Install dependencies into runtime installroots
Usage: avocado runtime install [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name (if not provided, installs for all runtimes)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime build
Build a runtime
Usage: avocado runtime build [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-f, --force Force the operation to proceed, bypassing warnings or confirmation prompts
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime provision
Provision a runtime
Usage: avocado runtime provision [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-f, --force Force the operation to proceed, bypassing warnings or confirmation prompts
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
--profile <PROVISION_PROFILE> Provision profile to use
--env <ENV> Environment variables to pass to the provision process
--out <OUT> Output path relative to src_dir for provisioning artifacts
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime list
List runtime names
Usage: avocado runtime list [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime deps
List dependencies for a runtime
Usage: avocado runtime deps [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime dnf
Run DNF commands in a runtime's context
Usage: avocado runtime dnf [OPTIONS] --runtime <RUNTIME> [COMMAND]...
Arguments:
[COMMAND]... DNF command and arguments to execute
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-r, --runtime <RUNTIME> Name of the runtime to operate on
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime clean
Clean runtime installroot directory
Usage: avocado runtime clean [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime deploy
Deploy a runtime to a device
Usage: avocado runtime deploy [OPTIONS] --device <DEVICE> [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
-d, --device <DEVICE> Device to deploy to as [user@]host[:port] (e.g. root@192.168.1.100:2222)
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--connect-sign Sign TUF metadata via the Connect platform instead of locally. Use this when deploying to a device that has received a Connect OTA update. Requires a local signing key configured for the runtime (Level 2: signing.key + avocado connect trust promote-root --key <KEY>); without one no root.json is baked and the deploy fails during Phase 1 hash collection
--output <OUTPUT> Output format. JSON skips TUI rendering and emits NDJSON events [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado runtime sign
Sign runtime images
Usage: avocado runtime sign [OPTIONS] [NAME]
Arguments:
[NAME] Runtime name
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
SDK Commands
avocado sdk
SDK related commands
Usage: avocado sdk [OPTIONS] <COMMAND>
Commands:
run Create and run an SDK container
deps List SDK dependencies
compile Run compile scripts
dnf Run DNF commands in the SDK context
install Install dependencies into the SDK
clean Remove the SDK directory Clean the SDK or run clean scripts for specific compile sections
package Package a compiled SDK section into an RPM
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk run
Create and run an SDK container
Usage: avocado sdk run [OPTIONS] [COMMAND]...
Arguments:
[COMMAND]... Command and arguments to run in container
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--name <NAME> Assign a name to the container
-d, --detach Run container in background and print container ID
--rm <RM> Automatically remove the container when it exits (default: true) [default: true] [possible values: true, false]
-i, --interactive Drop into interactive shell in container
-v, --verbose Enable verbose output
-E, --env Source the avocado SDK environment before running command
-e, --extension <EXTENSION> Mount extension sysroot and change working directory to it
-r, --runtime <RUNTIME> Mount runtime sysroot and change working directory to it
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--no-bootstrap Skip SDK bootstrap initialization and go directly to container prompt
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk deps
List SDK dependencies
Usage: avocado sdk deps [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk compile
Run compile scripts
Usage: avocado sdk compile [OPTIONS] [SECTIONS]...
Arguments:
[SECTIONS]... Specific compile sections to run
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk dnf
Run DNF commands in the SDK context
Usage: avocado sdk dnf [OPTIONS] [COMMAND]...
Arguments:
[COMMAND]... DNF command and arguments to execute
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk install
Install dependencies into the SDK
Usage: avocado sdk install [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--target-board <TARGET_BOARD> Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk clean
Remove the SDK directory Clean the SDK or run clean scripts for specific compile sections
Usage: avocado sdk clean [OPTIONS] [SECTIONS]...
Arguments:
[SECTIONS]... Specific compile sections to clean (runs their clean scripts)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado sdk package
Package a compiled SDK section into an RPM
Usage: avocado sdk package [OPTIONS] <SECTION>
Arguments:
<SECTION> Compile section to package (must have a 'package' block in config)
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--out <OUT_DIR> Output directory on host for the built RPM(s)
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Signing Key Commands
avocado signing-keys
Manage signing keys for extension and image signing
Usage: avocado signing-keys [OPTIONS] <COMMAND>
Commands:
create Create a new signing key or register an external PKCS#11 key
import Import an existing RSA PEM key and certificate (for boot-FIT signing)
list List all registered signing keys
remove Remove a signing key
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado signing-keys create
Create a new signing key or register an external PKCS#11 key
Usage: avocado signing-keys create [OPTIONS] [NAME]
Arguments:
[NAME] Name for the key (defaults to key ID if not provided)
Options:
--uri <URI> PKCS#11 URI for hardware-backed keys (e.g., 'pkcs11:token=YubiKey;object=signing-key')
--pkcs11-device <DEVICE> Hardware device type (tpm, yubikey, or auto-detect)
--token <TOKEN> PKCS#11 token label (e.g., 'avocado', 'YubiKey PIV'). If not provided, uses the first available token
--key-label <LABEL> Label of existing key to reference in the device
--generate Generate a new key in the device
--auth <METHOD> Authentication method for PKCS#11 device (none, prompt, env) [default: prompt]
--algorithm <ALGORITHM> Key algorithm: ed25519 (default), rsa2048 / rsa4096 for boot-FIT signing (a PEM key + self-signed certificate, generated with openssl), or hmac-sha256 for the secret master a runtime's var.recovery names [default: ed25519]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado signing-keys import
Import an existing RSA PEM key and certificate (for boot-FIT signing)
Usage: avocado signing-keys import [OPTIONS] --key <FILE> --cert <FILE> <NAME>
Arguments:
<NAME> Name for the key, referenced from `runtimes.<name>.signing.fit_key`
Options:
--key <FILE> PEM private key file
--cert <FILE> PEM X.509 certificate for that key
--algorithm <ALGORITHM> Expected key size (rsa2048 or rsa4096); read from the key when omitted
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado signing-keys list
List all registered signing keys
Usage: avocado signing-keys list [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado signing-keys remove
Remove a signing key
Usage: avocado signing-keys remove [OPTIONS] <NAME>
Arguments:
<NAME> Name or key ID of the key to remove
Options:
--delete Delete hardware key from device (requires confirmation)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Var Key Commands
avocado var-key
Operator-held recovery key for an encrypted /var (runtimes.<r>.var.recovery)
Usage: avocado var-key [OPTIONS] <COMMAND>
Commands:
enroll Enrol this device's recovery keyslot: derive HMAC(master, SoC UID) and hand it to avocadoctl over SSH
derive Print the recovery passphrase for a device UID (bench recovery of a unit's /var)
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado var-key enroll
Enrol this device's recovery keyslot: derive HMAC(master, SoC UID) and hand it to avocadoctl over SSH
Usage: avocado var-key enroll [OPTIONS] --device <DEVICE> <RUNTIME>
Arguments:
<RUNTIME> Runtime whose var.recovery names the master secret
Options:
-d, --device <DEVICE> Device to enrol, as user@host
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Show the device's output
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado var-key derive
Print the recovery passphrase for a device UID (bench recovery of a unit's /var)
Usage: avocado var-key derive [OPTIONS] --uid <UID> <RUNTIME>
Arguments:
<RUNTIME> Runtime whose var.recovery names the master secret
Options:
--uid <UID> The device's SoC UID as it reports it (device tree serial-number, or soc0 serial_number)
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
--raw Emit the raw 32 bytes instead of hex, for `cryptsetup --key-file -`
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Initramfs Commands
avocado initramfs
Initramfs sysroot and image commands
Usage: avocado initramfs [OPTIONS] <COMMAND>
Commands:
install Install initramfs sysroot packages via DNF
image Build initramfs image from sysroot
clean Remove initramfs sysroot
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado initramfs install
Install initramfs sysroot packages via DNF
Usage: avocado initramfs install [OPTIONS]
Options:
-C, --config <CONFIG>
Path to avocado.yaml configuration file
[default: avocado.yaml]
-v, --verbose
Enable verbose output
-f, --force
Accepted for compatibility with older scripts; has no effect.
Clears nothing. Not needed to skip dnf's prompts — installs never prompt.
-t, --target <TARGET>
Target architecture
--target-board <TARGET_BOARD>
Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS>
Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS>
Additional arguments to pass to DNF commands
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado initramfs image
Build initramfs image from sysroot
Usage: avocado initramfs image [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--out <OUT_DIR> Output directory on host for the resulting image
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado initramfs clean
Remove initramfs sysroot
Usage: avocado initramfs clean [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Rootfs Commands
avocado rootfs
Rootfs sysroot and image commands
Usage: avocado rootfs [OPTIONS] <COMMAND>
Commands:
install Install rootfs sysroot packages via DNF
image Build rootfs image from sysroot
clean Remove rootfs sysroot
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado rootfs install
Install rootfs sysroot packages via DNF
Usage: avocado rootfs install [OPTIONS]
Options:
-C, --config <CONFIG>
Path to avocado.yaml configuration file
[default: avocado.yaml]
-v, --verbose
Enable verbose output
-f, --force
Accepted for compatibility with older scripts; has no effect.
Clears nothing. Not needed to skip dnf's prompts — installs never prompt.
-t, --target <TARGET>
Target architecture
--target-board <TARGET_BOARD>
Target board override for `{{ avocado.target.board }}`
--container-arg <CONTAINER_ARGS>
Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS>
Additional arguments to pass to DNF commands
--runs-on <USER@HOST>
Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT>
NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH>
SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui
Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start
On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help
Print help (see a summary with '-h')
avocado rootfs image
Build rootfs image from sysroot
Usage: avocado rootfs image [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--out <OUT_DIR> Output directory on host for the resulting image
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado rootfs clean
Remove rootfs sysroot
Usage: avocado rootfs clean [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
HITL Commands
avocado hitl
Hardware-in-the-loop testing commands
Usage: avocado hitl [OPTIONS] <COMMAND>
Commands:
start Start a managed HITL NFS server for this project (detached; see `status`, `logs`, `stop`)
status List HITL servers on this machine
stop Stop and remove this project's HITL server (or every one with --all)
logs Show this project's HITL server log
sync Re-run the extension lifecycle on a device after rebuilding what it is served
server Start a HITL server in the foreground (alias for `start --foreground`)
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl start
Start a managed HITL NFS server for this project (detached; see `status`, `logs`, `stop`)
Usage: avocado hitl start [OPTIONS] --extension <EXTENSIONS>
Options:
-C, --config-path <CONFIG_PATH> Path to avocado.yaml configuration file [default: avocado.yaml]
-e, --extension <EXTENSIONS> Extensions to serve
--container-arg <CONTAINER_ARGS> Additional container arguments
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
-t, --target <TARGET> Target
-v, --verbose Enable verbose output
-p, --port <PORT> NFS port number to use
--no-stamps Disable stamp validation
--foreground Stay attached and stream the server log instead of detaching
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl status
List HITL servers on this machine
Usage: avocado hitl status [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl stop
Stop and remove this project's HITL server (or every one with --all)
Usage: avocado hitl stop [OPTIONS]
Options:
-C, --config-path <CONFIG_PATH> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target
--all Stop every HITL server, not just this project's
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl logs
Show this project's HITL server log
Usage: avocado hitl logs [OPTIONS]
Options:
-C, --config-path <CONFIG_PATH> Path to avocado.yaml configuration file [default: avocado.yaml]
-t, --target <TARGET> Target
-f, --follow Follow the log
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl sync
Re-run the extension lifecycle on a device after rebuilding what it is served
Usage: avocado hitl sync [OPTIONS] --device <DEVICE>
Options:
-d, --device <DEVICE> Device as [user@]host, e.g. root@192.168.1.77
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado hitl server
Start a HITL server in the foreground (alias for `start --foreground`)
Usage: avocado hitl server [OPTIONS]
Options:
-C, --config-path <CONFIG_PATH> Path to avocado.yaml configuration file [default: avocado.yaml]
-e, --extension <EXTENSIONS> Extensions to create NFS exports for
--container-arg <CONTAINER_ARGS> Additional container arguments
--dnf-arg <DNF_ARGS> Additional arguments to pass to DNF commands
-t, --target <TARGET> Target to build for
-v, --verbose Enable verbose output
-p, --port <PORT> NFS port number to use
--no-stamps Disable stamp validation
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Config Commands
avocado config
Project configuration introspection (read-only)
Usage: avocado config [OPTIONS] <COMMAND>
Commands:
show Show the parsed avocado.yaml in a stable JSON or YAML-ish summary
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado config show
Show the parsed avocado.yaml in a stable JSON or YAML-ish summary
Usage: avocado config show [OPTIONS]
Options:
-c, --config <CONFIG> Path to avocado.yaml (defaults to ./avocado.yaml) [default: ./avocado.yaml]
--output <OUTPUT> Output format [default: human] [possible values: human, json]
--detail Include nested detail (extensions, packages, SDK summary, runtime↔extension cross-references) under a `detail` key. Default output is unchanged when this flag is absent so existing consumers keep working byte-for-byte
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Container Commands
avocado container
Container Dev Mode: iterate on containers running on a device
Usage: avocado container [OPTIONS] <COMMAND>
Commands:
dev Layer-aware hot-reload loop for a container running on a device
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev
Layer-aware hot-reload loop for a container running on a device
Usage: avocado container dev [OPTIONS] <COMMAND>
Commands:
up Start the dev registry + watcher and bootstrap the device
sync One-shot re-push of the current watched image + notify the device
status Report registry/watcher/last-sync state for the dev loop
down Stop the dev registry + watcher and tear down listeners
prune Garbage-collect this project's Container Dev Mode registry store (distinct from the top-level `prune`, which removes Docker volumes)
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev up
Start the dev registry + watcher and bootstrap the device
Usage: avocado container dev up [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev sync
One-shot re-push of the current watched image + notify the device
Usage: avocado container dev sync [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev status
Report registry/watcher/last-sync state for the dev loop
Usage: avocado container dev status [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev down
Stop the dev registry + watcher and tear down listeners
Usage: avocado container dev down [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado container dev prune
Garbage-collect this project's Container Dev Mode registry store (distinct from the top-level `prune`, which removes Docker volumes)
Usage: avocado container dev prune [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
Kernel Commands
avocado kernel
Kernel image commands
Usage: avocado kernel [OPTIONS] <COMMAND>
Commands:
image Wrap the rootfs sysroot's kernel binary into a signed kos.layer.kernel KAB. Requires `avocado rootfs install` to have run first (the kernel-image-* package lands the binary in the rootfs sysroot's /boot dir)
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado kernel image
Wrap the rootfs sysroot's kernel binary into a signed kos.layer.kernel KAB. Requires `avocado rootfs install` to have run first (the kernel-image-* package lands the binary in the rootfs sysroot's /boot dir)
Usage: avocado kernel image [OPTIONS]
Options:
-C, --config <CONFIG> Path to avocado.yaml configuration file [default: avocado.yaml]
-v, --verbose Enable verbose output
-t, --target <TARGET> Target architecture
--out <OUT_DIR> Output directory on host for the resulting image
--container-arg <CONTAINER_ARGS> Additional arguments to pass to the container runtime
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
VM Commands
avocado vm
Manage the local avocado-vm helper VM (macOS / Windows dev hosts)
Usage: avocado vm [OPTIONS] <COMMAND>
Commands:
start Boot the avocado-vm (no-op if already running)
stop Stop the avocado-vm (graceful; falls back to SIGKILL with --force)
status Show running state + manifest metadata
shell Open an SSH session into the running avocado-vm
logs Print (or tail with -f) the QEMU serial console log
rebuild Re-record the manifest from a fresh --vm-source. Preserves data disk unless --reset-data is given. VM must be stopped first
reset Wipe the persistent `var.btrfs` and re-seed from the installed var artifact. Use this when you want a clean /var (Docker volumes, container caches, project work in /data, etc.). Doesn't change the VM image version — see `vm update` for that
config Read/write persistent VM configuration at `~/.avocado/vm/config.yaml`. Same file the Avocado.app settings UI edits — every knob shipped in the desktop is reachable here
update Check for and apply VM image updates from the release channel. Stops + restarts the VM if it was running. A release that ships a new `var` image schedules a state sync applied on the next start; the VM's Docker volumes, SDKs and /data are preserved
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm start
Boot the avocado-vm (no-op if already running)
Usage: avocado vm start [OPTIONS]
Options:
--vm-source <VM_SOURCE> Directory containing `direct` profile output (manifest.json + artifacts). Resolution order when unset: $AVOCADO_VM_DIR → ~/.avocado/vm/install/ (populated by `avocado vm update`) → last `vm start`/`vm rebuild` dir → error
--memory-mib <MEMORY_MIB> Memory in MiB. Resolution order: this flag → `runtime.memory_mib` in `~/.avocado/vm/config.yaml` (also written by Avocado.app's settings UI) → 4096. When passed, the value is persisted back to the config so the next flag-less `vm start` reuses it
--cpus <CPUS> vCPU count. Same resolution + persistence as `--memory-mib`, falling back to `runtime.cpus` or 4
--ssh-port <SSH_PORT> Bind SSH on this host port (default: pick a free high port)
--cmdline-extra <CMDLINE_EXTRA> Extra kernel cmdline appended to the manifest's default
--workspace <WORKSPACE> Host directory exposed to the VM as a 9p workspace (mounted at /mnt/workspace in the guest). Defaults to $AVOCADO_VM_WORKSPACE or $HOME. Every project the CLI operates on must live under this path
--var-size <VAR_SIZE> Persistent /var disk size (e.g. "50G", "100G"). Growable on each start; shrink requires `vm rebuild --reset-data`. The file is sparse, so the on-disk footprint only grows as data is written. Default 50G — comfortable for SDK image + several container images
--dns <DNS> One-shot DNS override applied to this start only. Repeatable — `--dns 1.1.1.1 --dns 8.8.8.8` sets both. Wins over any value persisted via `vm config set network.dns`; the persisted value is unchanged. Useful when a VPN's slirp DNS proxy is broken
-w, --watch Tail the serial log live while waiting for boot-sync. On failure, the tail of the log is printed automatically even without this flag
--foreground Stay in the foreground (does not yet implement live serial; placeholder)
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm stop
Stop the avocado-vm (graceful; falls back to SIGKILL with --force)
Usage: avocado vm stop [OPTIONS]
Options:
--force
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm status
Show running state + manifest metadata
Usage: avocado vm status [OPTIONS]
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm shell
Open an SSH session into the running avocado-vm
Usage: avocado vm shell [OPTIONS] [-- <COMMAND>...]
Arguments:
[COMMAND]... Optional command + args to run instead of an interactive shell
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm logs
Print (or tail with -f) the QEMU serial console log
Usage: avocado vm logs [OPTIONS]
Options:
-f, --follow
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm rebuild
Re-record the manifest from a fresh --vm-source. Preserves data disk unless --reset-data is given. VM must be stopped first
Usage: avocado vm rebuild [OPTIONS]
Options:
--vm-source <VM_SOURCE> Falls back to $AVOCADO_VM_DIR if unset
--reset-data
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm reset
Wipe the persistent `var.btrfs` and re-seed from the installed var artifact. Use this when you want a clean /var (Docker volumes, container caches, project work in /data, etc.). Doesn't change the VM image version — see `vm update` for that
Usage: avocado vm reset [OPTIONS]
Options:
-y, --yes Skip the interactive confirmation prompt
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm config
Read/write persistent VM configuration at `~/.avocado/vm/config.yaml`. Same file the Avocado.app settings UI edits — every knob shipped in the desktop is reachable here
Usage: avocado vm config [OPTIONS] <COMMAND>
Commands:
get Print the value of a dotted key (e.g. `network.dns`). Silent on missing keys; use `--output json` to disambiguate missing vs empty
set Set a dotted key. Multiple values become a list (e.g. `vm config set network.dns 1.1.1.1 8.8.8.8`)
unset Remove a dotted key. No-op if it doesn't exist
list Print the entire config (YAML by default, JSON with `--output json`). The same JSON shape is what avocado-desktop reads to render its UI
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm config get
Print the value of a dotted key (e.g. `network.dns`). Silent on missing keys; use `--output json` to disambiguate missing vs empty
Usage: avocado vm config get [OPTIONS] <KEY>
Arguments:
<KEY> Dotted key path, e.g. `network.dns` or `network.dns_search`
Options:
--output <OUTPUT> Output format (human plain text or JSON `{key, value}`) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm config set
Set a dotted key. Multiple values become a list (e.g. `vm config set network.dns 1.1.1.1 8.8.8.8`)
Usage: avocado vm config set [OPTIONS] <KEY> <VALUES>...
Arguments:
<KEY> Dotted key path
<VALUES>... One or more values. A single value is stored as a scalar; two or more are stored as a list. Use `vm config unset` to remove
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm config unset
Remove a dotted key. No-op if it doesn't exist
Usage: avocado vm config unset [OPTIONS] <KEY>
Arguments:
<KEY> Dotted key path
Options:
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm config list
Print the entire config (YAML by default, JSON with `--output json`). The same JSON shape is what avocado-desktop reads to render its UI
Usage: avocado vm config list [OPTIONS]
Options:
--output <OUTPUT> [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help
avocado vm update
Check for and apply VM image updates from the release channel. Stops + restarts the VM if it was running. A release that ships a new `var` image schedules a state sync applied on the next start; the VM's Docker volumes, SDKs and /data are preserved
Usage: avocado vm update [OPTIONS]
Options:
--channel <CHANNEL> Channel name (default: `~/.avocado/config.yaml [vm].channel`, or `stable` if unset)
--check Print availability + exit without downloading
-y, --yes Skip the interactive confirmation prompt
--output <OUTPUT> Output format (human prose or single JSON object) [default: human] [possible values: human, json]
--runs-on <USER@HOST> Run command on remote host using local volume via NFS (format: user@host)
--nfs-port <NFS_PORT> NFS port for remote execution (auto-selects from 12050-12099 if not specified)
--sdk-arch <ARCH> SDK container architecture for cross-arch emulation via Docker buildx/QEMU (aarch64 or x86-64)
--no-tui Disable TUI output (use legacy sequential output with inherited stdio)
--no-vm-auto-start On macOS/Windows, don't auto-start the avocado-vm; talk to the local docker daemon directly. (Equivalent to `AVOCADO_VM_AUTO_START=0`.)
-h, --help Print help