rototo
DocsReference
Reference

CLI Commands Reference

The CLI is how people and automation touch a workspace before an application does. I use it for four jobs: create the files rototo understands, prove the workspace is valid, explain what the runtime model will do, and export the docs that describe that contract.

For exact parser output, use rototo <command> --help with the binary you are running.

rototo init

rototo init <WORKSPACE> [--qualifier ID] [--variable ID] [--resource ID] [--context] [--force] [--dry-run]

Use init when you want rototo to create the workspace paths and templates it expects instead of hand-writing the first file from memory. It creates a local workspace or adds templates to an existing workspace.

OptionMeaning
--qualifier <ID>Create qualifiers/<ID>.toml.
--variable <ID>Create variables/<ID>.toml.
--resource <ID>Create resources/<ID>.toml and a schema template.
--contextCreate or infer schemas/context.schema.json.
--forceOverwrite files the command creates.
--dry-runPrint planned writes without changing files.

rototo fixtures

rototo fixtures <WORKSPACE_SOURCE> --out <DIR> [selectors]

Use fixtures when a runtime behavior should become a reviewable test case. It generates readable TOML files for selected variables and qualifiers, so CI can preserve expected selections for important contexts.

Selectors:

--variable <ID>  --variables
--qualifier <ID> --qualifiers

rototo lint

rototo lint [WORKSPACE_SOURCE] [selectors]

Use lint before a workspace can be trusted by an app, CI job, or reviewer. It validates the workspace or selected targets. Without selectors, lint reports workspace-wide diagnostics. With selectors, lint filters output to selected variables, resources, qualifiers, lint rules, authorities, or Lua linters.

--quiet suppresses the successful ok: line, but diagnostics still print.

rototo inspect

rototo inspect [WORKSPACE_SOURCE] [selectors] [--context CONTEXT]

Use inspect when you need to understand how rototo sees the workspace after source loading and layering. It explains the projected workspace: documents, runtime status, diagnostics, schemas, resources, variables, qualifiers, lint rules, lint authorities, and linters.

When context is supplied, selected variables and qualifiers include resolution traces.

rototo show

rototo show [WORKSPACE_SOURCE] [selectors]

Use show when you need configured files and catalog metadata, not runtime evaluation. Without selectors it prints a workspace inventory. With --json, it returns a structured view for the selected targets.

When no workspace source is supplied and only lint catalog selectors are used, show reads the global built-in diagnostic catalog.

Examples:

rototo show --lint-rules
rototo show examples/basic --variable account-limits
rototo show examples/basic --lint-authority rototo

rototo resolve

rototo resolve [WORKSPACE_SOURCE] [--variable ID | --variables | --qualifier ID | --qualifiers] [--context CONTEXT]

Use resolve when you want to see the value an application would receive for a specific context. At least one variable or qualifier selector is required.

--context is repeatable. When omitted, rototo uses {}.

Use --json for stable traces. See reference-resolution-output.

rototo docs

rototo docs
rototo docs -p <PAGE_PREFIX>
rototo docs -s <REGEX>
rototo docs --export [OUT_DIR]

Use docs when you need the documentation bundled with the current binary. It lists pages, renders one Markdown page, searches docs with a regular expression, or exports the static HTML site. --export defaults to site when no directory is supplied.

rototo lsp

rototo lsp

Use lsp when an editor or agent needs live workspace feedback. It runs the rototo Language Server Protocol server over stdio for diagnostics, completions, symbols, hovers, and definitions.

rototo completions

rototo completions <SHELL>

Use completions to generate shell completion scripts for local authoring. Supported shells:

bash
elvish
fish
powershell
zsh