Skip to content

ShadowArcanist/github-pr-evaluator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

GitHub PR Evaluator

A browser extension that scans the author of a GitHub pull request and shows quick credibility signals directly on the PR page.

Preview

What It Does

  • Adds a side panel on GitHub pull request pages.
  • Fetches PR author data from the GitHub API.
  • Shows:
    • user category (Normal Human, Bounty Hunter, AI Slop Machine, PR Spammer)
    • global merge ratio
    • recent 60-day activity
    • PR history in the current repository
    • AI-likelihood estimate for recent PR descriptions
    • rule-based checks (commit message length, fork activity, profile completeness, branch target, commit author match)

How It Works

  1. content-script.js runs on github.com/*/*/pull/* and injects the panel UI.
  2. When you click Scan, the content script sends SCAN_PR_AUTHOR to background.js.
  3. background.js loads settings from local storage and calls GitHub APIs:
    • GraphQL path (single optimized query) when a PAT exists
    • REST fallback when GraphQL fails or no PAT is configured
  4. The result is normalized and sent back to the content script for rendering.

Setup

1. Clone the codebase

git clone https://github.com/ShadowArcanist/github-pr-evaluator

2. Load the extension

This project uses the browser.* extension API and is currently Firefox-oriented.

Note

Tested only on Firefox-based browsers.

  • Visit about:debugging#/runtime/this-firefox
  • Click Load Temporary Add-on...
  • Select manifest.json from the cloned folder (it will be inside the src folder)

3. Create a GitHub PAT (optional)

For a higher rate limit, create a GitHub Personal Access Token using this guide, then add it from the extension settings (gear icon).

Note: the token does not need any scopes for public repository data.

Usage

  1. Open any GitHub PR page (example: https://github.com/<owner>/<repo>/pull/<number>).
  2. Click Scan Now in the panel.
  3. Optional: save a GitHub Personal Access Token in the panel or popup for higher API limits.

Project Files

  • manifest.json: extension configuration and permissions.
  • content-script.js: PR page detection, panel injection, rendering.
  • background.js: API requests, caching, analysis logic, message handling.
  • popup.html + popup.js: extension popup settings.
  • panel.css: panel styling.

Limitations

  • When loaded as a temporary add-on, this extension may be unloaded after some time or after a browser restart.
  • If that happens, manually load it again by following Step 2 in the Setup section.

Notes

  • API responses are cached in memory for 5 minutes.
  • If no token is set, GitHub anonymous rate limits apply.
  • This project was built with AI support and tested only on Zen Browser (Firefox-based).

Contribution

  • This project was built primarily for personal use, so pull requests and new feature requests will not be merged unless needed by the maintainer.
  • If you want to make changes or add features, feel free to fork this repository.
  • It is open source so others can learn from it, use it as a base for their own projects, or run it as-is.

About

Browser extension that shows quick credibility signals for GitHub PR authors directly on the pull request page.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors