CLI Reference
The otto CLI manages the relay daemon, pairs extension nodes, registers controller clients, executes browser commands, and tails operation logs. All commands support --help for inline usage.
Command groups
| Group | Commands | Purpose |
|---|---|---|
| Relay lifecycle | otto start, otto stop, otto status | Start, stop, and inspect the relay daemon |
| Setup | otto setup | Interactive or non-interactive first-run setup |
| Configuration | otto config, otto settings | Read and edit controller configuration |
| Extension | otto extension update, otto extension info | Manage the packaged extension asset |
| Pairing | otto authcode, otto pair, otto revoke | Pair extension nodes with the relay |
| Client | otto client register/login/status/forget/remove | Manage controller client identities |
| Commands | otto commands list, otto cmd, otto test | Browse, run, and stream browser commands |
| Logs | otto logs list/follow/status/export | Query and stream relay operation logs |
| Listener | otto listener subscribe-network/unsubscribe/list | Manage network interception streams |
Global behavior
- All commands accept
--helpfor usage and flag descriptions. - Use
--jsonon supported commands for machine-readable output. Non-interactive mode removes TTY formatting. - Commands exit
0on success, non-zero on failure. - When exactly one node is connected,
targetNodeIdis auto-selected. With multiple nodes, pass--node-id.
Configuration file
Controller configuration is stored at ~/.otto/config.json. Use otto config to read it and otto settings to edit it interactively.
Related pages
- Installation — install the CLI and relay.
- Quickstart — first-run walkthrough.
- Configuration Reference — all relay environment variables.