MigraNoSQL para Visual Studio Code
Lleva una base de datos SQL a MongoDB sin salir del editor. La extensión usa la API de
MigraNoSQL para analizar el esquema, proponer el modelo documental
(qué incrustar, referenciar o copiar), migrar y verificar que no se pierda ningún registro.
Incluye el agente @migranosql para el chat de VS Code, dos herramientas para el modo agente de Copilot y la
skill migranosql.
Instalación
- Descargue
migranosql.vsix desde https://migranosql.onrender.com/vscode.html.
- En VS Code: Extensiones (
Ctrl+Shift+X) → ⋯ → Instalar desde VSIX…, o en una terminal
code --install-extension migranosql.vsix.
- Para el agente y la skill instale GitHub Copilot Chat (plan gratuito) e inicie sesión con GitHub.
Funciones
| Dónde |
Qué hace |
Clic derecho sobre un .sql, .db o .sqlite → Analizar con MigraNoSQL |
Detecta el dialecto (PostgreSQL, MySQL/MariaDB, SQL Server, Oracle), analiza el esquema y abre el panel |
Paleta (Ctrl+Shift+P) → MigraNoSQL: Conectar a un servidor SQL |
Analiza una base en vivo (la API debe poder alcanzar el servidor) |
| Paleta → MigraNoSQL: Abrir la base de ejemplo |
Demostración con la base tienda |
| Panel del análisis |
Cambia la estrategia de cada relación, muestra documentos de ejemplo, el diagrama ER y migra a ZIP (en la carpeta migranosql-export/ del proyecto) o a tu MongoDB |
Barra de estado $(database) MigraNoSQL |
Acceso rápido al análisis |
Agente @migranosql (chat de VS Code)
Requiere la extensión GitHub Copilot Chat (tiene plan gratuito). En el chat escriba:
@migranosql /analizar #file:tienda.sql
@migranosql /migrar
@migranosql /explicar ¿por qué direcciones quedó dentro de clientes?
@migranosql /ayuda
/analizar muestra tablas, filas, la estrategia de cada relación con su motivo y las colecciones resultantes.
/migrar genera el ZIP en el proyecto y muestra la verificación (filas = documentos, incrustados e integridad referencial).
/explicar o cualquier pregunta libre: el modelo de lenguaje responde con el contexto del análisis y las reglas de modelado de MigraNoSQL.
En el modo agente de Copilot, el modelo puede usar por sí solo las herramientas
#migranosqlAnalizar y #migranosqlMigrar. Por ejemplo: "migra la base de db/tienda.sql a MongoDB y dime si se perdió algo".
La migración pide confirmación antes de ejecutarse.
Skill migranosql
La extensión aporta la skill skills/migranosql/SKILL.md (contribución chatSkills).
Copilot la carga cuando usted pide migrar SQL a MongoDB y sigue su procedimiento: analizar, explicar las decisiones
con las reglas de MigraNoSQL, pedir confirmación, migrar, revisar la verificación e indicar cómo importar el ZIP.
La misma skill se descarga sola (migranosql-skill.zip) para Claude Code (.claude/skills/), Codex
(.agents/skills/) o Copilot sin la extensión (.github/skills/). Trae un script sin dependencias:
python migranosql/scripts/migranosql.py analizar tienda.sql
python migranosql/scripts/migranosql.py migrar tienda.sql --salida migranosql-export
Configuración
| Opción |
Valor por defecto |
Descripción |
migranosql.apiUrl |
https://migranosql.onrender.com |
API de MigraNoSQL (nube o instalación propia, p. ej. http://localhost:8000) |
migranosql.carpetaExportacion |
migranosql-export |
Carpeta del proyecto donde se guardan los ZIP |
migranosql.tiempoEsperaSegundos |
120 |
Espera máxima por petición (la nube gratuita tarda ~50 s en despertar) |
Privacidad
- La base de origen no se modifica: solo se leen datos.
- Las contraseñas de servidores no se guardan; la URI de MongoDB se guarda cifrada en el almacén de secretos de VS Code.
- Los archivos se envían comprimidos y codificados a la API configurada; los espacios de trabajo del servidor caducan a las 2 horas.
Desarrollo
npm ci
npm test # verificación de tipos + pruebas unitarias
MIGRANOSQL_API=http://localhost:8000 npm run test:integration # VS Code real + API local
npm run package # genera migranosql.vsix
Publicar en el Marketplace (opcional)
Requiere una cuenta de publicador propia: cree una organización en https://dev.azure.com, un Personal Access Token
con el permiso Marketplace → Manage y el publicador en https://marketplace.visualstudio.com/manage (su ID debe
coincidir con publisher en package.json). Luego:
npx vsce login <publicador>
npx vsce publish
Para Cursor, VSCodium y otros editores compatibles, el equivalente es npx ovsx publish migranosql.vsix -p <token>
con una cuenta de https://open-vsx.org.
Universidad Privada de Tacna · Base de Datos II · Luis Fernando Vilca Barrientos y Sebastian Alejandro Cortez Apaza.