Snyk
Интегрирует Snyk в IDE через Language Server Protocol для сканирования кода на уязвимости в реальном времени.
Описание
Snyk-LS — сервер на Go, реализующий Language Server Protocol для интеграции Snyk в IDE. Поддерживает Snyk Open Source, Infrastructure as Code и Code, используя CLI и API. Ключевые особенности: диагностика уязвимостей при открытии файлов, сканирование workspace, hover с деталями, code actions для фиксов, аутентификация OAuth2/Token, прогресс-отчеты и уведомления. Применяется для автоматизированной проверки безопасности кода, IaC и зависимостей в редакторах вроде VS Code или Eclipse.
Возможности
Диагностика уязвимостей
Отправка диагностик в IDE при открытии документов или сканировании папок.
Сканирование workspace
Запуск сканирования всех папок на старте или по команде, с кэшированием результатов.
Hover и подсветка
Форматированные hover с деталями уязвимостей и точная подсветка range в файлах.
Аутентификация
Автоматическая аутентификация через OAuth2 или токен, с открытием браузера или копированием URL.
Code Actions и Lenses
Code lenses для навигации dataflow, actions для фиксов, открытия браузера или уроков Snyk Learn.
Управление доверием
Проверка trusted folders для безопасного сканирования, с уведомлениями о статусе.
Автоматическое управление CLI
Загрузка и обновление Snyk CLI, если не найден, в XDG_DATA_HOME.
Установка
go get ./..., затем make build && make install для бинарника snyk-ls. Альтернатива: Скачайте готовые бинарники для Windows, macOS, Linux с https://github.com/snyk/snyk-ls/releases/tag/latest. Для конфигурации используйте флаги вроде -l для уровня логов или LSP-опции в initialize (например, activateSnykCode: ’true’).