Note: the user-facing CLI lives in
lb_ui(invoke vialborpython -m lb_ui.cli). Runner/controller packages do not expose separate entrypoints.
- Install in a venv:
uv venv && uv pip install -e . - Make
lbglobally available (optional):uv tool install -e . - Enable shell completion:
lb --install-completion(bash/zsh/fish)
--headlessforces headless output (useful in CI or pipes).
Order used by commands that need a config:
-c/--configflag- Saved default at
~/.config/lb/config_path(set vialb config set-defaultorlb config init) ./benchmark_config.jsonif present- Built-in defaults
lb run [WORKLOAD ...] [-c FILE] [--run-id ID] [--remote/--no-remote] [--repetitions N] [--intensity LEVEL] [--setup/--no-setup] [--stop-file PATH] [--debug]Run workloads remotely via Ansible. Local execution is not supported by the CLI.lb run ... --docker [--docker-engine docker|podman] [--nodes N]Dev-only: provision containers and run via Ansible (requires.lb_dev_cliorLB_ENABLE_TEST_CLI=1).lb run ... --multipass [--nodes N]Dev-only: provision Multipass VMs and run via Ansible (requires.lb_dev_cliorLB_ENABLE_TEST_CLI=1).lb resume [RUN_ID] [-c FILE] [--remote/--no-remote] [--docker|--multipass] [--nodes N] [--intensity LEVEL] [--setup/--no-setup] [--stop-file PATH] [--debug]Resume an incomplete run using a stored journal.lb runs list [--root PATH] [-c FILE]/lb runs show RUN_ID [--root PATH] [-c FILE]Inspect stored runs underbenchmark_results/.lb runs analyze [RUN_ID] [--root PATH] [--workload NAME] [--host NAME]Run analytics on an existing run (currentlyaggregate).lb plugin ...Inspect and manage workload plugins.lb config ...Create and manage benchmark configuration files.lb doctor ...Run prerequisite checks.lb test multipass ...(dev-only) Helper to run integration tests.
lb plugin listlb plugin enable NAMElb plugin disable NAMElb plugin select
lb config init [-i] [-c FILE] [--set-default/--no-set-default]lb config set-repetitions N [-c FILE] [--set-default/--no-set-default]lb config set-default FILE/lb config unset-default/lb config show-defaultlb config edit [-c FILE]lb config workloads [-c FILE]lb config enable-workload NAME [-c FILE] [--set-default]lb config disable-workload NAME [-c FILE] [--set-default]lb config select-workloads [-c FILE] [--set-default]
lb doctor controller- Python deps + Ansible requirementslb doctor local- local workload tools (stress-ng, fio, sysstat)lb doctor multipass- Multipass availabilitylb doctor all- run all checks
- Available when
.lb_dev_cliexists in the project root orLB_ENABLE_TEST_CLI=1is set. lb test multipass [-o DIR] [--vm-count {1,2}] [--multi-workloads] [-- EXTRA_PYTEST_ARGS...]
LB_ENABLE_TEST_CLI=1enableslb testand provisioning flags in the CLI.LB_USER_PLUGIN_DIRoverrides the user plugin install directory.LB_STOP_FILEsets a stop sentinel path if--stop-fileis omitted.LB_TEST_RESULTS_DIR,LB_MULTIPASS_VM_COUNTcustomize test helpers.