Automated QA forAI-written code.

paidwen.com · 2026-10-02 · by Long Nguyen ·generic
Paidwen runs every pull request your coding agents write and blocks the merge when a user journey breaks.

Automated QA forAI-written code.

Automated QA forAI-written code.

Your agents open pull requests faster than anyone can review them.

On every pull request, Paidwen opens your app and uses it like a real user. It creates an account, logs in and fills in your forms. If something breaks, it blocks the pull request and shows you a video of what broke.

Install on GitHub

Sort the invoice page in the web app #3

`claude/sort-invoice-page`into`main`

Paidwen This pull request breaks a user journey.

  • Journeys: 6 passed, 1 broken out of 7.
  • Broken: Sort the invoices by amount at step "expect text $5,936.40". After clicking "Largest first", the page /invoices?sort=amount does not show "$5,936.40".
  • Red line: no secret and no vulnerable dependency added.
  • Watch the video
  • PaidwenRequired

    Merging is blocked

    Pull request #3 of paidwen-demo sorts the invoices in the browser, one page at a time. The largest invoice stays on page 2, so the sort journey breaks. Open pull request #3 on GitHub

    Paidwen replays your user journeys in a real browser.

    A journey is a few lines of YAML. Paidwen clicks, types and reads the page like a user, and compares a broken journey with the base branch.

    Replay of the sort journey of paidwen-demo, at the moment Paidwen clicks Largest first on the invoices page.

    paidwen.yml

    journeys: - id: sort name: Sort the invoices by amount account: true steps: - goto: /login - fill: { field: Email, value: "{{account.email}}" } - fill: { field: Password, value: "{{account.password}}" } - click: Log in - goto: /invoices - click: Largest first - expect: { text: "$5,936.40" }

    Your real appPaidwen starts it from your compose file or Dockerfile, with a fresh database and your seed script.

    No real payment or emailStripe, email, storage and AI APIs answer from local mocks by default.

    Journeys written for you`npx paidwen init` writes a first journey for each public page. `npx paidwen record` records a journey while you click.

    Only the pull request is blamedA journey that also breaks on the base branch does not count against the pull request.

    Your agent reads the verdict and fixes the pull request.

    The verdict names the broken journey, the failed step and what the browser saw. Paidwen replays the journeys on every new commit.

    Output of npx paidwen verdict for pull request #3 of paidwen-demo

    paidwen-demo

    $ npx paidwen verdict This pull request breaks a user journey. Journeys: 6 passed, 1 broken out of 7. Broken: Sort the invoices by amount at step "expect text $5,936.40". After clicking "Largest first", the page /invoices?sort=amount does not show "$5,936.40". Red line: no secret and no vulnerable dependency added.

    For your agent: Pull request: #3 Sort the invoice page in the web app Commit: 59cb68c Broken journey: Sort the invoices by amount Step: expect text $5,936.40 Seen: After clicking "Largest first", the page /invoices?sort=amount does not show "$5,936.40". Video: https://api.paidwen.com/v/c6a77f97-11a2-4aa8-b8f5-78e43f4d806b Details: https://app.paidwen.com/RaselisonToky/verifications/c6a77f97-11a2-4aa8-b8f5-78e43f4d806b Fix the cause, push, and Paidwen will replay the journeys.

    Claude Code, Codex, Cursor and CopilotPaidwen verifies the pull requests of every agent and of your developers with the same journeys.

    Agent pull requests detectedPaidwen recognizes them by their branch prefix, their author and their Co-Authored-By lines.

    One command for the agent`npx paidwen verdict` prints the last verdict, ready to paste. `npx paidwen mcp` serves it to your agent.

    The dashboard keeps every verification of every repository.

    Each row is a pull request with its verdict, its journeys, its duration and the agent that wrote it.

    The Verifications page of the Paidwen dashboard for the paidwen-demo repository, with the numbers of the month and one row per verification.

    The month in four numbersPull requests verified, broken, stopped before the merge, and the share written by agents.

    One page per verificationThe verdict, the video, the commit and the workflow run.

    Copy for your agentThe verdict leaves the dashboard in one click, ready to paste.

    A monthly reportVerified pull requests per week and per repository, and the review hours saved.

    Your code never leaves your GitHub Actions runner.

    The servers of Paidwen receive the verdict lines and the link to the video. They never read or store your code.

    Your GitHub Actions runner

  • Your code
  • Your app and a fresh database
  • Chromium
  • The signed Paidwen engine
  • GitHub destroys the machine after the job.

    Verdict lines and video link

    Paidwen

  • The check on the pull request
  • The comment with the verdict
  • The page of the video

No Contents permissionThe GitHub App cannot read the code of your repository.

A signed engineThe runner refuses any engine whose signature does not match the pinned public key.

Forks without secretsA maintainer starts the first verification of a new contributor.

No AI model in the replayThe replay is a deterministic Playwright script.

Read the security page

Public repositories are free.

Install the GitHub App, add the workflow and paidwen.yml, and the next pull request gets its verdict.

Install on GitHubSee pricing

paidwen.com · 3 images · 2 videos · 14 links

Comments (0)

No comments yet