Reference

Command Line Interface

LimitAID ships as a single binary with one subcommand per provider.

Usage

Basic pattern

Run the binary with a provider name and any flags you need.

./limitaid <provider> [options]

Available providers

codexCodex / OpenAI rate limits
openrouterOpenRouter balance and usage
zaiZ.ai coding plan limits
allRun every provider in sequence

Flags

Global options

These work on the root command — before you even pick a provider.

FlagWhat it does
-h, --helpPrint help text and exit
-v, --versionPrint version (0.1.0) and exit
--verboseIncrease log verbosity (stacks)
--quietSuppress all output except errors

Flags

Common provider options

Every subcommand accepts these flags.

FlagWhat it does
-j, --jsonOutput raw JSON from the API response
-c, --conf &lt;file&gt;Path to a custom key config file
--provider-config '...'Inject a key directly on the command line

Flags

Provider-specific options

Some flags only make sense for certain providers.

openrouter and zai only

FlagWhat it does
-n, --name &lt;name&gt;Select a specific named key from your config

all only

FlagWhat it does
--loop &lt;seconds&gt;Re-run all providers on a timer (minimum 30s)

Feature

Loop mode

Pass --loop with a number of seconds and LimitAID will clear your terminal and re-draw the output on that interval. Minimum interval is 30 seconds.

./limitaid all --loop 60

Press Ctrl+C to stop.

Feature

JSON output

Adding --json skips the formatted display and dumps the raw API response. Pipe it into jq, log it to a file.

./limitaid codex --json

Works the same way with openrouter, zai, and all. When combined with --loop, each cycle prints a fresh JSON blob.

Examples

Common invocations

Check every provider at once

./limitaid all

Query a specific OpenRouter key

./limitaid openrouter --name work-key

Use a custom config file

./limitaid zai --conf ./my-keys.conf

Inject a key on the fly

./limitaid openrouter --provider-config 'openrouter::sk-or-v1-abc123'