# JSON Output Reference
Most CLI commands support `--json`. JSON output is intended for tests, scripts,
CI, and agents.
## Workspace Inspect
```sh
rototo inspect ./config --json
```
Shape:
```json
{
"workspace": "/abs/path/config",
"environments": ["dev", "stage", "prod"],
"qualifiers": [
{
"id": "enterprise-accounts",
"uri": "qualifier://enterprise-accounts",
"path": "qualifiers/enterprise-accounts.toml"
}
],
"variables": [
{
"id": "llm-agent-config",
"uri": "variable://llm-agent-config",
"path": "variables/llm-agent-config.toml"
}
]
}
```
## Lint
Workspace lint:
```json
{
"workspace": "/abs/path/config",
"diagnostics": []
}
```
Selected entity lint:
```json
{
"workspace": "/abs/path/config",
"variables": [
{
"id": "llm-agent-config",
"diagnostics": []
}
],
"qualifiers": [
{
"id": "enterprise-accounts",
"diagnostics": []
}
]
}
```
Diagnostics contain stable fields such as `code`, `source`, `message`, `help`,
and `rule` when a lint rule is associated with the diagnostic. See
[Diagnostic reference](diagnostic-reference.html).
## List Commands
List:
```json
{
"workspace": "/abs/path/config",
"variables": [
{
"id": "llm-agent-config",
"uri": "variable://llm-agent-config",
"path": "variables/llm-agent-config.toml"
}
],
"qualifiers": [
{
"id": "enterprise-accounts",
"uri": "qualifier://enterprise-accounts",
"path": "qualifiers/enterprise-accounts.toml"
}
]
}
```
## Get Commands
Get:
```json
{
"workspace": "/abs/path/config",
"variables": [
{
"id": "llm-agent-config",
"uri": "variable://llm-agent-config",
"path": "variables/llm-agent-config.toml",
"value": {
"schema_version": 1,
"variable": {}
}
}
],
"qualifiers": [
{
"id": "enterprise-accounts",
"uri": "qualifier://enterprise-accounts",
"path": "qualifiers/enterprise-accounts.toml",
"value": {
"schema_version": 1,
"qualifier": {}
}
}
]
}
```
Variable get returns the expanded variable TOML after external value files have
been loaded.
## Resolution
```sh
rototo resolve ./config \
-v llm-agent-config \
-q enterprise-accounts \
--env prod \
-c @context.json \
--json
```
Shape:
```json
{
"workspace": "/abs/path/config",
"variables": [
{
"id": "llm-agent-config",
"environment": "prod",
"value_key": "enterprise",
"value": {
"model": "gpt-5",
"gateway": "openai",
"max_output_tokens": 5000,
"temperature": 0.2
}
}
],
"qualifiers": [
{
"id": "enterprise-accounts",
"value": true
}
]
}
```
## Diagnostic Catalog
Diagnostic list:
```json
{
"scope": "global",
"subject": "rototo",
"diagnostics": []
}
```
Diagnostic get prints one catalog entry as JSON.
## Stability Notes
The documented fields are intended for automation. Consumers should ignore
unknown fields so future versions can add detail without breaking existing
tools.