Skip to content

CLI Reference

xtz is intentionally small: it starts, stops, and inspects the official web service, and nothing else. Anything it cannot verify, it refuses — with a non-zero exit code.

Commands

CommandWhat it does
xtzSame as xtz start
xtz start [--port N]Seed defaults if needed, start in the background, print the URL, open the browser
xtz stopStop the process xtz started
xtz restartStop, then start
xtz openOpen the current URL in the browser
xtz statusInspect the remembered port without changing anything
xtz doctorInspect runtime, xtz stamp, profile, and port
xtz config pathPrint the official web profile patch path
xtz versionPrint CLI, Node, and pinned DSH versions
xtz helpShow help

Ports

The default listen address is 127.0.0.1:3080.

  • If 3080 is occupied by something that is not Xiaotaozi, an interactive xtz start can offer 3082+.
  • Non-interactive runs refuse unless --port is set explicitly.
  • xtz never kills a process it did not start, and never steals a port.

A service is accepted as healthy only when the loopback-only, versioned Xiaotaozi identity endpoint returns the exact v1 contract.

Intentionally disabled

These subcommands fail closed by design:

text
init · plugin · run · ask · config dump · config defaults · update

Extra plugins are installed from the in-app Market, not from the command line.

Exit codes

CodeMeaning
0The requested operation succeeded
1The service is stopped, or a readiness check failed
2Invalid usage, an unverified port occupant, or an operation blocked by the safety policy

Exit codes are stable, so xtz status and xtz doctor are safe to script against.

Released under the MIT License.