refuse
refuse — это open-source shim для менеджеров пакетов, который автоматически блокирует установку уязвимых версий. Инструмент перехватывает команды установки от пользователя, AI-агента или CI/CD-пайплайна и проверяет их против базы из 362 000+ security-адвизоров. Уязвимые пакеты отклоняются с предложением безопасной альтернативы — чистые версии проходят без задержек.
Ключевые возможности
- Перехват установок на уровне shell: Интегрируется с npm, pip, cargo, gem, go и 13+ другими менеджерами пакетов — каждая команда проходит проверку перед обращением к реестру
- Проверка по 362 000+ адвизорам: Поддержка 21 экосистемы включая PyPI, npm, RubyGems, Cargo, Maven, NuGet и контейнерные образы
- Самостоятельное хостинг backend: Выбор между облачным сервисом refuse.dev или локальным развёртыванием для полного контроля данных
- Интеграция с AI-агентами: Работает с Claude Code, Cursor, Codex и любыми MCP-клиентами — защищает автоматизированные установки пакетов
- Автоматическое исправление версий: Команда
refuse fix мгновенно подсказывает безопасную версию для замены уязвимой
Сценарии использования
- Локальная разработка: Разработчики получают мгновенное предупреждение при попытке установить пакет с известными CVE — до момента попадания уязвимости в production
- AI-ассистированное программирование: Защита от «галлюцинаций» моделей, которые рекомендуют устаревшие или скомпрометированные версии пакетов
- CI/CD пайплайны: Автоматическая блокировка сборок при обнаружении уязвимых зависимостей в Docker-образах, GitHub Actions и скриптах развёртывания
- Корпоративная безопасность: Централизованная политика контроля зависимостей без изменения рабочих процессов команд
Целевая аудитория
Инструмент создан для разработчиков программного обеспечения, DevOps-инженеров и security-команд, которым необходимо обеспечить безопасность цепочки поставок ПО без снижения скорости разработки. Особенно ценен для команд, активно использующих AI-ассистентов для написания кода и автоматизации рутинных задач.