CLI & CI gate

One dependency-free command starts a suite, waits for the verdict and exits with a code your pipeline understands. PASS deploys; FAIL blocks; INCONCLUSIVE is your call.

Written from the code · updated 26 Sep 2026 · Something wrong or missing? Tell us

Install

The CLI is a single Node 22 script with no dependencies, so it runs straight from the repository or from npm:

npx @colvo/cli run --project <project id> --wait

Configuration

Option / envMeaning
COLVO_API_KEYBackend key (cak_…). Required.
COLVO_API_URLDefaults to https://colvo.app.
--projectProject id. Required.
--buildAgent build id; defaults to the project default.
--scenariosComma-separated template keys; default: whole library.
--repeats1–5, default 3.
--labelFree text shown in the console (e.g. the commit).
--wait / --no-waitWait for the verdict (default) or just start.
--timeoutMinutes to wait, default 15.
--inconclusive-exitExit code for INCONCLUSIVE: 0, 1 or 2 (default).

Exit codes

CodeMeaning
0PASS
1FAIL — a proven defect; do not deploy
2INCONCLUSIVE — not a proven defect, but do not deploy blindly (configurable)
3Usage, API or timeout error (including 402 plan limit)

GitHub Actions

name: colvo-gate
on: [push]
jobs:
  suite:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/setup-node@v4
        with: { node-version: 22 }
      - name: Run the COLVO suite
        env:
          COLVO_API_KEY: ${{ secrets.COLVO_API_KEY }}
        run: npx @colvo/cli run --project ${{ vars.COLVO_PROJECT_ID }} --label "${{ github.sha }}" --wait

Point the build at a staging deployment of your agent (a build whose endpoint is the preview URL) and the gate runs on every push. GitLab CI, CircleCI and plain shells work the same way; only the exit code matters.

CLI & CI gate · Docs · COLVO