How do I know if a GitHub repository is safe?

Start by discarding the signals that feel reassuring but measure nothing. Stars are attention. Forks are attention. A recent commit means someone is active, not that they are careful, and a tidy README is the cheapest thing in the whole repository to fake.

What is worth reading is the behaviour the code arranges for itself. Look at package.json for preinstall and postinstall hooks, because those run without you asking. Look for code that builds a string and then evaluates it, since legitimate code rarely needs to hide what it executes. Look for reads of credential paths or a cloud metadata address. Look at where the dependencies come from: a git URL or an unfamiliar registry mirror is worth a question that a normal registry dependency is not.

If the project is an AI agent, a skill or an MCP server, read the instruction files too. Those are prose the model obeys, and a file that quietly tells an agent to exfiltrate something is not caught by reading the JavaScript.

That list is mechanical enough to automate, which is what the check below does. It reads a public repo and reports what it found, along with what it did not look at.

Read a public repo before you trust it

Static and read-only. We download the code and read it. We never install, run or execute it.

Common questions

Is a repo with no dependencies safer?

Only slightly. Fewer dependencies means less supply-chain surface, but the repo's own code can do anything a dependency could. Fewer dependencies narrows the question rather than answering it.

What are AI instruction files and why do they matter?

Files like CLAUDE.md, AGENTS.md or .cursorrules are read by coding agents as instructions. They are plain prose, so they are easy to overlook in review, and an instruction to send files somewhere is invisible to any check that only reads code. xlogs flags instruction files and looks for injection patterns in them.