SEO checks on every pull request: GitHub Action
The crawlwise audit action audits a URL (usually the preview deployment of the pull request), compares it with the last audit of the same URL, posts one comment with what changed, and fails the build on a critical regression. It is open source: https://github.com/Adnanarodiya/crawlwise-audit-action.
1. Add your API key as a secret
Create a key at /account/api (Pro and above) and save it in the repository as the secret CRAWLWISE_API_KEY.
2. Add the workflow
Point url at your preview deployment. min-score is optional; without it only regressions fail the build.
.github/workflows/seo.yml
name: SEO
on: pull_request
permissions:
contents: read
pull-requests: write
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: Adnanarodiya/crawlwise-audit-action@v1
with:
url: https://preview.your-site.com
api-key: ${{ secrets.CRAWLWISE_API_KEY }}
min-score: 803. What fails the build
fail-on: critical (the default) fails when indexing or AI crawler access regressed against the baseline. warning fails on any regression. never only comments. A check that did not run on the baseline is reported as new, never as a regression. Outputs: audit-id, severity, regressions, score.
4. Other CI: GitLab, CircleCI, anything with Node
The CLI is the same gate. Exit code 1 means a rule tripped, 2 means a usage or request error.
Any runner
npx crawlwise audit "$PREVIEW_URL" --fail-on 'score<80' --fail-on 'fixes>0'.gitlab-ci.yml
seo:
image: node:22
script:
- npx crawlwise audit "$PREVIEW_URL" --fail-on 'score<80'
variables:
CRAWLWISE_API_KEY: $CRAWLWISE_API_KEYPinned to Adnanarodiya/crawlwise-audit-action@v1. Netlify and Vercel users can use the build plugins instead.
All agents · Integrations · MCP reference · Claude Code · OpenAI Codex · Gemini CLI · GitHub Copilot · ChatGPT · OpenCode