Skip to Content
ReferenceCLICommand reference

Command reference

Complete reference for the veris CLI. For install and auth, see Installation & auth. --help works on every command and group.

veris login

Authenticate with the Veris platform.

veris login # browser (Google OAuth) veris login $VERIS_API_KEY # API key (CI/headless) veris login --profile acme $API_KEY # log in under a named profile (e.g. a team org)

veris run

Run the full pipeline in one command: simulations → evaluations → report.

veris run # interactive veris run --scenario-set-id ID --grader-id ID --report # CI
FlagDescription
--scenario-set-id IDScenario set (prompts if omitted).
--grader-id IDGrader (auto-selected by scenario set if omitted).
--env-id IDEnvironment.
--target NAMETarget from veris.yaml.
--image-tag TAGImage tag. Default: latest.
--simulation-timeout NPer-simulation timeout in seconds.
--reportGenerate an HTML report after evaluation.

Progress logs go to stderr; the markdown summary goes to stdout. In CI, redirect stdout to a file.

veris env

Environment management.

veris env create

Create a new environment on Veris.

veris env create --name customer-support-env --agent-name "Customer Support"
FlagDescription
--name NAMEEnvironment / target name. Used verbatim (e.g. customer-support-env).
--agent-name NAMEAgent display name, stored in agent.name in veris.yaml.

Under the hood, this does four things:

  1. Scaffolds .veris/ with Dockerfile.sandbox, veris.yaml, and .dockerignore if they don’t exist. If veris.yaml already exists, appends a new target block.
  2. Registers the environment on the Veris backend (API call). A new environment resource is provisioned and gets an env_id.
  3. Writes the env_id to .veris/config.yaml under the target, so later commands (push, run, etc.) know which environment to act against without needing --env-id.
  4. Uploads the target’s initial config to the backend.

Re-running for an already-configured target is a no-op — the CLI detects the existing env_id and bails out. Run it for a new --name to add another target to the same .veris/ directory.

veris env submit

Submit your repo for managed environment setup. Packages the project as a tarball and uploads it. The Veris team generates your Dockerfile.sandbox and veris.yaml; you’ll get an email when it’s ready.

veris env submit [--env-id ID] [--target NAME]

After receiving the email:

veris env config pull # pull the generated config veris env push # build and deploy

veris env push

Build and push the environment image to Veris.

veris env push [--tag TAG] [--env-id ID] [--target NAME] [--force]
FlagDescription
--tag TAGImage tag. Default: latest.
--force / -fSkip the sync guard for managed-setup environments (use in CI).

If the remote config was updated since your last sync (e.g. by managed setup), the CLI prompts you to pull or push before building.

veris env list

List environments for the current profile.

veris env list

veris env delete

Delete an environment.

veris env delete ENV_ID

veris env config

Manage the remote veris.yaml without rebuilding the image.

veris env config pull [--env-id ID] [--target NAME] veris env config push [--file PATH] [--env-id ID] [--target NAME] [--force]

pull downloads Dockerfile.sandbox and veris.yaml from the backend. Use after veris env submit or to sync with remote changes.

push uploads veris.yaml to the backend without rebuilding the image. Useful when you’ve changed services or channels but not agent code.

FlagDescription
--file PATHPath to veris.yaml. Default: .veris/veris.yaml.
--force / -fSkip the sync guard (use in CI).

veris env vars

Manage per-environment runtime variables.

veris env vars set KEY=VALUE [KEY2=VALUE2 ...] [--secret] [--env-id ID] [--target NAME] veris env vars list [--env-id ID] [--target NAME] veris env vars rm KEY [--env-id ID] [--target NAME]
FlagDescription
--secretMark all values as secret (encrypted at rest).

Pass multiple pairs in one set call: veris env vars set DB_HOST=localhost DB_PORT=5432.

veris env targets

Manage the active target for this project when your veris.yaml has more than one.

veris env targets get # show active target veris env targets set NAME # set active target veris env targets list # list targets in veris.yaml veris env targets clear # clear active target

With an active target set, --target can be omitted on subsequent commands. See Multiple targets for the full workflow.

veris scenarios

Scenario management.

veris scenarios create

Auto-generate scenarios plus a matching grader from your agent’s code.

veris scenarios create [--env-id ID] [--num N] [--image-tag TAG]
FlagDescription
--num NNumber of scenarios to generate. Prompts if omitted.
--image-tag TAGImage tag to analyze. Default: latest.

veris scenarios status

Check scenario-generation progress.

veris scenarios status SET_ID [--watch]
FlagDescription
--watchPoll until generation completes.

veris scenarios list

List scenario sets for the current environment.

veris scenarios list [--env-id ID]

veris scenarios get

Open a scenario set in the console.

veris scenarios get SET_ID

veris scenarios delete

Delete a scenario set.

veris scenarios delete SET_ID

veris simulations

Simulation-run management.

veris simulations create

Create a simulation run. Prompts interactively for environment and scenario set if not provided.

veris simulations create [--scenario-set-id ID] [--env-id ID] \ [--simulation-timeout SECS] [--image-tag TAG]
FlagDescription
--scenario-set-id IDScenario set to run.
--simulation-timeout SECSPer-simulation timeout, 60–3600 seconds.
--image-tag TAGImage tag. Default: latest.

veris simulations status

Get run status with progress bar and simulation list.

veris simulations status SIM_RUN_ID [--watch] [--log]
FlagDescription
--watchPoll every 3 seconds until complete.
--logAppend the event stream below status.

veris simulations list

List simulation runs.

veris simulations list [--status STATUS] [--env-id ID]

veris simulations cancel

Cancel a running simulation.

veris simulations cancel SIM_RUN_ID

veris evaluations

Evaluation-run management.

veris evaluations create

Trigger evaluation on a completed simulation run.

veris evaluations create [--sim-run-id ID] [--grader-id ID]

The grader is pre-selected based on the scenario set used in the simulation run.

veris evaluations status

Get evaluation run status and results.

veris evaluations status SIM_RUN_ID EVAL_RUN_ID [--watch]

veris evaluations list

List evaluation runs.

veris evaluations list [SIM_RUN_ID] [--env-id ID]

Without SIM_RUN_ID, lists all evals for the current environment.

veris evaluations get

Open an evaluation run in the console.

veris evaluations get SIM_RUN_ID EVAL_RUN_ID

veris reports

Report management.

veris reports create

Generate a report from a simulation run’s evaluation.

veris reports create [SIM_RUN_ID] [--eval-run-id ID]
FlagDescription
--eval-run-id IDEvaluation run to report on. Defaults to most recent completed.

veris reports status

Check report generation status.

veris reports status REPORT_ID [--watch]

veris reports list

List reports.

veris reports list [--env-id ID]

veris reports get

View a report in the terminal, or download it.

veris reports get REPORT_ID # view in terminal veris reports get REPORT_ID --format html # download as HTML veris reports get REPORT_ID -o results.pdf # download as PDF (inferred from extension)
FlagDescription
--formatExport format: html, pdf, or md.
-o / --output-fileOutput file path. Default: report-<id>.<format>.

veris profile

Profile management. A profile is a named login bound to one Veris organization. See Installation & auth for the mental model.

veris profile list # list all profiles veris profile get # show active profile settings veris profile use [NAME] # set active profile (interactive if NAME omitted) veris profile delete NAME # delete a profile veris profile login [API_KEY] [--profile NAME] # alias for `veris login`

The default profile cannot be deleted. There is currently no top-level --profile flag for one-off commands — use veris profile use to switch.

veris profile org

Set or clear the organization for the active profile.

veris profile org set ORG_ID # bind active profile to an org veris profile org rm # unbind