Skip to content

systemslab Command-Line Reference ​

Available Commands ​

The base commands available are

Experiment Commands ​

Notebook Commands ​

Workspace Commands ​

Context Commands ​

Host Commands ​

Cordon a host agent in or out of the scheduler — e.g. to work locally on a machine that is also a registered agent without contaminating measurements.

Infra Commands ​

Inspect and manage the AWS fleet the infrastructure manager controls: fleet status, the machine event log, EC2 pricing, forward cost estimates, manual approval of capacity requests, and the virtual tags that instances are launched for. This deployment has no authentication layer — see systemslab infra approve for what that means for the operator identity these commands record.

Artifact Commands ​

Export and Import ​

You can export and import entities between different SystemsLab servers.

Authentication ​

Config File ​

The systemslab command will automatically look in parent directories to find a config file for some common options. The search path used for this is as follows, in order of decreasing precedence:

  • ./.config/systemslab.toml
  • ./../.config/systemslab.toml
  • ...
  • /.config/systemslab.toml
  • <CONFDIR>/systemslab/systemslab.toml
  • /etc/systemslab/systemslab.toml (if on a unix-based system)

INFO

Which value of <CONFDIR> will be used depends on the OS.

PlatformValueExample
Linux$XDG_CONFIG_HOME or $HOME/.config/home/alice/.config
MacOS$HOME/Library/Application Support/Users/Alice/Library/Application Support
Windows${FOLDERID_RoamingAppData}C:\Users\Alice\AppData\Roaming

Config Options ​

systemslab_url ​

The URL that the systemslab command will use to talk to the SystemsLab server. If not provided via a config file, then it will be necessary to set it by passing the --systemslab-url option or the SYSTEMSLAB_URL environment variable to most subcommands.

INFO

If there is a systemslab server running on the current host then, as a final fallback, the CLI will connect to that server if not otherwise specified. This is detected by looking for a server config file at /etc/systemslab/server.toml.

workspace ​

The slug or id of the workspace that new contexts are added to by default, e.g. workspace = "allocator-sweep". It applies to every command that creates a context (submit, sweep, optimize and context new). The SYSTEMSLAB_WORKSPACE environment variable takes precedence over it, passing --workspace replaces both, and --no-workspace turns the default off for one command.

Common Options ​

There are a number of options that are accepted by all systemslab subcommands. These are listed both here and in a section on the documentation pages of all subcommands.

OptionDefaultDescription
--systemslab-url The URL at which to access the systemslab server.
--colorauto Controls when color is used in the output. Possible values are auto, always, and never.
--output-formatlong Output format to use when outputting messages. long will result output designed to be human-readable while short is short output meant to be used within scripts.