How the checks become a score, how the score becomes a verdict, and how your policy turns the verdict into allow, warn or block.
codeload.github.com,
release assets under /releases/download/, raw files, and
downloads clicked from a repository page whose bytes come from a
GitHub host. It holds the download while it decides.owner/repo to the verdict service at
api.repogates.com — plus, if you arrived from a known AI
surface, that surface's hostname. Never a full URL, never page or
repository contents. (Through the Claude Code plugin or the MCP
preflight tool it is the command line instead, with URL
credentials and NAME=value assignments redacted, parsed
on the server and not stored.)PASS, REVIEW or BLOCK — with
the findings that fired. Verdicts are cached, so popular repositories
answer in milliseconds.The whole decision is budgeted at about eight seconds, inside the fifteen-second ceiling Chrome gives a download listener. What happens when that ceiling is hit is described plainly in troubleshooting.
What it does not see. RepoGates gates downloads made through the browser. It does not see git clone, package managers or curl — outside Claude Code with the RepoGates plugin, whose hook refuses a clone or install that names a blocked repository on the command line, before it runs. The hook sees Bash tool calls in that one client and nothing else. VS Code and Docker Desktop extensions and agent skills are answered through the MCP server and the plugin, not in the browser.