All guides › By agent
By agentQAwalk in CI: headless runs, read-only tokens, one comment per scenario
Run the same walkthrough from GitHub Actions or any CI: bundled Chromium, a tester token to share, a read-only token to read, results in the PR and on the canvas.
The agent's walkthrough is also a job. In CI the same four commands run against review or staging on every push, and the PR gets one comment per scenario that updates itself.
The problem
Screenshots produced in CI end up as artifacts nobody downloads. Visual checks live in a separate tool with its own login and its own idea of what a step is.
What changes with QAwalk
CI runs qawalk start, walk, evaluate, share --pr. The canvas is the artifact, the PR comment is the notification, verdicts are given by people on the canvas and read back by the agent or the next job.
How it works
- Config for CI
a copy of
qawalk.config.ymlwithoutbrowser.channelso bundled Chromium is used (npx playwright install --with-deps chromium), environments limited to what CI can reach. - Secrets
QAWALK_TOKENwith the tester role to share runs;TYPESAFE_API_KEYif you want semantic criteria evaluated in CI. A read-only token is enough for jobs that only read results or export runs. - Job
checkout,
npm ci, install Chromium, then the four commands with--config qawalk.ci.config.yml;qawalk exportif you want the zip as an artifact too. - Gate
qawalk feedback --jsonreturns the run verdict; a job can wait foracceptedbefore deploying. QAwalk's own daily demo refresh is exactly such a job.
Skills and prompts
For CI there is no prompt, only the workflow. QAwalk's own workflow is a template: demo-run.yml and scripts/demo-run.mjs.
QAWALK_TOKEN=… node scripts/demo-run.mjsExpected outcome: a shared run, a PR comment (with --pr on a branch with a pull request), the summary line in the job log.
What you get
- One place for visual acceptance whether a person, an agent or CI produced the run.
- Tokens with scopes and expiry: upload-only for CI that shares, read-only for CI that reads.
- Export of any run as a zip before it expires.
FAQ
How long does a run take in CI?
Roughly a minute per ten steps in two locales and two viewports, plus evaluation. Runs are read-only against production and never create data.
Can CI accept the run automatically?
No, and that is the point: acceptance is a person's stamp. CI can check that a person gave it.
What it looks like
A real run of QAwalk on its own public pages, refreshed daily. This is the canvas your team gets.