Files
video-setup/docs/cli/config_cli.md
mikael-lovqvists-claude-agent 44090c1d6d docs: write CLI docs for all 12 previously undocumented tools
Add docs/cli/ entries for:
  transport_cli, discovery_cli, config_cli, protocol_cli, query_cli,
  test_image_cli, xorg_cli, v4l2_view_cli, stream_send_cli,
  stream_recv_cli, reconciler_cli, controller_cli

Each doc covers: description, build instructions, full usage with all
options and defaults, example output, and a relationship note pointing
to related tools. controller_cli includes the display control IDs table
and notes its temporary status.

README.md: convert all CLI tool entries to links.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 00:45:27 +00:00

81 lines
1.7 KiB
Markdown

# config_cli
A development tool for loading and inspecting INI configuration files against the node's schema. Useful for verifying that a config file parses correctly and seeing what values would be applied.
---
## Build
From the repository root:
```sh
make cli
```
The binary is placed in `build/cli/`.
---
## Usage
### Load a config file
```sh
./config_cli <file>
```
Parses the file and prints all resolved values. Values absent from the file are filled with schema defaults.
Example:
```sh
./config_cli /etc/video-node/node.cfg
```
Example output:
```
[node]
name = camera:0
site_id = 0
tcp_port = 8000
function = source
[discovery]
interval_ms = 5000
timeout_intervals = 3
[transport]
max_connections = 16
```
### Print schema defaults
```sh
./config_cli --defaults
```
Prints all keys with their default values and types, without reading any file.
---
## Config Schema
| Section | Key | Type | Default |
|---|---|---|---|
| `node` | `name` | string | `unnamed:0` |
| `node` | `site_id` | uint16 | `0` |
| `node` | `tcp_port` | uint16 | `0` (auto) |
| `node` | `function` | flags | `source` |
| `discovery` | `interval_ms` | uint32 | `5000` |
| `discovery` | `timeout_intervals` | uint32 | `3` |
| `transport` | `max_connections` | uint32 | `16` |
`function` accepts a comma-separated list of role flags: `source`, `relay`, `sink`, `controller`.
---
## Relationship to the Video Routing System
`config_cli` exercises the `config` module used by the video node at startup. Both the node binary and `config_cli` share the same schema definition, so this tool is an accurate preview of how the node will interpret a config file.