Commands

Reference guide for the command-line interface

Since Sabre is a command-line program, functionality is invoked by it's various available subcommands.

  • run  —  Execute a script/project with Sabre.
  • tasks  —  Runs pre-defined crate manifest tasks.
  • test  —  Runs all available unit tests with Sabre.
  • bundle  —  Bundles scripts/projects into executables.
  • format  —  Formats scripts/projects with the builtin styler.
  • lint  —  Lints scripts/projects for enhanced static analysis.
  • upgrade  —  Upgrades to the latest version of Sabre available.

Additionally, the following flags retrieve additional information about the runtime.

# Shows the usage prompt for Sabre
sabre --help

# Gets the current executable version
sabre --version

# Lists all the vendors used by Sabre
sabre --vendors

Environment Variables (Internal)

The following environment variables are available across all subcommands.

SABRE_LOGGING_LEVEL

This variable allows setting the debug logging level, which can provide additional debugging information for the underlying runtime and subcommands. It can be one of theses levels: trace, debug, warn, error, fatal and is currently preset to warn.

SABRE_HARDWARE_VPROCS

This variable allows declaring the total underlying virtual processors to be used. By default, Sabre will use the maximum available hardware processors.

Terminal
# A arbitrary number can be used.
export SABRE_HARDWARE_VPROCS=8

# This forces Sabre into a "single-threaded" mode.
export SABRE_HARDWARE_VPROCS=1

# For when you want to ensure the maximum processors.
export SABRE_HARDWARE_VPROCS=0

Note:

Although Sabre can be ran in a single-threaded context, additional threads will still be used internally for type-analysis and garbage collection.

SABRE_STACK_SIZE

This variable allows setting the stack size of user-space threads. The default value is set to 8MB.

SABRE_STACK_LIMIT

This variable allows setting the overflow limit for user-space threads. When the stack usage is below this value, the runtime will panic with a maximum recusion depth exception. The default value is set to 32KB.

Environment Variables (External)

NO_COLOR

Sabre is shipped with the informal NO_COLOR standard. This environment variable can be assigned a value other than 0 to disable all colored outputs. Furthermore, this will also forcibly toggle the enablement of the builtin ANSI crate.

NO_PROGRESS

Sabre is shipped with the informal NO_PROGRESS standard. This environment variable can be assigned a value other than 0 to disable all spinners and progress bars. This is particularly useful for logging testing results without distortions in non-terminal contexts.

Last updated on August 15, 2026

On this page