Labor0 CLI command reference
Run l0 <command> --help for complete flags and l0 completion <shell> for Bash, Elvish, Fish, PowerShell, or Zsh completion. Resource identifiers are lowercase UUIDs shown by list and detail commands.
Authentication and context
L0_API_KEY takes precedence over secure profile storage for commands that accept API-key authorization. User API-token commands require a fresh interactive sign-in, and GitHub connection commands require an interactive terminal and browser handoff. Supply API keys through an approved CI secret mechanism; do not put them in a command argument or build log.
Product work
Workspace access includes qualifying inherited Tenant or Enterprise roles. Authorization is always checked by Labor0.
Long requests and repository URLs are read from stdin or another input source named by the command. For example:
The completion result is a resource UUID and safe status. Repository names, prompts, provider payloads, credentials, and signed transfer material are not returned in machine output.
Administration
Tenant Viewer and Tenant Operator inheritance does not grant Workspace administration, runtime-credential mutation, or Tenant-wide billing access. Authorization is always checked by Labor0. Destructive actions require confirmation in an interactive terminal only when --yes is omitted; noninteractive mutations require --yes. In an interactive terminal, high-risk actions always require confirmation and also require exact-target re-entry when --yes is omitted.
Browser-required handoffs
GitHub OAuth, payment setup, and passkey registration remain browser-managed. Their initiating CLI command prints a validated Labor0 URL in the progress channel, opens it only with --open-browser, and waits for the authoritative result. Leave the command running until it succeeds, expires, or you interrupt it. Ordinary list, configuration, Graph, task, session, notification, usage, and administration commands do not require navigating the app.
Output and recovery
Human output is the default. Use --json for a non-streaming machine-readable result, and use the machine option shown by built-in help for watch commands. Results stay separate from progress, browser URLs, and confirmations. NO_COLOR and --no-color disable color.
List commands return one page unless --all is supplied. When a mutation result is uncertain, follow the command's recovery guidance and repeat it only when the command explicitly identifies replay as safe. For example, repeat l0 repository register with the exact same repository URL to return the canonical registration without creating a duplicate. Otherwise, use the command's authoritative list or show guidance instead of repeating the mutation. Use l0 doctor for safe readiness checks and Manage and troubleshoot for recovery and private support handoff.
Expected result
Each successful command returns a safe resource identifier or status that you can use for the next step. If access, connectivity, or a browser handoff changes during an operation, the command provides a bounded recovery action instead of exposing private service details.
Local runners
runner, service, doctor, diagnostics, completion, and version retain the local-runner lifecycle described in Set up and run. Runner and service commands use the default profile boundary and do not change another named profile.
Non-GA and preview features, raw API access, raw terminal input, a full-screen interface, YAML, and TSV commands are not included.