modelscope·@GroundNG/QA-MCP
暂无描述。
VibeShift 是一个智能安全代理,旨在与AI编码助手(如Cursor、GitHub Copilot、Claude Code等)无缝集成。它充当您的自动化安全工程师,分析由AI生成的代码,识别漏洞,并在不安全的代码进入您的代码库之前促进基于AI的修复。它利用**MCP(模型上下文协议)**来在您现有的AI编码环境中实现平滑交互。
问题所在: AI编码助手极大地加速了开发过程,但它们也可能生成带有细微或明显安全漏洞的代码。手动审查所有AI生成的代码以查找安全缺陷既慢又容易出错,并且无法跟上AI开发的速度。这种“氛围驱动的开发”可能会使应用程序暴露于风险之中。
解决方案:GroundNG的VibeShift 通过以下方式弥补了这一关键的安全缺口:
这为AI辅助编码创造了一个“左移”的安全范式,将安全直接嵌入到开发工作流程中,帮助更快地发布更安全的代码。
+-------------+ +-----------------+ +---------------------+ +-----------------+ +-------------+
| 用户 | ----> | AI编码助手 | ----> | MCP服务器 | ----> | 扫描, 测试, 执行| ----> | 浏览器 |
| (开发者) | | (例如Copilot) | | (mcp_server.py) | | (SAST, 录制) | | (Playwright)|
+-------------+ +-----------------+ +---------------------+ +-----------------+ +-------------+
^ | | |
|--------------------------------------------------+----------------------------+---------------------+
[测试结果/反馈]1. 用户: 向其AI编码助手发出提示(例如,“测试此仓库的安全漏洞”,“记录登录流程的测试”,“运行回归测试 test_login.json”)。
2. AI编码代理: 识别意图并通过MCP调用MCP Server提供的适当工具。
3. MCP服务器: 将请求路由到相应的函数(get_security_scan,record_test_flow,run_regression_test,discover_test_flows,list_recorded_tests)。
4. VibeShift代理:
* 传统安全扫描: 在代码上调用静态分析工具(例如,Semgrep)。
* 录制: WebAgent(在自动化模式下)与LLM交互以规划步骤,通过BrowserController(Playwright)控制浏览器,处理HTML/视觉,并将生成的测试步骤保存到output/目录中的JSON文件中。
* 执行: TestExecutor加载指定的JSON测试文件,使用BrowserController根据录制的步骤与浏览器交互,并捕获结果、截图和控制台日志。
* 发现: CrawlerAgent使用BrowserController和LLMClient来爬取页面并建议测试步骤。
5. 浏览器: Playwright驱动实际的浏览器交互。
6. 反馈循环:
* 综合安全报告(漏洞、位置、建议)通过MCP服务器返回给AI编码代理。
* AI编码代理将这些信息呈现给开发者,并可以利用这些信息建议或应用修复。
* 目标是实现快速的代码生成 -> 安全扫描 -> AI驱动的修复 -> 重新扫描(可选)。
pip install mcp[cli])patchright install)克隆仓库: bash git clone https://github.com/GroundNG/VibeShift cd VibeShift
创建虚拟环境(推荐): bash python -m venv venv source venv/bin/activate # Linux/macOS
安装依赖项: bash pip install -r requirements.txt
安装Playwright浏览器: bash patchright install --with-deps # 安装浏览器和操作系统依赖项
将项目根目录中的.env.example重命名为.env文件。
添加您的LLM API密钥和其他必要详细信息: dotenv
LLM_API_KEY="YOUR_LLM_API_KEY"
YOUR_LLM_API_KEY替换为您的实际密钥。将以下内容添加到您的MCP配置中: json { "mcpServers": { "VibeShift":{ "command": "uv", "args": ["--directory","path/to/cloned_repo", "run", "mcp_server.py"] } } }
在与您的AI编码助手交互时,请保持该服务器运行。
通过支持MCP的AI编码助手使用自然语言与代理进行交互。
示例:
安全分析:
"VibeShift,分析此函数的安全漏洞。" "让VibeShift检查Copilot刚刚编写的Python代码是否存在SQL注入。" "在提交之前,使用VibeShift确保生成的代码安全。"
录制测试:
"录制一个测试:访问https://practicetestautomation.com/practice-test-login/,在用户名字段中输入student,在密码字段中输入Password123,点击提交按钮,并验证文本Congratulations student是否可见。"
test_....json文件保存到output/目录中)执行测试:> "运行回归测试 output/test_practice_test_login_20231105_103000.json"
(代理将执行指定文件中的步骤,并报告通过/失败状态以及错误和详细信息。)
发现测试步骤:
"从 https://practicetestautomation.com/practice/ 开始发现潜在的测试步骤"
列出已记录的测试:
"列出可用的已记录 Web 测试。"
output/ 目录中找到的 .json 文件列表。)输出:
output/ 目录中的 JSON 文件(请参阅 test_schema.md 获取格式)。output/execution_result_....json。output/discovery_results_....json。我们欢迎贡献!请参阅 CONTRIBUTING.md 了解如何开始、报告问题和提交拉取请求的详细信息。我们特别感兴趣的是:
本项目根据 APACHE-2.0 许可证发布。
一个由人工智能驱动的MCP服务器,通过自然语言提示实现测试的记录、执行和发现,从而自动化的网络测试工作流程。
一个MCP(模型上下文协议)服务器,用于使用axe-core对网页进行无障碍审计。在代理循环中使用结果与您喜欢的AI助手(Cline/Cursor/GH Copilot)结合,并让它们为您修复无障碍问题!
暂无描述。
暂无描述。
暂无描述。
暂无描述。