CodeSafer (cleaner-code)
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
> **AI code security scanner as a Model Context Protocol (MCP) server.**
> Detects hidden threats in AI-generated code that traditional linters miss.
**Website:** codesafer.org · **MCP Clients:** Claude Code, Cursor, VS Code + Copilot, Cline
---
Why CodeSafer?
AI coding assistants generate code fast — but who's checking it for hidden threats?
Recent supply-chain attacks show that malicious code can hide in ways human reviewers and traditional linters routinely miss:
- **Invisible Unicode characters** injected into identifiers (30+ variants)
- **BiDi / Trojan Source** attacks that reorder how code is displayed vs. executed (CVE-2021-42574)
- **Homoglyphs** — Cyrillic characters masquerading as Latin (CVE-2021-42694)
- **Glassworm-style Unicode steganography** hiding payloads in whitespace
- **Rules file backdoors** planted in .cursorrules, CLAUDE.md, and other AI config files
- **Typosquatted dependencies** in package.json
- **Obfuscation patterns** — eval + base64, reverse shells, packed payloads
CodeSafer scans for all of these before the code runs on your machine.
---
How it works
CodeSafer runs as a local MCP server. Your AI client (Claude Code, Cursor, etc.) calls its tools when reviewing or generating code, and findings are returned inline.
**Hybrid detection:**
1. **8 static analysis scanners** — deterministic rules for known attack categories (fast, zero false-negatives on the patterns they cover).
2. **CodeBERT deep analysis** — transformer model classifies code chunks as malicious/benign with confidence scores. Catches obfuscated or novel patterns that static rules miss.
Nothing leaves your machine. The AI analysis runs locally against a tokenizer server.
---
Features
| Capability | Details |
|---|---|
| Invisible character detection | 30+ Unicode variants including Zero-Width Space, Mongolian Vowel Separator |
| BiDi / Trojan Source | Full CVE-2021-42574 coverage |
| Homoglyph detection | Cyrillic/Greek/Latin confusables (CVE-2021-42694) |
| Unicode steganography | Glassworm-style whitespace payloads |
| Rules file backdoors | Scans .cursorrules, CLAUDE.md, .claude/, Cursor rules |
| Dependency scanning | Typosquatting + suspicious install scripts in package.json |
| Obfuscation detection | eval + base64, reverse shells, packed payloads |
| AI deep analysis | CodeBERT transformer classifier with confidence scores |
| MCP native | 6 MCP tools, stdio transport |
| Local-first | No code uploaded — runs entirely on your machine |
---
MCP Tools
CodeSafer exposes six tools to your MCP client:
| Tool | Purpose |
|---|---|
| scan_file | Scan a single file for hidden malicious code patterns |
| scan_directory | Recursively scan a directory across all source files |
| scan_rules_file | Scan an AI configuration/rules file for prompt injection and Rules File Backdoor attacks |
| check_dependencies | Check package.json for typosquatting, suspicious install scripts, and dependency risks |
| ai_analyze | Deep AI analysis using the trained CodeBERT model (classifies chunks as malicious/benign with confidence) |