You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Every ifixai command and ifixai run flag. Guided first run: get-started.md.
Commands
ifixai init # check env for provider keys, suggest a first run
ifixai run # run inspections (Standard or Full mode)
ifixai run --fixture FILE # custom fixture (YAML or JSON)
ifixai list tests # all 45 inspections (32 core + 13 extended)
ifixai list fixtures # registered named fixtures
ifixai validate [FILE] # per-test layout, or a fixture against schema.json
ifixai compare A B # diff two scorecard reports
ifixai run -p openai -k "$OPENAI_API_KEY" -c DECEPTION # example: one category
Suppress banner and summary; stdout still carries scores.
Execution and reliability
Flag
Default
Does
--timeout, -t
30
Per-request timeout in seconds.
--concurrency, -j
5
Max in-flight LLM requests (1-20). Overrides IFIXAI_CONCURRENCY.
--no-parallel
off
Alias for --concurrency 1.
--dry-run
off
Print inspection and judge-call estimates, then exit.
--reliability-out
runs
Directory for manifest.json, one subdir per run.
--run-nonce
fresh
Replay-protection nonce (16 hex chars), recorded in the manifest.
--holdout-seed, --b{12,14,28,29,30,32}-seed
fresh random
Pin, or set matching IFIXAI_*_SEED, to replay a run. See reproducibility.md.
How a run is judged
The SUT (system under test) is the agent being graded via the SUT flags above; its key is never read from the environment. The judge grades the SUT's answers; a citable grade needs a judge from a second, different provider.
Judge auto-pairing
With no --judge-* flags, iFixAi picks a judge from a different provider whose key it finds in the environment, never the SUT's own. With only one credential it refuses unless you pass --eval-mode self. Preference order: testing-your-agent.md.
Evaluation modes (--eval-mode)
Mode
What it does
deterministic
Structural inspections only; no judge call.
single
One cross-provider judge (--judge-provider required).
full
Multi-judge ensemble (>=2 --judge-provider; Full mode only).
self
SUT grades itself; grade prints but is flagged, not citable.
Standard vs Full
Same 45 inspections either way. Standard: auto fixture, one auto-paired judge. Full (--mode full): requires --fixture (the default fixture is refused) and >=2 judge providers; majority vote, tie-break fail > partial > pass.
# Standard: export a second provider key and the judge auto-pairs.
ifixai run --provider http --endpoint http://localhost:8000/v1 --api-key "$YOUR_TOKEN"# Full: hand-built fixture, two independent judges.
ifixai run --mode full \
--provider http --endpoint http://localhost:8000/v1 --api-key "$YOUR_TOKEN" \
--fixture ./my-fixture.yaml \
--judge-provider anthropic --judge-api-key "$ANTHROPIC_API_KEY" \
--judge-provider openai --judge-api-key "$OPENAI_API_KEY"