Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.malbox.app/llms.txt

Use this file to discover all available pages before exploring further.

The malboxctl CLI is the administration tool for Malbox. Use it to install, configure, and manage the analysis sandbox infrastructure.

Global flags

These flags are available on every subcommand.
FlagTypeDefaultDescription
--formattext | jsontextOutput format
--api-urlstringFrom cli.tomlOverride the API base URL
-v, --verbose-falseEnable verbose output (shows timestamps and debug info)
-y, --yes-falseSkip confirmation prompts

install

Run the interactive installation wizard to set up Malbox.
malboxctl install [options]
FlagTypeRequiredDefaultDescription
--yes-NofalseSkip confirmation prompts
The wizard walks you through:
  1. Nix installation strategy
  2. Provider selection (e.g. libvirt, VMware)
  3. Daemon source (prebuilt binary or compile from source)
  4. Frontend source (prebuilt or compile)
  5. PostgreSQL setup (existing URL or new instance)
  6. Systemd service configuration

upgrade

Upgrade Malbox to the latest version.
malboxctl upgrade [options]
FlagTypeRequiredDefaultDescription
--force-NofalseForce reinstall even if already up to date
--reconfigure-NofalseRe-prompt for all installation choices
--rollback-NofalseRoll back to the previous version
The --reconfigure flag is not yet implemented.

daemon

Control the Malbox daemon.

daemon start

Start the daemon.
malboxctl daemon start [options]
FlagTypeRequiredDefaultDescription
-c, --config-pathstringNo-Path to config file
This command is not yet implemented.

config

Manage daemon configuration.

config init

Initialize a new configuration file with defaults.
malboxctl config init [options]
FlagTypeRequiredDefaultDescription
-f, --force-NofalseForce overwrite existing configuration
-o, --outputpathNo~/.config/malbox/malbox.tomlPath to write the configuration file
This also generates a cli.toml alongside the main configuration file, which is used by the malbox CLI.

provider

Manage virtualization providers.

provider list

List providers compiled into the daemon.
malboxctl provider list

provider install

Install a virtualization provider.
malboxctl provider install <name> [options]
Argument / FlagTypeRequiredDefaultDescription
namestringYes-Provider name (e.g. libvirt, vmware)
--no-rebuild-NofalseSkip automatic rebuild (only update config)
This command is not yet implemented.

provider uninstall

Uninstall a virtualization provider.
malboxctl provider uninstall <name> [options]
Argument / FlagTypeRequiredDefaultDescription
namestringYes-Provider name (e.g. libvirt, vmware)
--no-rebuild-NofalseSkip automatic rebuild (only update config)
This command is not yet implemented.

provider rebuild

Rebuild the daemon with the current provider configuration.
malboxctl provider rebuild [options]
FlagTypeRequiredDefaultDescription
-r, --release-NofalseBuild in release mode
-v, --verbose-NofalseShow verbose cargo output
This command is not yet implemented.

machine

Manage analysis machines.

machine list

List all machines.
malboxctl machine list

machine get

Get details of a specific machine.
malboxctl machine get [machine]
ArgumentTypeRequiredDefaultDescription
machinestringNo-Machine name or ID. If omitted, an interactive fuzzy-select menu is shown.

machine provision

Run a provisioning step against a machine.
malboxctl machine provision [machine] --provisioner <type> [options]
Argument / FlagTypeRequiredDefaultDescription
machinestringNo-Machine name or ID. If omitted, an interactive fuzzy-select menu is shown.
--provisionerstringYes-Provisioner type (e.g. ansible, native)
--snapshotstringNo-Snapshot name to create after provisioning
--revert-tostringNobaseSnapshot to revert to before provisioning
--configstringNo-Provisioner config as JSON (e.g. '{"playbook": "setup.yml"}')
--pluginsstring[]No-Guest plugin names to deploy (accepts multiple values)

machine provision-history

List provision run history for a machine.
malboxctl machine provision-history [machine]
ArgumentTypeRequiredDefaultDescription
machinestringNo-Machine name or ID. If omitted, an interactive fuzzy-select menu is shown.

machine snapshot list

List snapshots for a machine.
malboxctl machine snapshot list [machine]
ArgumentTypeRequiredDefaultDescription
machinestringNo-Machine name or ID. If omitted, an interactive fuzzy-select menu is shown.

machine snapshot delete

Delete a snapshot.
malboxctl machine snapshot delete [machine] [snapshot_name]
ArgumentTypeRequiredDefaultDescription
machinestringNo-Machine name or ID. If omitted, an interactive fuzzy-select menu is shown.
snapshot_namestringNo-Snapshot name. If omitted, an interactive fuzzy-select menu is shown.

image

Manage VM images.

image register

Register a new VM image.
malboxctl image register --name <name> --platform <platform> --arch <arch> --path <path> [options]
FlagTypeRequiredDefaultDescription
--namestringYes-Image name
--platformwindows | linuxYes-Target platform
--archx64 | x86Yes-Target architecture
--pathstringYes-Path to the image file
--image-formatstringNo-Image format (e.g. qcow2, vmdk)
--descriptionstringNo-Image description

image list

List all registered images.
malboxctl image list

image get

Get details of a specific image.
malboxctl image get <name>
ArgumentTypeRequiredDescription
namestringYesImage name

image delete

Delete an image.
malboxctl image delete <name>
ArgumentTypeRequiredDescription
namestringYesImage name

completion

Generate shell completions.
malboxctl completion <shell>
ArgumentTypeRequiredDescription
shellbash | zsh | fish | elvish | powershellYesTarget shell
To install completions, redirect the output to the appropriate location for your shell:
# Bash
malboxctl completion bash > ~/.local/share/bash-completion/completions/malboxctl

# Zsh
malboxctl completion zsh > ~/.zfunc/_malboxctl

# Fish
malboxctl completion fish > ~/.config/fish/completions/malboxctl.fish

Environment variables

VariableDescription
RUST_LOGOverride the log level filter. Takes precedence over --verbose. Uses standard tracing_subscriber::EnvFilter syntax.
MALBOX_CONFIGPath to the daemon config file. Set automatically by the systemd service.