A browser extension that scans the author of a GitHub pull request and shows quick credibility signals directly on the PR page.
- 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)
- user category (
content-script.jsruns ongithub.com/*/*/pull/*and injects the panel UI.- When you click Scan, the content script sends
SCAN_PR_AUTHORtobackground.js. background.jsloads 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
- The result is normalized and sent back to the content script for rendering.
git clone https://github.com/ShadowArcanist/github-pr-evaluatorThis 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.jsonfrom the cloned folder (it will be inside thesrcfolder)
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.
- Open any GitHub PR page (example:
https://github.com/<owner>/<repo>/pull/<number>). - Click Scan Now in the panel.
- Optional: save a GitHub Personal Access Token in the panel or popup for higher API limits.
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.
- 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.
- 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).
- 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.
