blon command uses your Blon account and spends its credits. It is also what Skills run.
Install
@blon/cli has not been published to npm yet. These commands work once the first release is out.Sign in
blon auth login uses the device authorization flow. It prints a URL and a code and opens your browser on the approval page; approve the request while signed in to Blon. Over SSH or in a container the browser does not open, so open the printed URL on any device.
The session is saved in ~/.config/blon/credentials.json (mode 0600). Set BLON_CONFIG_DIR to keep it elsewhere. blon whoami prints the account, site, workspace and balance.
First generation
--<inputId> <value>. blon models get <id> lists them. List inputs take comma-separated values or a repeated flag. Write negative numbers as --seed=-1.
Media inputs
A media flag takes a local file path, anhttps:// URL, or an asset id. Local files are uploaded for you (images up to 20,000,000 bytes, other files up to 52,428,800 bytes).
Voice inputs
A voice flag takes a preset voice id from the model (blon models get <id> shows the allowed ones), or workspace:<voiceId> for a voice in your workspace.
Commands
generate flags:
If a wait is interrupted, resume it with
blon jobs wait <id> instead of submitting again.
Global flags: --json, --workspace <slug>, --base-url <url>, --help, --version.
JSON output
With--json, stdout holds only the response JSON; progress goes to stderr. With --wait --json that is the whole finished job.
Exit codes
Environment variables
CI
For unattended runs, setBLON_API_KEY and skip blon auth login. The CLI then spends the key’s workspace balance.