Code analysis
static source read inferred
Static code-analysis findings — hidden prompt content in shipped skill files, committed secrets, dynamic-exec sinks, and suspicious call-home endpoints — across the analyzed catalogue. Heuristic, pure, no code executed; every row deep-links to its source. Click a kind to filter.
50020 analyzed
8131 re-analysis due
988 not analyzable
1 not yet analyzed
4803 source gone
not analyzable
789 too large 199 no source
Running analyzer v33. The scanner changelog explains what each version detects and when it changed.
- hidden prompt 338
- committed secret 6177
- dynamic exec 11826
- obfuscation 3575
- suspicious endpoint 12346
- credential in log 713
- over-broad oauth scope 2548
- suspicious skill script 185
- bundled IDE extension 49
- skill file 187620
- MEDIUM suspicious endpoint n24q02m/wet 169.254.169.254 (cloud metadata)
request = httpx.Request("GET", "http://169.254.169.254/latest/meta-data/") - HIGH dynamic exec n24q02m/wet eval()/exec()
exec(guard, {"sys": fake_sys, "io": io}) # noqa: S102 - trusted project source - HIGH committed secret n24q02m/wet Google OAuth client secret
GOCSPX…(35 chars, redacted) - HIGH committed secret n24q02m/wet Google OAuth client secret
GOCSPX…(35 chars, redacted) - MEDIUM suspicious endpoint jordanlyall/wc26-mcp api.telegram.org
await fetch(`https://api.telegram.org/bot${TOKEN}/sendMessage`, { - HIGH obfuscation claude-cup dynamic require()/import()
const { runHookIngest } = await import(toURL(SRC + '/hook-ingest.js')); - HIGH obfuscation claude-cup dynamic require()/import()
const { runHookIngest } = await import(toURL(SRC + '/hook-ingest.js')); - HIGH obfuscation claude-cup dynamic require()/import()
const { runHookIngest } = await import(toURL(SRC + '/hook-ingest.js')); - HIGH dynamic exec @modelcontextprotocol/server new Function()
const validate = new Function(`${names_1.default.self}`, `${names_1.default.scope}`, sourceCode)(this, this.scope.get()); - HIGH dynamic exec @modelcontextprotocol/server new Function()
const validate = new Function(`${names_1.default.self}`, `${names_1.default.scope}`, sourceCode)(this, this.scope.get()); - HIGH dynamic exec @modelcontextprotocol/client new Function()
const validate = new Function(`${names_1.default.self}`, `${names_1.default.scope}`, sourceCode)(this, this.scope.get()); - HIGH dynamic exec @modelcontextprotocol/client new Function()
const validate = new Function(`${names_1.default.self}`, `${names_1.default.scope}`, sourceCode)(this, this.scope.get()); - HIGH credential in log @modelcontextprotocol/sdk credential in log
console.log(`🔑 Received API key \x1b[32m${apiKey}\x1b[0m for session ${sessionId}`); - HIGH credential in log @modelcontextprotocol/sdk credential in log
console.log(`🔑 Received API key \x1b[32m${apiKey}\x1b[0m for session ${sessionId}`); - MEDIUM suspicious endpoint codewithnuh/blockend sentry.io (telemetry)
href="https://sentry.io/"