VibeShift: инженер по безопасности для Vibe Coders
VibeShift — это интеллектуальный агент безопасности, разработанный для бесшовной интеграции с помощниками по кодированию ИИ (такими как Cursor, GitHub Copilot, Claude Code и т. д.). Он действует как ваш автоматизированный инженер по безопасности, анализируя код, сгенерированный ИИ, выявляя уязвимости и облегчая исправление с помощью ИИ до того, как небезопасный код попадет в вашу кодовую базу. Он использует MCP (Model Context Protocol) для плавного взаимодействия в вашей существующей среде кодирования ИИ.
Проблема: помощники по кодированию на основе ИИ значительно ускоряют разработку, но они также могут генерировать код с едва заметными или явными уязвимостями безопасности. Ручная проверка всего кода, сгенерированного ИИ, на наличие уязвимостей безопасности — медленный процесс, подверженный ошибкам и не масштабируемый со скоростью разработки ИИ. Такая «разработка, основанная на вибрации» может оставить приложения уязвимыми.
Решение: VibeShift от GroundNG устраняет этот критический пробел в безопасности, позволяя вашему помощнику по программированию на основе искусственного интеллекта:
Автоматический анализ кода, сгенерированного ИИ: когда код генерируется или изменяется помощником на базе ИИ, VibeShift может быть запущен для выполнения анализа безопасности с использованием набора инструментов (компоненты SAST, DAST) и проверок, управляемых ИИ.
Выявление уязвимостей безопасности: выявление распространенных и сложных уязвимостей (например, XSS, SQLi, небезопасных конфигураций, логических ошибок) в фрагментах кода, сгенерированных ИИ, или в более крупных блоках кода.
Содействие устранению неполадок с помощью ИИ: предоставляет подробную обратную связь и информацию об уязвимостях непосредственно помощнику по кодированию на основе ИИ, позволяя ему предлагать или даже автоматически применять исправления.
Создайте цикл обратной связи по безопасности: гарантируйте, что разработчики и их помощники на базе искусственного интеллекта немедленно узнают о потенциальных рисках безопасности, что позволяет быстро вносить исправления и обучаться.
Это создает «сдвиговую влево» парадигму безопасности для кодирования с использованием ИИ, встраивая безопасность непосредственно в рабочий процесс разработки и помогая быстрее поставлять более безопасный код.
Демонстрация (Нажмите, чтобы воспроизвести эти видео)

Функции
Интеграция MCP: бесшовная интеграция с Cursor/Windsurf/Github Copilot/Roo Code
Автоматическое сканирование безопасности: запускает генерацию/модификацию кода ИИ для выполнения следующих действий:
Статический анализ кода (SAST): интегрирует такие инструменты, как Semgrep, для поиска уязвимостей в исходном коде.
Динамический анализ (примитивы DAST): может вызывать такие инструменты, как Nuclei или ZAP, для проверки работающих компонентов (где применимо).
Запись тестов с помощью искусственного интеллекта: создание сценариев тестов на основе драматурга на основе описаний на естественном языке (в автоматическом режиме).
Детерминированное выполнение теста: надежное выполнение записанных тестовых файлов JSON с помощью Playwright.
Тестовое обнаружение на основе ИИ: сканируйте веб-сайты и используйте любой LLM (в формате, совместимом с OpenAI), чтобы предлагать шаги тестирования для обнаруженных страниц.
Регрессионное тестирование: легко запускайте существующие тестовые наборы для выявления регрессий.
Автоматизированный цикл обратной связи: результаты выполнения (включая сбои, снимки экрана, журналы консоли) возвращаются, обеспечивая прямую обратную связь для помощника на основе искусственного интеллекта.
Самовосстановление: существующие тесты самовосстанавливаются в случае изменения кода. Нет необходимости обновлять вручную.
Тесты пользовательского интерфейса: Тесты пользовательского интерфейса, которые не поддерживаются playwright напрямую, также поддерживаются. Например,
Check if the text is overflowing in the divВизуальное регрессионное тестирование : с использованием традиционного подхода сопоставления пикселей и визуального LLM.
Как это работает
Пользователь: дает подсказки своему помощнику по кодированию на основе ИИ (например, «Проверить этот репозиторий на наличие уязвимостей безопасности», «Записать тест для процесса входа в систему», «Запустить регрессионный тест 'test_login.json'»).
Агент кодирования ИИ: распознает намерение и использует MCP для вызова соответствующего инструмента, предоставленного
MCP Server.Сервер MCP: направляет запрос в соответствующую функцию (
get_security_scan,record_test_flow,run_regression_test,discover_test_flows,list_recorded_tests).Агент VibeShift:
Традиционное сканирование безопасности: вызывает инструменты статического анализа (например, Semgrep) кода.
Запись:
WebAgent(в автоматическом режиме) взаимодействует с LLM для планирования шагов, управляет браузером черезBrowserController(Playwright), обрабатывает HTML/Vision и сохраняет полученные тестовые шаги в файле JSON в каталогеoutput/.Выполнение:
TestExecutorзагружает указанный тестовый файл JSON, используетBrowserControllerдля взаимодействия с браузером в соответствии с записанными шагами и фиксирует результаты, снимки экрана и журналы консоли.Обнаружение:
CrawlerAgentиспользуетBrowserControllerиLLMClientдля сканирования страниц и предложения тестовых шагов.
Браузер: Драматург управляет фактическим взаимодействием браузера.
Цикл обратной связи:
Подробный отчет по безопасности (уязвимости, местоположения, предложения) возвращается через сервер MCP в AI Coding Agent .
Агент кодирования ИИ представляет эту информацию разработчику и может использовать ее для предложения или применения исправлений .
Цель — быстрый цикл генерации кода -> сканирования безопасности -> исправления с помощью ИИ -> повторное сканирование (необязательно).
Начиная
Предпосылки
Питон 3.10+
Доступ к любой степени магистра права (по моим тестам, лучше всего работает бесплатная версия Gemini 2.0 Flash)
MCP установлен (
pip install mcp[cli])Браузеры Playwright установлены (
patchright install)
Установка
Клонируйте репозиторий:
git clone https://github.com/GroundNG/VibeShift cd VibeShiftСоздать виртуальную среду (рекомендуется):
python -m venv venv source venv/bin/activate # Linux/macOS # venv\Scripts\activate # WindowsУстановить зависимости:
pip install -r requirements.txtУстановить браузеры Playwright:
patchright install --with-deps # Installs browsers and OS dependencies
Конфигурация
Переименуйте файл .env.example в .env в корневом каталоге проекта.
Добавьте свой ключ LLM API и другие необходимые данные:
# .env LLM_API_KEY="YOUR_LLM_API_KEY"Замените
YOUR_LLM_API_KEYна ваш фактический ключ.
Добавление MCP-сервера
Добавьте это в вашу конфигурацию mcp:
Поддерживайте работу этого сервера, пока вы взаимодействуете с вашим помощником по программированию на основе искусственного интеллекта.
Использование
Взаимодействуйте с агентом с помощью помощника по кодированию на основе искусственного интеллекта с поддержкой MCP, используя естественный язык.
Примеры:
Анализ безопасности:
Автоматически (предпочтительно): VibeShift автоматически анализирует фрагменты кода, сгенерированные или значительно измененные помощником на основе искусственного интеллекта.
Явные команды:
«VibeShift, проанализируй эту функцию на предмет уязвимостей безопасности». «Попроси VibeShift проверить код Python, который Copilot только что написал, на предмет SQL-инъекций». «Защити сгенерированный код с помощью VibeShift перед фиксацией».
Запишите тест:
«Запишите тест: перейдите по ссылке https://practicetestautomation.com/practice-test-login/ , введите «student» в поле имени пользователя, введите «Password123» в поле пароля, нажмите кнопку «Отправить» и убедитесь, что текст «Поздравляем, студент» виден».
(Агент выполнит эти действия автоматически и сохранит файл
Выполнить тест:
"Запустить регрессионный тест
output/test_practice_test_login_20231105_103000.json"(Агент выполнит шаги в указанном файле и сообщит о статусе PASS/FAIL с ошибками и подробностями.)
Откройте для себя этапы тестирования:
«Откройте для себя возможные этапы тестирования, начиная с https://practicetestautomation.com/practice/ »
(Агент будет сканировать сайт, анализировать страницы и возвращать рекомендуемые шаги тестирования для каждой из них.)
Список зарегистрированных тестов:
«Перечислите доступные записанные веб-тесты».
(Агент вернет список файлов
Выход:
Отчеты по безопасности: возвращены помощнику по кодированию ИИ, содержат подробную информацию:
Тип уязвимости (например, CWE, категория OWASP)
Расположение в коде
Серьёзность
Доказательства/Объяснения
Предлагаемые исправления (часто для действий ИИ)
Записанные тесты: сохраняются в виде файлов JSON в каталоге
output/(формат см. вtest_schema.md).Результаты выполнения: возвращаются как объект JSON, обобщающий выполнение (статус, ошибки, пути доказательств). Полные результаты также сохраняются в
output/execution_result_....json.Результаты обнаружения: Возвращаются как объект JSON с обнаруженными URL и предлагаемыми шагами. Полные результаты сохраняются в
output/discovery_results_....json.
Вдохновение
Использование браузера : Генерация контекстного дерева dom во многом вдохновлена ими и модифицирована для размещения статических/динамических/визуальных элементов. Особая благодарность им за их вклад в открытый исходный код.
Semgrep : мощный инструмент статического анализа с открытым исходным кодом, который мы используем.
Ядра : для возможностей динамического сканирования на основе шаблонов.
Внося вклад
Мы приветствуем вклады! Пожалуйста, посетите CONTRIBUTING.md для получения подробной информации о том, как начать, сообщать о проблемах и отправлять запросы на включение. Мы особенно заинтересованы в:
Новые интеграции анализатора безопасности.
Лицензия
Данный проект распространяется под лицензией APACHE-2.0 .
This server cannot be installed
Related Resources
Related MCP Servers
- -securityAlicense-qualityAn MCP server that automatically generates documentation, test plans, and code reviews for code repositories by analyzing directory structures and code files using AI models via OpenRouter API.Last updated -5Creative Commons Zero v1.0 Universal
- -securityAlicense-qualityAn AI-powered MCP server that automates web testing workflows by enabling recording, execution, and discovery of tests through natural language prompts.Last updated -62Apache 2.0
- -security-license-qualityAI-powered agent that streamlines web testing workflows by allowing developers to record, execute, and discover tests using natural language prompts in their AI coding assistants.Last updated -62Apache 2.0
- AsecurityAlicenseAqualityA MCP server that enables human-in-the-loop workflow in AI-assisted development tools by allowing users to run commands, view their output, and provide textual feedback directly to the AI assistant.Last updated -11,625MIT License