Sinfin QAwalk · proof of concept
Your agent walks the acceptance plan using your skills and your configuration. QAwalk captures every screen and e-mail on the way, checks each criterion and lays the run out as a canvas. The team reviews it, approves steps or sends them back, and every run stays versioned by branch, commit and PR.
An ACCEPTANCE.md next to the task says what each screen must achieve. A scenario.yml turns it into steps, branches and criteria the CLI can run.
A Playwright script, an agent with a browser or computer use, or a person walks the flow in a shared browser. Every step is captured the same way: full-page screenshots on desktop and mobile, rendered HTML, console errors, and e-mails from your test mailbox (Mailpit).
Countable criteria — elements, texts, prices, metadata, overflow — are checked in the live page and reported with evidence. Criteria that need judgement are answered by an AI evaluator from a reduced text outline of the page. It returns a probability; QAwalk turns it into pass, fail or needs review. The default evaluator is JEV by TypeSafe and it can be swapped.
The run becomes a canvas: screens, branches, tested locales, metadata and evidence for every criterion. Reviewers approve a step or reject it with a note. The agent reads the notes with qawalk feedback and fixes them in the next run.
QAwalk runs where your code and your agent are. The service stores and versions the results, shows the canvas and collects approvals.
npm install --save-dev github:sinfin/qawalk#v0.1.0Proof of concept: the repository is private. Ask Sinfin for access.
npx qawalk init --agent claude --org <your-org>The skill is copied to .claude/skills/qawalk. You can install it as a plugin instead: /plugin marketplace add sinfin/qawalk.
npx qawalk init --agent codex --org <your-org>The skill is copied to skills/qawalk and AGENTS.md gets a pointer to it.
npx qawalk init --org <your-org>No skill is installed. Drive the CLI from scripts or CI; qawalk help lists every command.
Create an organization; you become its admin. The start page offers a tester token in one click, later you find it under Settings → API tokens. Put it into the project .env:
QAWALK_TOKEN=qwk_…
TYPESAFE_API_KEY=… # optional: semantic evaluatornpx qawalk start --scenario docs/tasks/TASK-123/qa/scenario.yml --env local
npx qawalk walk # playwright steps; agent/manual steps: qawalk capture
npx qawalk evaluate
npx qawalk shareOr ask your agent: “Walk the acceptance plan of TASK-123 with QAwalk on local and share the result.”
The AI evaluator receives a reduced text outline of the page with e-mail addresses and tokens masked. It never receives screenshots or raw HTML.
People sign in with a one-time link sent to their work e-mail. A viewer reads and reviews, a tester also pushes runs, an admin also manages members, domains and tokens.
Every run has an expiry date (30 days by default) and is deleted afterwards. Captured HTML is served in a sandbox without scripts.