Reference
CLI reference
Install, global flags, and the map of every labctl command.
docs/reference/cli/index.mdOn this page
labctl is the command-line interface for SnowOps Labs. It builds the lab,
runs scenarios, injects faults and grades your fix.
Install
Download a release — no Go or Node needed. Pick the archive for your OS/arch from the Releases page. macOS, Linux and Windows (inside WSL2) use the same commands:
VERSION=1.0.0 # from the Releases page
OS=$(uname -s | tr '[:upper:]' '[:lower:]') # darwin | linux
ARCH=$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/')
BASE="https://github.com/sagar2395/snowopslabs/releases/download/v${VERSION}"
curl -fsSL "${BASE}/labctl_${VERSION}_${OS}_${ARCH}.tar.gz" | tar xz labctl
sudo mv labctl /usr/local/bin/
labctl --versionBuild from source — needs Go 1.25+ and Node 22+:
make cli-build # builds bin/labctl with the UI embedded
make cli-install # builds and copies onto your PATHThe Quickstart has the per-OS walkthrough, including checksum verification.
Global flags
| Flag | Default | Description |
|---|---|---|
--project-dir |
auto-detected | Project root directory |
-v, --verbose |
false |
Debug logging: config load, script exec, API calls |
--version |
— | Print the build version |
Command map
| Page | Commands |
|---|---|
| Lifecycle | init teardown reset status doctor setup-tools check hosts runtime lab runs |
| Applications & services | app service |
| Platform | platform |
| Scenarios | scenario validate |
| Incidents | incident |
| Traffic | traffic |
| Learning & challenges | learn challenge |
| Server, metrics & auth | ui users |
CLI or Make
Both work. Make targets are more granular; the CLI adds scenarios, the web UI and a unified status view.
| Operation | CLI | Make |
|---|---|---|
| Full setup | labctl init |
make init |
| Build an app | labctl app build go-api |
make build APP_NAME=go-api |
| Deploy an app | labctl app deploy go-api |
make deploy APP_NAME=go-api |
| Platform status | labctl platform status |
make platform-status |
| Activate a scenario | labctl scenario up observability-sre |
CLI only |
| Web dashboard | labctl ui |
CLI only |
| Deploy every app | — | make deploy-all |