Skip to main content
Glama

VibeCheck

by GroundNG

VibeShift: El ingeniero de seguridad para programadores de Vibe

VibeShift es un agente de seguridad inteligente diseñado para integrarse a la perfección con asistentes de programación de IA (como Cursor, GitHub Copilot, Claude Code, etc.). Actúa como su ingeniero de seguridad automatizado, analizando el código generado por IA, identificando vulnerabilidades y facilitando la remediación impulsada por IA antes de que el código inseguro llegue a su base de código. Aprovecha el MCP (Protocolo de Contexto de Modelo) para una interacción fluida con su entorno de programación de IA existente.

El problema: Los asistentes de programación de IA aceleran drásticamente el desarrollo, pero también pueden generar código con vulnerabilidades de seguridad sutiles o evidentes. Revisar manualmente todo el código generado por IA para detectar fallos de seguridad es lento, propenso a errores y no se adapta a la velocidad del desarrollo de IA. Este desarrollo basado en la experiencia puede dejar las aplicaciones expuestas.

La solución: VibeShift de GroundNG cierra esta brecha crítica de seguridad al permitir que su asistente de codificación de IA:

  1. Analizar automáticamente el código generado por IA: a medida que un asistente de IA genera o modifica el código, VibeShift se puede activar para realizar un análisis de seguridad utilizando un conjunto de herramientas (componentes SAST, DAST) y controles impulsados por IA.
  2. Identificar vulnerabilidades de seguridad: señala vulnerabilidades comunes y complejas (por ejemplo, XSS, SQLi, configuraciones inseguras, fallas lógicas) dentro de fragmentos generados por IA o bloques de código más grandes.
  3. Facilitar la remediación impulsada por IA: proporciona comentarios detallados e información de vulnerabilidad directamente al asistente de codificación de IA, lo que le permite sugerir o incluso aplicar correcciones automáticamente.
  4. Cree un bucle de retroalimentación de seguridad: garantiza que los desarrolladores y sus asistentes de IA estén inmediatamente al tanto de los posibles riesgos de seguridad, lo que permite una rápida corrección y aprendizaje.

Esto crea un paradigma de seguridad de "desplazamiento a la izquierda" para la codificación asistida por IA, integrando la seguridad directamente en el flujo de trabajo de desarrollo y ayudando a entregar código más seguro, más rápido.

Demo (Haga clic para reproducir estos videos)

Características

  • Integración con MCP: se integra perfectamente con Cursor/Windsurf/Github Copilot/Roo Code
  • Escaneo de seguridad automatizado: activadores de la generación o modificación de código de IA para realizar:
    • Análisis de código estático (SAST): integra herramientas como Semgrep para encontrar vulnerabilidades en el código fuente.
    • Análisis dinámico (primitivas DAST): puede invocar herramientas como Nuclei o ZAP para realizar comprobaciones contra componentes en ejecución (cuando corresponda).
  • Grabación de pruebas asistida por IA: genere guiones de prueba basados en Playwright a partir de descripciones en lenguaje natural (en modo automatizado).
  • Ejecución de pruebas deterministas: ejecute archivos de prueba JSON grabados de manera confiable utilizando Playwright.
  • Descubrimiento de pruebas impulsado por IA: rastree sitios web y aproveche cualquier LLM (en formato compatible con OpenAI) para sugerir pasos de prueba para las páginas descubiertas.
  • Pruebas de regresión: ejecute fácilmente conjuntos de pruebas existentes para detectar regresiones.
  • Bucle de retroalimentación automatizado: se devuelven los resultados de la ejecución (incluidos fallos, capturas de pantalla y registros de la consola), lo que proporciona retroalimentación directa al asistente de IA.
  • Autorreparación: Las pruebas existentes se autoreparan en caso de cambios en el código. No es necesario actualizarlas manualmente.
  • Pruebas de IU: Las pruebas de IU que Playwright no admite directamente también son compatibles. Por ejemplo, Check if the text is overflowing in the div
  • Pruebas de regresión visual : uso del enfoque tradicional de comparación de píxeles y LLM de visión.

Cómo funciona

+-------------+ +-----------------+ +---------------------+ +-----------------+ +-------------+ | User | ----> | AI Coding Agent | ----> | MCP Server | ----> | Scan, test, exec| ----> | Browser | | (Developer) | | (e.g., Copilot) | | (mcp_server.py) | | (SAST, Record) | | (Playwright)| +-------------+ +-----------------+ +---------------------+ +-----------------+ +-------------+ ^ | | | |--------------------------------------------------+----------------------------+---------------------+ [Test Results / Feedback]
  1. Usuario: solicita a su asistente de codificación de IA (por ejemplo, "Pruebe este repositorio para detectar vulnerabilidades de seguridad", "Grabe una prueba para el flujo de inicio de sesión", "Ejecute la prueba de regresión 'test_login.json'").
  2. Agente de codificación de IA: reconoce la intención y utiliza MCP para llamar a la herramienta adecuada proporcionada por el MCP Server .
  3. Servidor MCP: enruta la solicitud a la función correspondiente ( get_security_scan , record_test_flow , run_regression_test , discover_test_flows , list_recorded_tests ).
  4. Agente de VibeShift:
    • Escaneo de seguridad tradicional: invoca herramientas de análisis estático (por ejemplo, Semgrep) en el código.
    • Grabación: el WebAgent (en modo automatizado) interactúa con el LLM para planificar los pasos, controla el navegador a través de BrowserController (Playwright), procesa HTML/Vision y guarda los pasos de prueba resultantes en un archivo JSON en el directorio output/ .
    • Ejecución: TestExecutor carga el archivo de prueba JSON especificado, utiliza BrowserController para interactuar con el navegador de acuerdo con los pasos registrados y captura resultados, capturas de pantalla y registros de la consola.
    • Descubrimiento: CrawlerAgent utiliza BrowserController y LLMClient para rastrear páginas y sugerir pasos de prueba.
  5. Navegador: Playwright dirige la interacción real del navegador.
  6. Bucle de retroalimentación:
    • El informe de seguridad completo (vulnerabilidades, ubicaciones, sugerencias) se devuelve a través del servidor MCP al agente de codificación de IA .
    • El agente de codificación de IA presenta esto al desarrollador y puede usar la información para sugerir o aplicar correcciones .
    • El objetivo es un ciclo rápido de generación de código -> escaneo de seguridad -> solución impulsada por IA -> nuevo escaneo (opcional).

Empezando

Prerrequisitos

  • Python 3.10+
  • Acceso a cualquier LLM (Gemini 2.0 Flash funciona mejor de forma gratuita en mis pruebas)
  • MCP instalado ( pip install mcp[cli] )
  • Navegadores Playwright instalados ( patchright install )

Instalación

  1. Clonar el repositorio:
    git clone https://github.com/GroundNG/VibeShift cd VibeShift
  2. Crear un entorno virtual (recomendado):
    python -m venv venv source venv/bin/activate # Linux/macOS # venv\Scripts\activate # Windows
  3. Instalar dependencias:
    pip install -r requirements.txt
  4. Instalar navegadores Playwright:
    patchright install --with-deps # Installs browsers and OS dependencies

Configuración

  1. Cambie el nombre del archivo .env.example a .env en el directorio raíz del proyecto.
  2. Agregue su clave API de LLM y otros detalles necesarios:
    # .env LLM_API_KEY="YOUR_LLM_API_KEY"
    • Reemplace YOUR_LLM_API_KEY con su clave real.

Agregar el servidor MCP

Agregue esto a su configuración mcp:

{ "mcpServers": { "VibeShift":{ "command": "uv", "args": ["--directory","path/to/cloned_repo", "run", "mcp_server.py"] } } }

Mantenga este servidor en funcionamiento mientras interactúa con su asistente de codificación de IA.

Uso

Interactúe con el agente a través de su asistente de codificación de IA habilitado para MCP utilizando lenguaje natural.

Ejemplos:

  • Análisis de seguridad:
    • Automático (preferido): VibeShift analiza automáticamente los fragmentos de código generados o modificados significativamente por el asistente de IA.
    • Órdenes explícitas:

      "VibeShift, analiza esta función en busca de vulnerabilidades de seguridad". "Solicita a VibeShift que revise el código Python que Copilot acaba de escribir para detectar la inyección SQL". "Asegura el código generado con VibeShift antes de confirmar".

  • Grabar una prueba:

    Para grabar una prueba, acceda a https://practicetestautomation.com/practice-test-login/ , escriba "estudiante" en el campo de nombre de usuario, escriba "Contraseña123" en el campo de contraseña, haga clic en el botón "Enviar" y verifique que el texto "Felicitaciones, estudiante" sea visible.

    • (El agente realizará estas acciones automáticamente y guardará un archivo test_....json en output/ )
  • Ejecutar una prueba:

    Ejecutar la prueba de regresión output/test_practice_test_login_20231105_103000.json

    • (El agente ejecutará los pasos en el archivo especificado e informará el estado APROBADO/REPROBADO con errores y detalles).
  • Descubra los pasos de la prueba:

    Descubra los posibles pasos de prueba a partir de https://practicetestautomation.com/practice/

    • (El agente rastreará el sitio, analizará las páginas y devolverá pasos de prueba sugeridos para cada una).
  • Lista de pruebas grabadas:

    "Enumere las pruebas web grabadas disponibles".

    • (El agente devolverá una lista de archivos .json encontrados en el directorio output/ ).

Producción:

  • Informes de seguridad: Devueltos al asistente de codificación de IA, detallando:
    • Tipo de vulnerabilidad (por ejemplo, CWE, categoría OWASP)
    • Ubicación en código
    • Gravedad
    • Evidencia / Explicación
    • Soluciones sugeridas (a menudo para que la IA actúe)
  • Pruebas grabadas: se guardan como archivos JSON en el directorio output/ (consulte test_schema.md para conocer el formato).
  • Resultados de la ejecución: Se devuelven como un objeto JSON que resume la ejecución (estado, errores y rutas de evidencia). Los resultados completos también se guardan en output/execution_result_....json .
  • Resultados de descubrimiento: Se devuelven como un objeto JSON con las URL descubiertas y los pasos sugeridos. Los resultados completos se guardan en output/discovery_results_....json .

Inspiración

  • Uso del navegador : La generación del árbol de contexto DOM se inspira en gran medida en ellos y se modifica para acomodar elementos estáticos, dinámicos y visuales. Les agradecemos especialmente su contribución al código abierto.
  • Semgrep : una poderosa herramienta de análisis estático de código abierto que utilizamos.
  • Núcleos : para capacidades de escaneo dinámico basadas en plantillas.

Contribuyendo

¡Agradecemos las contribuciones! Consulta CONTRIBUTING.md para obtener más información sobre cómo empezar, reportar problemas y enviar solicitudes de incorporación de cambios. Nos interesa especialmente:

  • Nuevas integraciones de analizadores de seguridad.

Licencia

Este proyecto está licenciado bajo APACHE-2.0 .

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Agente impulsado por IA que se integra con asistentes de codificación a través de MCP para automatizar los flujos de trabajo de pruebas web, lo que permite a los desarrolladores grabar pruebas, ejecutar pruebas de regresión y descubrir flujos de pruebas utilizando indicaciones en lenguaje natural.

  1. Demo (Haga clic para reproducir estos videos)
    1. Características
    2. Cómo funciona
    3. Empezando
    4. Uso
    5. Inspiración
    6. Contribuyendo
    7. Licencia

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    An MCP server that analyzes codebases and generates contextual prompts, making it easier for AI assistants to understand and work with code repositories.
    Last updated -
    10
    Python
    MIT License
  • A
    security
    F
    license
    A
    quality
    An MCP server that supercharges AI assistants with powerful tools for software development, enabling research, planning, code generation, and project scaffolding through natural language interaction.
    Last updated -
    11
    29
    TypeScript
    • Linux
    • Apple
  • -
    security
    A
    license
    -
    quality
    An AI-powered MCP server that automates web testing workflows by enabling recording, execution, and discovery of tests through natural language prompts.
    Last updated -
    46
    Python
    Apache 2.0
    • Linux
    • Apple
  • A
    security
    F
    license
    A
    quality
    An MCP server that allows AI assistants and LLMs to interact with the Horizon3.ai API for scheduling pentests, querying results, and automating security workflows through natural language commands.
    Last updated -
    4
    Python
    • Apple
    • Linux

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GroundNG/VibeCheck'

If you have feedback or need assistance with the MCP directory API, please join our Discord server