Configuration File Reference¶
tlm-cli is configured through a TOML file that holds the target instance address and authentication credentials.
File location¶
The CLI searches for the configuration file in the following directories, in order:
| Priority | Path |
|---|---|
| 1 | Current working directory (./) |
| 2 | ~/.config/tlm-cli/ |
| 3 | /etc/tlm-cli/ |
The first file found is used. The default filename is .config.toml. Override it with the TLM_CONFIG_FILENAME environment
variable:
File format¶
[application]
instance = "your-instance.example.com"
[auth]
username = "user@example.com"
password = "your-password"
Fields¶
[application]¶
| Field | Type | Required | Description |
|---|---|---|---|
instance |
string | yes | Hostname of the ToloMEO Manager instance, e.g. tolomeo.io. Do not include https:// or a trailing slash. |
The client derives all API base URLs from this value:
- Resource APIs:
https://apis.<instance> - Authentication:
https://accounts.<instance>
[auth]¶
| Field | Type | Required | Description |
|---|---|---|---|
username |
string (email) | yes | Email address used to authenticate against the instance. |
password |
string | yes | Password for the account. |
Example¶
Create ~/.config/tlm-cli/.config.toml and fill in your actual values:
[application]
instance = "your-instance.example.com"
[auth]
username = "you@example.com"
password = "your-password"
If you are working from a cloned repository, a .config.toml.sample file is provided at the repository root as a starting
point.
Security
The configuration file contains plaintext credentials. Restrict its permissions to the owning user:
Runtime options¶
These options control CLI behaviour at runtime and are independent of the TOML config file.
Output mode¶
| Mechanism | How to use |
|---|---|
--plain flag |
tlm-cli --plain pms devices list |
TLM_CLI_PLAIN env var |
TLM_CLI_PLAIN=1 tlm-cli pms devices list |
| Automatic (non-TTY stdout) | Pipe or redirect stdout: tlm-cli pms devices list \| jq |
When plain mode is active:
- stdout emits newline-delimited JSON: arrays for list commands, objects for show/detail commands.
- stderr emits
warning:anderror:prefixed plain-text messages. - Interactive prompts, TUI editors, progress spinners, and Rich formatting are all disabled.
Plain mode activates automatically whenever stdout is not a TTY — for example in Docker containers
without an attached terminal, CI pipelines, or shell redirects. You do not need to set --plain
explicitly when piping output.