Skip to content

GitHub Action

The AEOrank GitHub Action runs in your CI pipeline and posts AEO scores as Check Runs and PR comments. Use it when you want full control over triggers, thresholds, and workflow configuration.

.github/workflows/aeorank.yml
name: AEO Score
on: [push, pull_request]
permissions:
checks: write
pull-requests: write
contents: read
jobs:
aeo:
runs-on: ubuntu-latest
steps:
- uses: vinpatel/aeorank-action@v1
with:
url: https://your-site.com
InputRequiredDefaultDescription
urlYesURL to scan
tokenNogithub.tokenGitHub token for API calls
fail-belowNo0Fail the Check if score drops below this value (0 = never fail)

Your workflow must declare these permissions:

permissions:
checks: write # Post Check Runs
pull-requests: write # Post PR comments
contents: read # Standard read access

On every push and pull request:

The Action runs aeorank scan <url> --format json and posts the result as a Check Run with:

  • Score and grade in the Check summary
  • Full 36-dimension breakdown table in the Check details
  • Conclusion: success (≥70), neutral (40–69), or failure (<40)

On pull requests only:

Posts a PR comment with the score and dimension table. Uses a hidden <!-- aeorank-score --> marker so re-runs update the existing comment.

Set fail-below to make the Check fail when the score drops below your threshold:

- uses: vinpatel/aeorank-action@v1
with:
url: https://your-site.com
fail-below: 70

PRs that drop the score below 70 will show a failing Check — blocking merge if you use branch protection rules.

Scorefail-below triggered?Conclusion
70–100No✅ Success
40–69No— Neutral
0–39No❌ Failure
AnyYes (score < threshold)❌ Failure

Speed up runs by caching npm:

steps:
- uses: actions/cache@v4
with:
path: ~/.npm
key: ${{ runner.os }}-npm-aeorank
- uses: vinpatel/aeorank-action@v1
with:
url: https://your-site.com

When a PR comes from a fork, GITHUB_TOKEN is restricted to read-only. The Action cannot post Check Runs or PR comments on fork PRs. Use pull_request_target as a workaround (see security implications).

GitHub ActionGitHub App
SetupAdd YAML workflow fileOne-click install
ControlFull — custom triggers, thresholdsAutomatic on every PR
fail-belowComing soon
Runs onYour GitHub Actions minutesAEOrank servers

Recommendation: Use the Action if you need fail-below thresholds or custom workflow logic. Use the GitHub App for zero-friction setup.