Skip to main content
Glama

CodeSafer (cleaner-code)

Сканер безопасности ИИ-кода в качестве сервера протокола контекста модели (MCP). Обнаруживает скрытые угрозы в коде, созданном ИИ, которые пропускают традиционные линтеры.

npm license: ISC Node

Веб-сайт: codesafer.org  ·  MCP-клиенты: Claude Code, Cursor, VS Code + Copilot, Cline


Почему CodeSafer?

ИИ-ассистенты пишут код быстро, но кто проверяет его на наличие скрытых угроз?

Недавние атаки на цепочки поставок показывают, что вредоносный код может скрываться способами, которые люди-рецензенты и традиционные линтеры регулярно пропускают:

  • Невидимые символы Unicode, внедренные в идентификаторы (более 30 вариантов)

  • Атаки BiDi / Trojan Source, которые меняют порядок отображения кода по сравнению с его выполнением (CVE-2021-42574)

  • Омоглифы — кириллические символы, маскирующиеся под латиницу (CVE-2021-42694)

  • Стеганография Unicode в стиле Glassworm, скрывающая полезную нагрузку в пробелах

  • Бэкдоры в файлах правил, внедренные в .cursorrules, CLAUDE.md и другие конфигурационные файлы ИИ

  • Тайпсквоттинг зависимостей в package.json

  • Шаблоны обфускации — eval + base64, обратные оболочки (reverse shells), упакованные полезные нагрузки

CodeSafer сканирует всё это до того, как код будет запущен на вашей машине.


Related MCP server: guardvibe

Как это работает

CodeSafer работает как локальный MCP-сервер. Ваш ИИ-клиент (Claude Code, Cursor и т. д.) вызывает его инструменты при просмотре или генерации кода, а результаты возвращаются в виде встроенных сообщений.

Гибридное обнаружение:

  1. 8 сканеров статического анализа — детерминированные правила для известных категорий атак (быстро, отсутствие ложноотрицательных результатов для покрываемых ими шаблонов).

  2. Глубокий анализ CodeBERT — модель-трансформер классифицирует фрагменты кода как вредоносные/безопасные с оценкой достоверности. Обнаруживает обфусцированные или новые шаблоны, которые пропускают статические правила.

Ничего не покидает вашу машину. ИИ-анализ выполняется локально с использованием токенизатора.


Возможности

Возможность

Подробности

Обнаружение невидимых символов

30+ вариантов Unicode, включая неразрывный пробел, монгольский разделитель гласных

BiDi / Trojan Source

Полное покрытие CVE-2021-42574

Обнаружение омоглифов

Конфликтующие символы кириллицы/греческого/латиницы (CVE-2021-42694)

Стеганография Unicode

Полезная нагрузка в пробелах в стиле Glassworm

Бэкдоры в файлах правил

Сканирование .cursorrules, CLAUDE.md, .claude/, правил Cursor

Сканирование зависимостей

Тайпсквоттинг + подозрительные скрипты установки в package.json

Обнаружение обфускации

eval + base64, обратные оболочки, упакованные полезные нагрузки

Глубокий ИИ-анализ

Классификатор-трансформер CodeBERT с оценкой достоверности

MCP native

6 инструментов MCP, транспорт stdio

Локально-ориентированный

Код не загружается — работает полностью на вашей машине


Инструменты MCP

CodeSafer предоставляет шесть инструментов для вашего MCP-клиента:

Инструмент

Назначение

scan_file

Сканирование одного файла на наличие скрытых шаблонов вредоносного кода

scan_directory

Рекурсивное сканирование каталога по всем исходным файлам

scan_rules_file

Сканирование файла конфигурации/правил ИИ на наличие инъекций промптов и бэкдоров в файлах правил

check_dependencies

Проверка package.json на тайпсквоттинг, подозрительные скрипты установки и риски зависимостей

ai_analyze

Глубокий ИИ-анализ с использованием обученной модели CodeBERT (классифицирует фрагменты как вредоносные/безопасные с достоверностью)

explain_finding

Получение подробного объяснения конкретной категории угрозы со сценариями атак и методами устранения


Установка

Предварительные требования

  • Node.js 18 или новее

  • MCP-совместимый клиент (Claude Code, Cursor, VS Code + Copilot, Cline)

Из исходного кода

git clone https://github.com/goldmembrane/cleaner-code.git
cd cleaner-code
npm install
npm run build

Настройка вашего MCP-клиента

Claude Code (~/.claude.json или проектный .mcp.json):

{
  "mcpServers": {
    "codesafer": {
      "command": "node",
      "args": ["/absolute/path/to/cleaner-code/dist/index.js"]
    }
  }
}

Cursor (.cursor/mcp.json):

{
  "mcpServers": {
    "codesafer": {
      "command": "node",
      "args": ["/absolute/path/to/cleaner-code/dist/index.js"]
    }
  }
}

Перезапустите клиент, и инструменты CodeSafer появятся в меню выбора инструментов.


Использование

После настройки задавайте своему ИИ-клиенту вопросы, например:

  • "Просканируй этот файл на наличие скрытых проблем безопасности."

  • "Проверь зависимости в package.json на наличие тайпсквоттинга."

  • "Просканируй .cursorrules на наличие бэкдора в файле правил."

  • "Запусти глубокий ИИ-анализ src/auth.ts."

  • "Объясни, что такое атака Trojan Source и как исправить найденную проблему."

Клиент вызовет соответствующий инструмент MCP и вернет результаты с указанием серьезности, номеров строк и рекомендаций по устранению.


Бесплатный тариф и планы

CodeSafer бесплатен в использовании. Статический анализ (scan_file, scan_directory, scan_rules_file, check_dependencies, explain_finding) не имеет ограничений.

Глубокий ИИ-анализ (ai_analyze) включает 10 бесплатных запусков за сессию. Платные планы для увеличения квот ИИ доступны на codesafer.org.


Категории обнаружения

CodeSafer обнаруживает угрозы в 9 категориях:

  1. Невидимые символы Unicode — 30+ вариантов, включая неразрывный пробел, неразрывный соединитель

  2. Атаки BiDi / Trojan Source — CVE-2021-42574

  3. Омоглифы — кириллические/греческие символы, маскирующиеся под латиницу (CVE-2021-42694)

  4. Стеганография Unicode — шаблоны Glassworm в пробелах

  5. Бэкдоры в файлах правил — вредоносные инструкции в .cursorrules, CLAUDE.md и т. д.

  6. Риски зависимостей — тайпсквоттинг и подозрительные скрипты установки

  7. Шаблоны обфускации — eval + base64, упакованные полезные нагрузки, обратные оболочки

  8. Результаты статического анализа — 8 детерминированных сканеров

  9. Глубокий ИИ-анализ — трансформер CodeBERT для новых и обфусцированных угроз


Структура проекта

cleaner-code/
├── src/
│   ├── index.ts           # MCP server entry point
│   ├── api-server.ts      # Optional HTTP API server
│   ├── types.ts           # Scanner interfaces
│   ├── utils.ts           # File collection, summary formatting
│   └── scanner/
│       ├── invisible.ts       # Invisible Unicode scanner
│       ├── bidi.ts            # BiDi / Trojan Source scanner
│       ├── homoglyph.ts       # Homoglyph scanner
│       ├── encoding.ts        # Encoding / charset scanner
│       ├── obfuscation.ts     # Obfuscation pattern scanner
│       ├── steganography.ts   # Unicode steganography scanner
│       ├── rules-backdoor.ts  # Rules file backdoor scanner
│       ├── dependency.ts      # Dependency risk scanner
│       └── ai-analyzer.ts     # CodeBERT deep analyzer
├── ml/                    # ML model assets and tokenizer
├── functions/             # Cloud function deployments
├── deploy/                # Deployment manifests
└── web/                   # Landing page assets

Лицензия

ISC — подробности см. в файле LICENSE.


Ссылки

Available Tools

6 tools
ai_analyzeA

Deep AI analysis of code using the trained CodeBERT model. Classifies code chunks as malicious or benign with confidence scores. Detects obfuscated payloads, novel attack patterns, and threats that static rules may miss.

Inputs: file_path (required).

check_dependenciesB

Check package.json for typosquatting, suspicious install scripts, and dependency risks

Inputs: file_path (required).

explain_findingA

Get detailed explanation of a specific threat category including attack scenarios, real-world examples, and remediation steps

Inputs: category (required).

scan_directoryB

Recursively scan a directory for hidden malicious code patterns across all source files

Inputs: dir_path (required), extensions.

scan_fileB

Scan a single file for hidden malicious code patterns (invisible chars, BiDi, homoglyphs, steganography, obfuscation, etc.)

Inputs: file_path (required).

scan_rules_fileA

Scan an AI configuration/rules file for prompt injection and Rules File Backdoor attacks

Inputs: file_path (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: scan_file vs scan_directory differ by scope, ai_analyze uses ML, check_dependencies focuses on dependencies, and scan_rules_file is for configuration files. No ambiguity.

    Naming Consistency4/5

    Tools mostly follow verb_noun snake_case pattern (e.g., scan_file, check_dependencies). The outlier is ai_analyze, which uses a prefix instead of a verb-noun structure, but it's still clear and consistent overall.

    Tool Count5/5

    With 6 tools covering scanning, AI analysis, dependency checks, and explanations, the count is well-scoped for a focused security analysis server. Not too many or too few.

    Completeness4/5

    The tools cover core scanning and analysis tasks well, including file/directory scanning, dependency risks, AI-based analysis, and explanations. A minor gap is the lack of a tool for aggregated reporting or finding management, but the surface is largely complete for detection and explanation.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      B
      maintenance
      Security MCP server with 300+ rules for AI-generated code. Scans Next.js, Supabase, Clerk, Stripe, Prisma, Hono, GraphQL and 20+ modules. Zero config, runs locally.
      39
      2,686 npm
      6
      Apache 2.0
    • A
      license
      A
      quality
      B
      maintenance
      MCP security server for AI coding agents. 12 tools: pre-install guardian, vulnerability audit, supply-chain attack detection via static code analysis, and CycloneDX 1.6 SBOM generation. Zero runtime dependencies.
      15
      81 npm
      15
      Apache 2.0