Running tragent in CI
Fail a build when a change makes your store harder for agents to use.
Try the CLI on your own machine
The scan needs no account and no key. It runs tragent's checks from your machine, so it works against a dev server too, and prints a score out of 100.
npx @tragent/cli scan https://your-store.comCreate an API key
In the dashboard, open Settings › API keys and create one for CI. Store it as a secret named TRAGENT_API_KEY — never in the workflow file.
Add the GitHub Action
It downloads the CLI release for the runner, checks it against the release checksums, runs your suite against staging and fails the build on a regression.
- uses: tragent-io/cli@v1 with: api-key: ${{ secrets.TRAGENT_API_KEY }} target: https://staging.shop.example suite: suites/retail-core.yaml gate: true comment: trueOr include the GitLab template
Put TRAGENT_API_KEY in a masked, protected CI/CD variable. The job skips itself when the key is absent, so a fork's pipeline does not fail on a secret it never had.
include: - remote: 'https://raw.githubusercontent.com/tragent-io/cli/v1/gitlab/.tragent.yml' tragent:agent-readiness: variables: TRAGENT_TARGET: https://staging.shop.example TRAGENT_SUITE: suites/retail-core.yaml
The idea
A readiness score is only useful if it does not quietly drop. The CLI can compare a run against a result you have accepted and fail the build when something regresses, which makes AI shopping readiness something a build can pass or fail, like any other test.
Add the GitHub Action, or call the CLI directly. Both post the same comment on a pull request: what changed, what regressed, and what it costs.
Exit codes
0 means the gate passed and 1 means it failed: a regression, a failing stage, or a score below the floor. 2 means nothing was measured — bad flags, an unreachable API, or a test that stopped with a test error — so a build does not go red as though the store broke.
Releases, with checksums for every platform, are published at github.com/tragent-io/cli/releases.