VibeShift:Vibe Coders 的安全工程师
VibeShift是一款智能安全代理,旨在与 AI 编码助手(例如 Cursor、GitHub Copilot、Claude Code 等)无缝集成。它充当您的自动化安全工程师,分析 AI 生成的代码,识别漏洞,并在不安全代码进入您的代码库*之前,*协助 AI 驱动的修复。它利用**MCP(模型上下文协议)**与您现有的 AI 编码环境顺畅交互。
问题: AI 编程助手虽然能显著加速开发速度,但它们生成的代码也可能存在隐蔽或明显的安全漏洞。手动审查所有 AI 生成的代码是否存在安全漏洞,速度缓慢、容易出错,而且无法跟上 AI 开发的速度。这种“氛围驱动型开发”可能会让应用程序暴露在风险之中。
解决方案:GroundNG 的 VibeShift通过使您的 AI 编码助手能够执行以下操作来弥补这一关键的安全漏洞:
**自动分析 AI 生成的代码:**当 AI 助手生成或修改代码时,可以触发 VibeShift 使用一套工具(SAST、DAST 组件)和 AI 驱动的检查执行安全分析。
**识别安全漏洞:**找出 AI 生成的代码片段或更大的代码块中的常见和复杂漏洞(例如 XSS、SQLi、不安全配置、逻辑缺陷)。
**促进人工智能驱动的补救:**直接向人工智能编码助手提供详细的反馈和漏洞信息,使其能够建议甚至自动应用修复。
**创建安全反馈循环:**确保开发人员及其人工智能助手立即意识到潜在的安全风险,从而能够快速纠正和学习。
这为人工智能辅助编码创建了一个“左移”安全范式,将安全性直接嵌入到开发工作流程中,并有助于更快地交付更安全的代码。
演示(点击播放这些视频)

特征
**MCP 集成:**与 Cursor/Windsurf/Github Copilot/Roo Code 无缝集成
**自动安全扫描:**触发 AI 代码生成/修改来执行:
**静态代码分析 (SAST):**集成 Semgrep 等工具来查找源代码中的漏洞。
**动态分析(DAST 原语):**可以调用 Nuclei 或 ZAP 等工具来检查正在运行的组件(如果适用)。
**人工智能辅助测试记录:**根据自然语言描述生成基于 Playwright 的测试脚本(自动模式)。
**确定性测试执行:**使用 Playwright 可靠地运行记录的 JSON 测试文件。
**人工智能测试发现:**抓取网站并利用任何 LLM(符合 openai 格式)为发现的页面建议测试步骤。
**回归测试:**轻松运行现有的测试套件来捕捉回归。
**自动反馈循环:**返回执行结果(包括失败、屏幕截图、控制台日志),向AI助手提供直接反馈。
**自我修复:**现有测试可在代码变更时自我修复。无需手动更新。
UI 测试: Playwright 不直接支持的 UI 测试也支持。例如,
Check if the text is overflowing in the div视觉回归测试:使用传统的像素匹配和视觉 LLM 方法。
工作原理
**用户:**提示他们的 AI 编码助手(例如,“测试此存储库的安全漏洞”、“记录登录流程的测试”、“运行回归测试‘test_login.json’”)。
**AI编码代理:**识别意图并使用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,并将生成的测试步骤保存到output/目录中的 JSON 文件中。执行:
TestExecutor加载指定的JSON测试文件,根据记录的步骤使用BrowserController与浏览器交互,并捕获结果、截图和控制台日志。发现:
CrawlerAgent使用BrowserController和LLMClient来抓取页面并建议测试步骤。
浏览器: Playwright 驱动实际的浏览器交互。
反馈回路:
综合安全报告(漏洞、位置、建议)通过MCP服务器返回给AI编码代理。
AI 编码代理将此信息呈现给开发人员,并可以使用该信息来建议或应用修复。
目标是代码生成->安全扫描->人工智能驱动修复->重新扫描(可选)的快速循环。
入门
先决条件
Python 3.10+
获得任何 LLM 学位(在我的测试中,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 配置中:
当您与 AI 编码助手交互时,请保持此服务器运行。
用法
通过支持 MCP 的 AI 编码助手使用自然语言与代理进行交互。
例子:
安全分析:
自动(首选): VibeShift 自动分析由 AI 助手生成或显著修改的代码片段。
显式命令:
“VibeShift,分析此函数是否存在安全漏洞。” “请 VibeShift 检查 Copilot 刚刚编写的 Python 代码是否存在 SQL 注入。” “提交之前,请使用 VibeShift 保护生成的代码。”
记录测试:
“记录测试:转到https://practicetestautomation.com/practice-test-login/ ,在用户名字段中输入‘student’,在密码字段中输入‘Password123’,单击提交按钮,并验证文本‘Congratulations student’是否可见。”
(代理将自动执行这些操作并在
执行测试:
“运行回归测试
output/test_practice_test_login_20231105_103000.json”(代理将执行指定文件中的步骤并报告 PASS/FAIL 状态以及错误和详细信息。)
发现测试步骤:
“从https://practicetestautomation.com/practice/开始发现潜在的测试步骤”
(代理将抓取网站、分析页面并返回每个页面的建议测试步骤。)
列出已记录的测试:
“列出可用的已记录的网络测试。”
(代理将返回在
输出:
**安全报告:**返回给AI编码助手,详情如下:
漏洞类型(例如 CWE、OWASP 类别)
代码中的位置
严重程度
证据/解释
建议的补救措施(通常由人工智能采取行动)
**记录的测试:**保存为
output/目录中的 JSON 文件(有关格式,请参阅test_schema.md)。**执行结果:**以 JSON 对象形式返回,其中包含运行概要(状态、错误、证据路径)。完整结果也保存到
output/execution_result_....json。**发现结果:**以 JSON 对象形式返回,其中包含发现的 URL 和建议步骤。完整结果保存在
output/discovery_results_....json。
灵感
浏览器使用:DOM 上下文树的生成深受他们的启发,并进行了修改以适应静态/动态/可视化元素。特别感谢他们对开源的贡献。
Semgrep :我们利用的强大的开源静态分析工具。
细胞核:用于基于模板的动态扫描功能。
贡献
欢迎大家贡献代码!请参阅CONTRIBUTING.md了解如何开始使用、报告问题以及提交 Pull Request。我们尤其欢迎以下人员:
新的安全分析器集成。
执照
该项目根据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