One scan for AI risk. `opena2a review` checks an AI project across credentials, shadow agents, MCP servers, and dependencies, returns a score, and routes each finding to the tool that fixes it. Open source.
- capability exposure inferred + 35
- tool safety inferred + 12
- trust mitigators mixed − 3
inferred mixed
The A–E grade is our heuristic synthesis — a "review this" prompt, not a verdict. Each factor is tagged by what backs it: attested (a verifiable record), reported (a third party's claim), or inferred (our own heuristic, e.g. permissions). See methodology.
graded 4m ago · see ecosystem CVEs →
- C · 37 → C · 44
- C · 57 → C · 37
- C · 49 → C · 57
- B · 32 → C · 49
- A · 0 → B · 32
No known CVEs for this server.
- high dangerous code
committed secret: Anthropic key, AWS access key id, OpenAI key, Slack app token, Google API key · dynamic exec: new Function(), eval()
- low dangerous code
env-secret-flows-to-network-js: A process environment value (often a secret/token) flows into a network call — possible credential exfiltration. (opena2a-org-opena2a-46849a9/packag
analyzed commit 46849a9 · analyzer v31 · 1d ago
danger signals13
- dynamic code execution new Function() opena2a-org-opena2a-46849a9/packages/cli/__tests__/commands/review.test.ts :106
new Function('document', 'window', script)(documentStub, {}); - dynamic code execution eval() opena2a-org-opena2a-46849a9/packages/cli/__tests__/scanners/skillguard-checks.test.ts :250
eval(code); - suspicious endpoint 169.254.169.254 (cloud metadata) opena2a-org-opena2a-46849a9/packages/cli/__tests__/natural/nanomind-classifier.test.ts :438
expect(isLocalhostHttpUrl('http://169.254.169.254:80')).toBe(false); - committed secret Anthropic key opena2a-org-opena2a-46849a9/packages/aim-core/src/dlp/dlp.test.ts :50
sk-ant…(43 chars, redacted) - committed secret Anthropic key opena2a-org-opena2a-46849a9/packages/cli/__tests__/PROTECT_WALKTHROUGH.md :47
sk-ant…(94 chars, redacted) - committed secret Anthropic key opena2a-org-opena2a-46849a9/packages/cli/__tests__/benign-fp-regression.test.ts :105
sk-ant…(94 chars, redacted) - committed secret AWS access key id opena2a-org-opena2a-46849a9/packages/cli/__tests__/util/aws-key-pair-consistency.test.ts :145
AKIAIO…(20 chars, redacted) - committed secret Anthropic key opena2a-org-opena2a-46849a9/packages/cli/docs/testing/new-user-walkthrough.md :69
sk-ant…(94 chars, redacted) - committed secret AWS access key id opena2a-org-opena2a-46849a9/packages/credential-patterns/src/match.test.ts :264
AKIARE…(20 chars, redacted) - committed secret Anthropic key opena2a-org-opena2a-46849a9/packages/credential-patterns/src/patterns.test.ts :18
sk-ant…(43 chars, redacted) - committed secret OpenAI key opena2a-org-opena2a-46849a9/packages/credential-patterns/src/patterns.test.ts :22
sk-pro…(39 chars, redacted) - committed secret Slack app token opena2a-org-opena2a-46849a9/packages/credential-patterns/src/patterns.test.ts :118
xapp-1…(39 chars, redacted) - committed secret Google API key opena2a-org-opena2a-46849a9/packages/credential-patterns/src/patterns.test.ts :275
AIzaSy…(39 chars, redacted)
Heuristic, inferred signals — false positives (legitimately powerful tools, forks, language ports) are expected. Treat each as "review this", not a verdict. See the ecosystem-wide picture on the security hub, or the fleet security of opena2a-org.