Melious
CLI

Configuration

Where credentials and config live, how to log in, how to edit either file, and every available config key with its default.

For the API-side picture of keys and scopes, see Authentication.

Authentication

Log in

melious auth login

The CLI offers to open melious.ai/account/api/keys in your browser, then asks you to paste a key (sk-mel-...). We validate the key against the API before writing it to ~/.melious/credentials.json — that way a typo fails here, not on your first real call.

Check what's saved

melious auth status

Shows the masked key, the account email, plan, and when you last authenticated.

Log out

melious auth logout

Removes ~/.melious/credentials.json. Nothing else is touched.

Other ways to pass a key

An environment variable wins over the credentials file:

export MELIOUS_API_KEY=sk-mel-<YOUR_API_KEY>

A per-command flag wins over both:

melious run --api-key sk-mel-<YOUR_API_KEY> "Hello"

--api-key and MELIOUS_API_KEY take precedence over the saved credentials. Handy for CI, scripts, or temporarily borrowing another key without overwriting the one on disk.

Editing config

Show everything

melious config show

Add --json for a machine-readable dump.

Read one key

melious config get models.main
melious config get run.temperature

Keys are dot-notated and match the reference below.

Write one key

melious config set models.main qwen3-235b-a22b-instruct
melious config set run.temperature 0.5
melious config set defaults.preset speed

Open in your editor

melious config edit

We check $VISUAL, then $EDITOR, then fall back to notepad on Windows and nano elsewhere. "Nano over vim" is a call we made deliberately — we'd rather a new user find their way out than respect the muscle memory of people who've already set $EDITOR.

Reset to defaults

melious config reset

Asks for confirmation before overwriting your file.

Config reference

Every key, its type, and what it does. Defaults are what a fresh install uses.

Models

KeyTypeDefaultDescription
models.mainstringqwen3-235b-a22b-instructMain model for chat and one-off runs
models.secondarystringqwen3-235b-a22b-instructMid-tier fallback for tools that use a tiered model
models.lightweightstringqwen3-30b-a3b-instructSmall, fast model for cheap work

Defaults

KeyTypeDefaultDescription
defaults.toolstringclaude-codeTool that melious launch starts with no argument
defaults.presetstringbalancedRouting flavor. See Routing.

Run

KeyTypeDefaultDescription
run.system_promptstring""Default system prompt prepended to every run
run.temperaturefloat0.7Sampling temperature, [0, 2]
run.max_tokensint4096Cap on completion length
run.streambooltrueStream by default; set to false for a single blocking response

Image

KeyTypeDefaultDescription
image.modelstringflux-1-schnellDefault image model
image.sizestring1024x1024Default dimensions
image.qualitystringstandardstandard or hd
image.stylestringvividvivid or natural

Diff

KeyTypeDefaultDescription
diff.context_linesint30Lines of context around each hunk sent for review
diff.modelstringqwen3-coder-480b-a35b-instructModel used for melious diff

Stats

KeyTypeDefaultDescription
stats.showbooltrueShow the stats footer after a response
stats.timebooltrueInclude response duration
stats.tokensbooltrueInclude token counts
stats.costbooltrueInclude credit cost
stats.environmentbooltrueInclude carbon and renewable-energy percentage

Output

KeyTypeDefaultDescription
output.colorbooltrueColored terminal output
output.languagestringautoLanguage for CLI strings (auto follows system locale)
autoupdatebooltrueCheck for CLI updates in the background once a day

Per-tool model overrides

Launched tools inherit models.* by default. Override per tool with melious tools model:

melious tools model opencode qwen3-235b-a22b-instruct

These land under tool_models in the config and beat the global models.* when that specific tool is launched. See Managing tools.

Choosing a flavor

The CLI reads your default from defaults.preset and applies it as a suffix to the model ID at request time — qwen3-235b-a22b-instruct:speed, and so on. Override per-request with --preset on any command that hits inference. The flavors and what they weight are documented in Routing.

On this page