qaitai docs

GitHub PR checks

Run suites on pull requests and deployments, and report results as GitHub checks.

One GitHub App handles both sign-in and repo access. It asks for the least privilege that works: read access to contents, pull requests, deployments, statuses and metadata, and write access to checks only. Signing in with GitHub never grants code access; that comes from installing the App on specific repositories.

Status

Editing a project's preview URL pattern and creating suites in the app are still being built. Until it ships, the quickest way to get results on every PR is the CLI in GitHub Actions. A qaitai/action backed by the public API is planned (see API).

On qaitai Cloud

  1. Sign in with GitHub and install the qaitai App on the repositories you want to test.
  2. Give the project a preview URL pattern, for example https://acme-git-{branch}.vercel.app (placeholders: {pr}, {branch}, {sha}), or rely on your host's deployment events.
  3. Add a suite with the pr or deploy trigger.

When a non-draft PR is opened or updated, or a deployment succeeds, each matching suite runs once per head commit. A check named qaitai / <suite name> appears on the PR and is completed with the result: success, failure with a summary of findings by severity, or neutral "Not run" with the reason (for example, an unverified preview host).

Preview deployments from a connected repo on hosts like vercel.app or netlify.app can count as verified domains, but only strict subdomains created by trusted deployment bots.

On your own instance

Create the App from the command line (no sign-in needed):

node scripts/create-github-app.mjs --app-url https://qa.example.com --env docker/.env

This opens GitHub with a pre-filled manifest; after you click Create GitHub App, the credentials are written to the env file. Then restart: docker compose -f docker/compose.yml up -d. Instance admins can also create it in the app from Settings. Webhooks need QAITAI_URL to be reachable from GitHub.

On this page