CLI Reference¶
This document contains the help content for the zelos command-line program.
Command Overview:
zelos↴zelos status↴zelos login↴zelos logout↴zelos actions↴zelos actions list↴zelos actions execute↴zelos actions schema↴zelos actions tui↴zelos agent↴zelos agent info↴zelos agent settings↴zelos agent settings set-data-retention↴zelos agent settings set-log-retention↴zelos agent settings set-dev-mode↴zelos agent settings set-memory-limit↴zelos extensions↴zelos extensions list↴zelos extensions install↴zelos extensions install-local↴zelos extensions start↴zelos extensions stop↴zelos extensions reinstall↴zelos extensions uninstall↴zelos extensions check-updates↴zelos extensions update↴zelos extensions info↴zelos extensions config↴zelos extensions create↴zelos live↴zelos live signals↴zelos live query↴zelos live watch↴zelos live export↴zelos live demo↴zelos trace↴zelos trace info↴zelos trace signals↴zelos trace query↴zelos trace merge↴zelos update↴zelos version↴zelos completions↴
zelos¶
Use the Zelos command line interface (CLI) to interact with the Zelos App, Zelos Agent, or directly with Zelos Cloud.
Connect to your agent, query live signals, manage extensions, inspect trace files, and more — all from the command line.
Usage: zelos [OPTIONS] <COMMAND>
Environment Variables:
| Variable | Description |
|---|---|
RUST_LOG |
Override log level (e.g. RUST_LOG=debug zelos status) |
Files & Paths:
| Path | Description |
|---|---|
~/.zelos/bin/ |
CLI binary location |
~/.zelos/ |
Configuration directory |
| System keyring | Cloud credentials |
Subcommands:¶
status— Print Zelos system statuslogin— Login to Zelos Cloudlogout— Logout from Zelos Cloudactions— List, execute, and inspect agent actionsagent— Inspect and configure the Zelos agentextensions— Manage Zelos Agent extensionslive— Interact with live agent datatrace— Trace file operationsupdate— Update the Zelos CLI to the latest versionversion— Print versioncompletions— Generate or install shell completions
Options:¶
-q,--quiet— Disable logging to console-v,--verbose— Log to console, with increasing verbosity
zelos status¶
Print Zelos system status (agent, cloud, and app connectivity).
Usage: zelos status
Examples:
zelos login¶
Login to Zelos Cloud using the OAuth2 device authorization flow.
Opens a browser to authenticate and stores credentials in the system keyring.
Usage: zelos login [OPTIONS]
Examples:
Options:¶
-d,--device-name <DEVICE_NAME>— The device name (default: hostname)
zelos logout¶
Logout from Zelos Cloud and remove stored credentials from the system keyring.
Usage: zelos logout
Examples:
zelos actions¶
List, execute, and inspect agent actions.
Actions are remote procedures registered by extensions running on the Zelos Agent. Use these commands to discover available actions, view their parameter schemas, and execute them with JSON parameters.
Usage: zelos actions [OPTIONS] <COMMAND>
Subcommands:¶
list— List all available actionsexecute— Execute an actionschema— Get the schema for an actiontui— Interactive TUI for browsing and executing actions
Options:¶
--host <HOST>— Agent gRPC endpoint
Default value: localhost:2300
zelos actions list¶
List all available actions
Usage: zelos actions list [OPTIONS]
Examples:
Options:¶
--json— Output in JSON format
zelos actions execute¶
Execute an action, optionally passing parameters as JSON.
Usage: zelos actions execute [OPTIONS] <ACTION>
Examples:
zelos actions execute "Get Status"
zelos actions execute "Read Registers" --params '{"address": 0, "count": 10}'
zelos actions execute "Configure" --params-file config.json
Arguments:¶
<ACTION>— Action path (e.g. "service/action")
Options:¶
-p,--params <PARAMS>— JSON parameters--params-file <PARAMS_FILE>— Read parameters from a JSON file-t,--timeout <TIMEOUT>— Timeout in milliseconds
zelos actions schema¶
Show the parameter schema for an action.
Usage: zelos actions schema <ACTION>
Examples:
Arguments:¶
<ACTION>— Action path (e.g. "service/action")
zelos actions tui¶
Interactive TUI for browsing and executing actions
Usage: zelos actions tui
zelos agent¶
Inspect and configure the Zelos Agent.
View agent health, system info, and current settings. Modify data retention, log retention, developer mode, and memory limits.
Usage: zelos agent [OPTIONS] <COMMAND>
Subcommands:¶
info— Show agent health, system info, and current settingssettings— View or modify agent settings
Options:¶
--host <HOST>— Agent gRPC endpoint
Default value: localhost:2300
zelos agent info¶
Show agent health, system info, and current settings
Usage: zelos agent info [OPTIONS]
Examples:
Options:¶
--json— Output in JSON format
zelos agent settings¶
View or modify agent settings. Run without a subcommand to display current settings.
Usage: zelos agent settings [OPTIONS] [COMMAND]
Examples:
zelos agent settings
zelos agent settings --json
zelos agent settings set-data-retention 24h
zelos agent settings set-dev-mode true
zelos agent settings set-memory-limit 2GB
Subcommands:¶
set-data-retention— Set data retention period (e.g. "1h", "24h", "7d", "none" to disable)set-log-retention— Set log retention period (e.g. "1h", "24h", "7d", "none" to disable)set-dev-mode— Enable or disable developer modeset-memory-limit— Set memory limit (e.g. "512MB", "2GB", "none" to disable)
Options:¶
--json— Output in JSON format (for viewing)
zelos agent settings set-data-retention¶
Set data retention period (e.g. "1h", "24h", "7d", "none" to disable)
Usage: zelos agent settings set-data-retention <VALUE>
Arguments:¶
<VALUE>— Duration string (e.g. "1h", "24h", "7d") or "none" to disable
zelos agent settings set-log-retention¶
Set log retention period (e.g. "1h", "24h", "7d", "none" to disable)
Usage: zelos agent settings set-log-retention <VALUE>
Arguments:¶
<VALUE>— Duration string (e.g. "1h", "24h", "7d") or "none" to disable
zelos agent settings set-dev-mode¶
Enable or disable developer mode
Usage: zelos agent settings set-dev-mode <VALUE>
Arguments:¶
<VALUE>— true or false
Possible values: true, false
zelos agent settings set-memory-limit¶
Set memory limit (e.g. "512MB", "2GB", "none" to disable)
Usage: zelos agent settings set-memory-limit <VALUE>
Arguments:¶
<VALUE>— Memory limit string (e.g. "512MB", "2GB") or "none" to disable
zelos extensions¶
Manage Zelos Agent extensions.
Install, start, stop, update, and inspect extensions running on the agent. Extensions are plugins that add data sources, actions, and custom behavior.
Usage: zelos extensions [OPTIONS] <COMMAND>
Subcommands:¶
list— List all installed extensionsinstall— Install an extension from the marketplaceinstall-local— Install an extension from a local directory (requires agent --dev-mode)start— Start an extensionstop— Stop an extensionreinstall— Reinstall an extension's environment without removing configuninstall— Uninstall an extensioncheck-updates— Check for available updates for all installed extensionsupdate— Update an extension to a specific or latest versioninfo— Show detailed information about an installed extensionconfig— View configuration schema and last saved config for an extensioncreate— Create a new extension from a template
Options:¶
--host <HOST>— Agent gRPC endpoint
Default value: localhost:2300
zelos extensions list¶
List all installed extensions
Usage: zelos extensions list [OPTIONS]
Examples:
Options:¶
--json— Output in JSON format
zelos extensions install¶
Install an extension from the marketplace (e.g. acme/canbus-listener).
Usage: zelos extensions install <NAME> [VERSION]
Examples:
Arguments:¶
<NAME>— Extension name in 'publisher/name' format<VERSION>— Extension version tag (e.g., "0.1.0", "latest")
Default value: latest
zelos extensions install-local¶
Install an extension from a local directory (requires agent --dev-mode)
Usage: zelos extensions install-local <PATH>
Examples:
Arguments:¶
<PATH>— Path to extension source directory containing extension.toml
zelos extensions start¶
Start an extension
Usage: zelos extensions start [OPTIONS] <ID>
Examples:
zelos extensions start my-extension
zelos extensions start my-extension --config '{"demo": true}'
zelos extensions start my-extension --config-file config.json
Arguments:¶
<ID>— Extension ID to start
Options:¶
--config-file <CONFIG_FILE>— Path to a configuration file to pass to the extension--config <CONFIG>— A string of configuration to pass to the extension
zelos extensions stop¶
Stop an extension
Usage: zelos extensions stop <ID>
Examples:
Arguments:¶
<ID>— Extension ID to stop
zelos extensions reinstall¶
Reinstall an extension's environment without removing config
Usage: zelos extensions reinstall <ID>
Examples:
Arguments:¶
<ID>— Extension ID to reinstall
zelos extensions uninstall¶
Uninstall an extension
Usage: zelos extensions uninstall <ID>
Examples:
Arguments:¶
<ID>— Extension ID to uninstall
zelos extensions check-updates¶
Check for available updates for all installed extensions
Usage: zelos extensions check-updates
Examples:
zelos extensions update¶
Update an extension to a specific or latest version
Usage: zelos extensions update <ID> [VERSION]
Examples:
Arguments:¶
<ID>— Extension ID to update<VERSION>— Target version tag (e.g., "0.2.0", "latest")
Default value: latest
zelos extensions info¶
Show detailed information about an installed extension
Usage: zelos extensions info [OPTIONS] <ID>
Examples:
Arguments:¶
<ID>— Extension ID (e.g., "acme/canbus-listener")
Options:¶
--json— Output in JSON format
zelos extensions config¶
View configuration schema and last saved config for an extension
Usage: zelos extensions config [OPTIONS] <ID>
Examples:
Arguments:¶
<ID>— Extension ID
Options:¶
--json— Output in JSON format
zelos extensions create¶
Create a new extension from a template
Usage: zelos extensions create [OPTIONS] <NAME>
Examples:
zelos extensions create my-new-extension
zelos extensions create my-new-extension --author "Jane Doe" --description "My extension"
Arguments:¶
<NAME>— Project name for the new extension
Options:¶
-o,--output <OUTPUT>— Output directory (default: current directory)--author <AUTHOR>— Author name--email <EMAIL>— Author email--github <GITHUB>— GitHub handle--description <DESCRIPTION>— Project description--python-version <PYTHON_VERSION>— Python version
Default value: 3.11
zelos live¶
Interact with live agent data. All subcommands connect to the agent via gRPC.
List signals, query values, stream live updates, export traces, or publish mock demo data for testing.
Usage: zelos live [OPTIONS] <COMMAND>
Subcommands:¶
signals— List available signals from connected agentsquery— Query latest signal values from live agent datawatch— Stream live signal values from connected agentsexport— Export live trace data from connected agents to a .trz filedemo— Publish mock device data to the agent for testing
Options:¶
--host <HOST>— Agent gRPC endpoint
Default value: localhost:2300
zelos live signals¶
List available signals from connected agents
Usage: zelos live signals [OPTIONS]
Examples:
Options:¶
--json— Output in JSON format
zelos live query¶
Query latest signal values from live agent data.
Signal format: */source/message.signal — the leading * is a wildcard for the data segment ID, but source, message, and signal must be exact names (no wildcards). Use live signals to discover available signal names.
Usage: zelos live query [OPTIONS] --signals <SIGNALS>
Examples:
zelos live query -s '*/iot_gateway/temperature.sensor1' --last 1m
zelos live query -s '*/bus0/BMS_status.battery_level' --format json
Options:¶
-s,--signals <SIGNALS>— Signal patterns to query (e.g. '*/bus0/BMS_message/status.battery_level')-l,--last <LAST>— Time span preset (e.g. 30s, 1m, 5m, 10m, 30m, 1h)
Default value: 30s
Possible values:
30s: Last 30 seconds1m: Last 1 minute5m: Last 5 minutes10m: Last 10 minutes30m: Last 30 minutes1h: Last 1 hour2h: Last 2 hours6h: Last 6 hours12h: Last 12 hours-
24h: Last 24 hours -
--start <START>— Explicit start time (ISO 8601, e.g. 2025-01-01T00:00:00Z) --end <END>— Explicit end time (ISO 8601, e.g. 2025-01-01T01:00:00Z)-a,--agents <AGENTS>— Agent addresses to query (default: all connected agents)-f,--format <FORMAT>— Output format
Default value: table
Possible values:
table: Tab-separated table (human readable)json: JSON outputcsv: Comma-separated values
zelos live watch¶
Stream live signal values, refreshing periodically. Press Ctrl+C to stop.
Usage: zelos live watch [OPTIONS]
Examples:
Options:¶
-i,--interval <INTERVAL>— Refresh interval
Default value: 1s
* -n, --count <COUNT> — Number of refreshes (0 = unlimited, until Ctrl+C)
Default value: 0
zelos live export¶
Export live trace data from connected agents to a .trz file
Usage: zelos live export [OPTIONS]
Examples:
zelos live export --last 5m -o capture.trz
zelos live export --start 2025-01-01T00:00:00Z --end 2025-01-01T01:00:00Z -o capture.trz
Options:¶
-o,--output <OUTPUT>— Output file path (default: trace_.trz in current directory) -l,--last <LAST>— Time span preset (e.g. 30s, 1m, 5m, 10m, 30m, 1h, 2h, 6h, 12h, 24h)
Default value: 1h
Possible values:
30s: Last 30 seconds1m: Last 1 minute5m: Last 5 minutes10m: Last 10 minutes30m: Last 30 minutes1h: Last 1 hour2h: Last 2 hours6h: Last 6 hours12h: Last 12 hours-
24h: Last 24 hours -
--start <START>— Explicit start time (ISO 8601, e.g. 2025-01-01T00:00:00Z) --end <END>— Explicit end time (ISO 8601, e.g. 2025-01-01T01:00:00Z)-a,--agents <AGENTS>— Agent addresses to export from (default: all connected agents)-f,--force— Overwrite output file if it exists
zelos live demo¶
Publish mock device data to the agent for testing.
Simulates BMS, DCDC, inverter, and sensor devices at various frequencies. Press Ctrl+C to stop (or use --duration).
Usage: zelos live demo [OPTIONS]
Examples:
Options:¶
-d,--device <DEVICE>— Mock device types to simulate
Default value: all
Possible values:
all: All mock devices (BMS + DCDC + Inverter + Sensor)bms: Battery Management System (1 Hz)dcdc: DC-DC Converter (1 Hz)inverter: Grid/Battery Inverter (10 Hz)-
sensor: Generic Sensors & System Events (100 Hz) -
--duration <DURATION>— Duration to run (e.g. 30s, 5m, 1h). Omit to run until Ctrl+C
zelos trace¶
Offline operations on .trz trace files.
Inspect metadata, list signals, query signal data, and merge multiple traces into a single file.
Usage: zelos trace <COMMAND>
Subcommands:¶
info— Show detailed metadata for a .trz trace filesignals— List available signals in a trace filequery— Query signal data from a .trz trace filemerge— Merge multiple .trz files into a single trace
zelos trace info¶
Show metadata for a trace file including time range, data segments, tables, and row counts.
Usage: zelos trace info [OPTIONS] <FILE>
Examples:
Arguments:¶
<FILE>— Path to the .trz trace file
Options:¶
--json— Output in JSON format
zelos trace signals¶
List available signals in a trace file
Usage: zelos trace signals [OPTIONS] <FILE>
Examples:
Arguments:¶
<FILE>— Path to a .trz trace file
Options:¶
--json— Output in JSON format
zelos trace query¶
Query signal data from a .trz trace file
Usage: zelos trace query [OPTIONS] --signals <SIGNALS> <FILE>
Examples:
zelos trace query recording.trz -s '*/bus0/BMS_message/status.battery_level'
zelos trace query recording.trz -s '*/*.*' --format json -n 50
Arguments:¶
<FILE>— Path to the .trz trace file
Options:¶
-s,--signals <SIGNALS>— Signal patterns to query (e.g. '*/bus0/BMS_message/status.battery_level')-n,--limit <LIMIT>— Maximum number of rows to return (0 = unlimited)
Default value: 100
* -f, --format <FORMAT> — Output format
Default value: table
Possible values:
table: Tab-separated table (human readable)json: JSON outputcsv: Comma-separated values
zelos trace merge¶
Merge multiple .trz files into a single trace. Accepts individual files and/or directories containing .trz files.
Usage: zelos trace merge [OPTIONS] --output <OUTPUT> <INPUTS>...
Examples:
zelos trace merge trace1.trz trace2.trz -o combined.trz
zelos trace merge ./traces/ -o combined.trz --force
Arguments:¶
<INPUTS>— Input .trz files or directories containing .trz files
Options:¶
-o,--output <OUTPUT>— Output file path-f,--force— Overwrite output if it exists--keep-partial— Keep partial output file on error (default: clean up)
zelos update¶
Self-update the CLI binary to the latest (or a specific) version.
Downloads the release from the Zelos CDN, verifies the SHA-256 checksum, and replaces the current binary in place. Shell completions are automatically reinstalled after a successful update.
Usage: zelos update [OPTIONS]
Examples:
zelos update # update to latest
zelos update --version 0.1.2 # install specific version
zelos update --force # skip confirmation prompt
Options:¶
--version <VERSION>— Install a specific version instead of latest-f,--force— Skip confirmation prompt
zelos version¶
Print the CLI version and build target.
Usage: zelos version
Examples:
zelos completions¶
Generate or install shell completions for bash, zsh, fish, PowerShell, or elvish.
If no shell is specified, the current shell is auto-detected from $SHELL. Use --install to write completions directly to the appropriate system directory. Without --install, completions are printed to stdout for manual piping or inspection.
Usage: zelos completions [OPTIONS] [SHELL]
Examples:
zelos completions bash --install # install to system dir
zelos completions zsh --install # install for zsh
zelos completions fish --install # install for fish
zelos completions bash # print to stdout
zelos completions # auto-detect shell, print to stdout
Completions are also auto-installed during zelos update and the installer script.
Arguments:¶
<SHELL>— Shell to generate completions for (auto-detected if omitted)
Possible values: bash, elvish, fish, powershell, zsh
Options:¶
--install— Install completions into the appropriate system directory