# CLI command reference

Find command syntax, inputs, outputs, and exit status.

Invoke `rootform <command>` from a project root, or pass an explicit input
where the command accepts one. The syntax blocks below are reference forms:
placeholders such as `[input]` and `[flags]` are not literal arguments. Run
`rootform <command> --help` for terminal help. The tables on command pages
retain the CLI's exported option types and defaults.

For a first result, follow the [quickstart](https://docs.rootform.dev/getting-started/quickstart/).
For a complete task, use the [guides](https://docs.rootform.dev/guides/explore-architecture/)
and return here for exact command contracts.

## Find a command

- Analyze or explore: `run` compiles a plan or state JSON into a Form, or reopens a saved Form, then serves the local Explorer or writes reports.
- Review: `check` evaluates selected Policies against one stage of a Form and exits with the verdict; `run --diff` compares two inputs.
- Inspect: `list` shows active content, `show` displays a definition, and `explain` traces an interpretation or result.
- Prepare: `init` verifies selected content and can fetch missing OCI units; `vendor` copies selected content into the project.
- Validate and author: `validate` checks an object; `fmt`, `test`, `compile`, `package`, `publish`, and `lsp` have their own contracts below.

<!-- BEGIN GENERATED CLI: rootform -->

## Usage

```text
rootform <command> [options]
```

## Options

### Global options

| Flag | Type | Default | Description |
| --- | --- | --- | --- |
| ` --color ` | ` mode ` | ` auto ` | color human output: `auto\|always\|never`; default: auto |
| ` -h, --help ` | ` bool ` | ` false ` | show how to use rootform |
| ` --no-pager ` | ` bool ` | ` false ` | print a long report in full instead of opening it in less |
| ` -v, --version ` | ` bool ` | ` false ` | print the rootform version and exit |

## Command inventory

### Analyze

| Command | Purpose |
| --- | --- |
| [` rootform check `](https://docs.rootform.dev/reference/cli/check/) | Evaluate Policies against a Form or each side of a comparison |
| [` rootform run `](https://docs.rootform.dev/reference/cli/run/) | Produce a Form from a plan or state JSON, or open a saved Form |

### Inspect

| Command | Purpose |
| --- | --- |
| [` rootform explain `](https://docs.rootform.dev/reference/cli/explain/) | Justify one conclusion of a Form or a Policy result |
| [` rootform explain instance `](https://docs.rootform.dev/reference/cli/explain/instance/) | Explain how one instance was interpreted |
| [` rootform explain policy `](https://docs.rootform.dev/reference/cli/explain/policy/) | Explain one Policy outcome recorded by check |
| [` rootform explain rule `](https://docs.rootform.dev/reference/cli/explain/rule/) | Explain how one Rule applied in an input |
| [` rootform list `](https://docs.rootform.dev/reference/cli/list/) | List Rootform definitions |
| [` rootform list dialects `](https://docs.rootform.dev/reference/cli/list/dialects/) | List the Dialect catalog |
| [` rootform list policies `](https://docs.rootform.dev/reference/cli/list/policies/) | List Policies |
| [` rootform list policy-packs `](https://docs.rootform.dev/reference/cli/list/policy-packs/) | List Policy Packs |
| [` rootform show `](https://docs.rootform.dev/reference/cli/show/) | Show a Rootform definition |
| [` rootform show policy `](https://docs.rootform.dev/reference/cli/show/policy/) | Show a Policy definition |
| [` rootform show policy-pack `](https://docs.rootform.dev/reference/cli/show/policy-pack/) | Show a Policy Pack |
| [` rootform validate `](https://docs.rootform.dev/reference/cli/validate/) | Validate a Rootform object |
| [` rootform validate concept `](https://docs.rootform.dev/reference/cli/validate/concept/) | Validate a Concept definition |
| [` rootform validate context `](https://docs.rootform.dev/reference/cli/validate/context/) | Validate a context dimension |
| [` rootform validate dialects `](https://docs.rootform.dev/reference/cli/validate/dialects/) | Validate Dialect definitions |
| [` rootform validate form `](https://docs.rootform.dev/reference/cli/validate/form/) | Validate a saved Form |
| [` rootform validate policy `](https://docs.rootform.dev/reference/cli/validate/policy/) | Validate a Policy definition |
| [` rootform validate relation `](https://docs.rootform.dev/reference/cli/validate/relation/) | Validate a relation predicate |
| [` rootform validate rule `](https://docs.rootform.dev/reference/cli/validate/rule/) | Validate a Rule definition |

### Project

| Command | Purpose |
| --- | --- |
| [` rootform add `](https://docs.rootform.dev/reference/cli/add/) | Add content to rootform.lock |
| [` rootform add dialects `](https://docs.rootform.dev/reference/cli/add/dialects/) | Add Dialects to rootform.lock |
| [` rootform add policy-packs `](https://docs.rootform.dev/reference/cli/add/policy-packs/) | Add Policy Packs to rootform.lock |
| [` rootform init `](https://docs.rootform.dev/reference/cli/init/) | Prepare a Rootform project |
| [` rootform remove `](https://docs.rootform.dev/reference/cli/remove/) | Remove content from rootform.lock |
| [` rootform remove dialects `](https://docs.rootform.dev/reference/cli/remove/dialects/) | Remove Dialects from rootform.lock |
| [` rootform remove policy-packs `](https://docs.rootform.dev/reference/cli/remove/policy-packs/) | Remove Policy Packs from rootform.lock |
| [` rootform update `](https://docs.rootform.dev/reference/cli/update/) | Change a selection in rootform.lock |
| [` rootform update dialect `](https://docs.rootform.dev/reference/cli/update/dialect/) | Change one selected Dialect |
| [` rootform update policy-pack `](https://docs.rootform.dev/reference/cli/update/policy-pack/) | Change one selected Policy Pack |
| [` rootform vendor `](https://docs.rootform.dev/reference/cli/vendor/) | Vendor selected non-embedded content |
| [` rootform vendor dialects `](https://docs.rootform.dev/reference/cli/vendor/dialects/) | Vendor selected Dialects |
| [` rootform vendor policy-packs `](https://docs.rootform.dev/reference/cli/vendor/policy-packs/) | Vendor selected Policy Packs |

### Rootform home

| Command | Purpose |
| --- | --- |
| [` rootform install `](https://docs.rootform.dev/reference/cli/install/) | Install registry content in the Rootform home |
| [` rootform install dialects `](https://docs.rootform.dev/reference/cli/install/dialects/) | Install Dialects from registry references |
| [` rootform install policy-packs `](https://docs.rootform.dev/reference/cli/install/policy-packs/) | Install Policy Packs from registry references |
| [` rootform uninstall `](https://docs.rootform.dev/reference/cli/uninstall/) | Delete installed versions from the Rootform home |
| [` rootform uninstall dialects `](https://docs.rootform.dev/reference/cli/uninstall/dialects/) | Delete installed Dialect versions |
| [` rootform uninstall policy-packs `](https://docs.rootform.dev/reference/cli/uninstall/policy-packs/) | Delete installed Policy Pack versions |

### Author and publish

| Command | Purpose |
| --- | --- |
| [` rootform compile `](https://docs.rootform.dev/reference/cli/compile/) | Compile a Policy Pack for offline checks |
| [` rootform compile policy-pack `](https://docs.rootform.dev/reference/cli/compile/policy-pack/) | Compile and pin a Policy Pack |
| [` rootform fmt `](https://docs.rootform.dev/reference/cli/fmt/) | Format Rootform files |
| [` rootform lsp `](https://docs.rootform.dev/reference/cli/lsp/) | Serve Rootform language features over stdio |
| [` rootform package `](https://docs.rootform.dev/reference/cli/package/) | Package Rootform content for distribution |
| [` rootform package dialects `](https://docs.rootform.dev/reference/cli/package/dialects/) | Build Dialect packages |
| [` rootform package policy-packs `](https://docs.rootform.dev/reference/cli/package/policy-packs/) | Build Policy Pack packages |
| [` rootform publish `](https://docs.rootform.dev/reference/cli/publish/) | Publish packaged Rootform content |
| [` rootform publish dialects `](https://docs.rootform.dev/reference/cli/publish/dialects/) | Publish a verified Dialect registry layout |
| [` rootform publish policy-packs `](https://docs.rootform.dev/reference/cli/publish/policy-packs/) | Publish a verified Policy Pack registry layout |
| [` rootform test `](https://docs.rootform.dev/reference/cli/test/) | Test Dialect fixtures |

### Other

| Command | Purpose |
| --- | --- |
| [` rootform completion `](https://docs.rootform.dev/reference/cli/completion/) | Generate shell completion |
| [` rootform version `](https://docs.rootform.dev/reference/cli/version/) | Show the Rootform version |

<!-- END GENERATED CLI -->

The complete command inventory above links to every subcommand, including
language-authoring commands. For result formats and non-universal exit codes,
see [Outputs and exit status](https://docs.rootform.dev/reference/outputs/).
