Install
ANPORD_API_KEY before commands that call Anpord. --help, --version, eval import and eval --local work without it.
Commands
Check which organization a key uses
--json prints the same facts as JSON. The secret is never printed. anpord eval also prints the organization once before its first batch.
Run evals
*.eval.ts under the current directory (skipping node_modules, dist, build and hidden folders) and runs them one after another. Each suite file starts one batch: one run per case per variant, each with the suite’s number of trials. The command waits for the batch and applies the gate. In an interactive terminal the grid updates as trials finish. Otherwise it prints the final grid once.
With --case and no file, the CLI runs a case Anpord already stores again, on its newest version.
Under every gate, a batch that fails to start, fails, or times out fails the command.
anpord eval import reads an existing case file (or a directory of them) and prints a suite, or writes it with --out. It converts the mechanical assertions and leaves prose ones failing until someone writes the check. It reports how many of each on stderr. See importing a case file.
Connect credentials
anpord connectors add <integration> connects a credential for the organization. It prompts for the secret, or reads it from stdin when not run in a terminal, so the secret never appears in your shell history. Pass --default to make it the one evals use, --name to label it and --auth to pick an auth method. Integrations that sign in through a browser are connected in the dashboard instead.
anpord connectors integrations lists what can be connected, connectors list shows what the organization has, and connectors remove <id> deletes one.
Exit codes
Failures print without a stack trace. Status messages go to stderr.
When Anpord cannot be reached, the error says so and names the address it tried. The first request checks that the server answers and gives up within 5 seconds if it does not. After that, a read that gets no answer in 30 seconds gives up with an error that says the server was slow, not unreachable. A change is never cut off once the server has it, so it cannot be applied twice.