Agents d’IA Migració de dades Supabase InsForge PostgreSQL backend

Migrar de Supabase a InsForge amb un agent d’IA

Guia resumida de la migració de Supabase a InsForge: usuaris, base de dades, fitxers, automatització amb agents i límits.

Migrar un projecte real entre plataformes de backend no és copiar unes quantes taules. Cal traslladar usuaris, contrasenyes, esquema, dades, polítiques d’accés, fitxers i referències, i després comprovar què no és compatible. Dev Knives mostra dues maneres de passar de Supabase a InsForge: executar la suite de migració pas a pas o delegar-ne l’orquestració a un agent amb una skill específica.

El vídeo no defensa migrar perquè sí. Si Supabase ja resol les necessitats del projecte, el canvi pot no compensar. L’interès d’InsForge és un backend de codi obert orientat a agents, amb base de dades, autenticació, emmagatzematge i eines perquè un assistent pugui inspeccionar i configurar el sistema.

1. Abans de tocar producció: motiu, còpia i entorn de prova

A 01:02, el creador situa el context. InsForge permet operar el backend des de l’entorn de desenvolupament mitjançant eines per a agents, però això no converteix una migració en una decisió automàtica. Cal valorar costos, compatibilitat i dependències del projecte.

El repositori oficial d’InsForge descriu una plataforma amb Postgres, autenticació, storage, funcions i servidor MCP. Supabase també es basa en Postgres, però cada plataforma afegeix esquemes, serveis i convencions pròpies. Compartir motor facilita el trasllat de dades; no garanteix que tot el comportament sigui idèntic.

Abans de començar convé fer una còpia recuperable, inventariar taules, polítiques, funcions, buckets i proveïdors d’autenticació, i provar el procés en un projecte de destí buit. La documentació de còpies i restauració de Supabase ajuda a entendre els formats disponibles, encara que el destí final sigui una altra plataforma.

2. Dues rutes: scripts oficials o una habilitat per a l’agent

A 02:36, el vídeo presenta les dues opcions. La primera utilitza el repositori Supabase to InsForge, instal·la les dependències i executa cada fase amb ordres explícites. És la ruta més transparent perquè l’operador veu els fitxers intermedis i pot aturar-se entre passos.

La segona instal·la una skill creada pel mateix autor. En lloc de memoritzar les ordres, l’usuari explica a l’agent que vol migrar el projecte i li proporciona l’accés necessari. La skill no canvia la feina de fons: codifica la seqüència, demana credencials i guia les comprovacions.

A 04:30, comença la demostració manual. Cal tenir Node.js, psql, la cadena de connexió de Supabase i les credencials del projecte d’InsForge. Aquestes dades donen accés privilegiat; no s’han de copiar a repositoris, captures o converses no fiables. Després de la migració és prudent revocar o rotar les claus temporals.

3. Autenticació: conservar identitats i contrasenyes

La primera fase operativa arriba a 06:48. Un script exporta els usuaris de Supabase a un fitxer JSON, inclosos identificadors, correus i hashes de contrasenya. Un segon pas els importa a InsForge.

Conservar el hash permet que les persones continuïn entrant amb la mateixa contrasenya sense forçar un restabliment massiu. És una de les parts més sensibles del procés: el fitxer d’exportació conté informació d’autenticació i s’ha de protegir, mantenir fora del control de versions i eliminar de manera segura quan ja no sigui necessari.

També cal verificar identitats de proveïdors externs, metadades, correus confirmats i regles d’accés. Que tres comptes de prova funcionin no prova que totes les combinacions d’un projecte real s’hagin migrat correctament. Una prova representativa hauria d’incloure usuaris antics, nous, OAuth i diferents rols.

4. Base de dades: transformar abans d’importar

A 07:50, la suite exporta un dump de la base de dades i el transforma per adaptar-lo al destí. El vídeo assenyala dues incompatibilitats que poden exigir intervenció manual.

La primera són les polítiques que llegeixen directament informació del JWT. InsForge pot representar els rols d’una altra manera, de manera que aquesta lògica s’ha de reescriure i provar. La segona és una possible col·lisió amb noms de taules interns, que obliga a canviar el nom abans d’importar.

Aquest és el punt on una migració aparentment correcta pot fallar de manera silenciosa. No n’hi ha prou amb comptar files: s’han de provar claus foranes, índexs, funcions, disparadors i permisos amb usuaris de rols diferents. També convé comparar recomptes i mostres de dades entre origen i destí.

5. Emmagatzematge: buckets, objectes i URL

La tercera fase comença a 09:22. Segons la demostració, els scripts recreen els buckets, descarreguen els objectes a la màquina local, els carreguen a InsForge i actualitzen les URL guardades a la base de dades.

Aquest últim pas és essencial. Traslladar els fitxers sense canviar les referències deixa imatges i documents apuntant al servei antic. En una migració gran, la validació hauria de revisar objectes inexistents, permisos públics i privats, tipus MIME, noms amb caràcters especials i enllaços generats amb caducitat.

El procediment es descriu com a incremental: si una fase falla, es pot repetir. Tot i això, cal confirmar que els scripts són idempotents en el cas concret i que no dupliquen registres o objectes. Mantenir el servei d’origen intacte fins que les comprovacions acabin facilita tornar enrere.

6. Automatitzar amb IA no elimina la revisió

A 10:06, Dev Knives instal·la la seva skill i demana a un agent que executi la migració en llenguatge natural. L’agent analitza el projecte, sol·licita les credencials i va demanant confirmació en punts delicats.

El guany principal és d’ergonomia: l’agent recorda la seqüència i pot inspeccionar errors. No és una garantia de correcció. Les ordres continuen modificant dos sistemes amb dades reals, per la qual cosa l’operador ha de llegir els plans, limitar permisos i validar cada fase.

A 11:58, el vídeo enumera els límits. Les subscripcions en temps real i les funcions requereixen revisió específica. Les sessions actives tampoc no es traslladen: els usuaris hauran d’iniciar sessió de nou, encara que conservin la contrasenya.

Conclusions

La demostració converteix una migració complexa en tres blocs comprensibles: autenticació, base de dades i emmagatzematge. Els scripts redueixen la feina repetitiva i la skill pot coordinar-la, però les diferències en polítiques, funcions, temps real i sessions exigeixen una verificació humana.

A 12:41, l’autor conclou que el procés pot ser ràpid en un projecte compatible. La manera segura d’aplicar-lo és menys espectacular: còpia abans de començar, destí de prova, credencials temporals, comparació de dades, proves d’accés i un pla de retorn. L’agent pot executar el guió; la responsabilitat sobre les dades continua sent de l’equip.

Contrast i context

Fonts consultades

4 fonts
  1. 01
  2. 02
  3. 03
  4. 04

Font de treball

Transcripció amb marques de temps

14 fragments
Consulta la transcripció
  1. 0:00 , obre el vídeo en una pestanya nova

    Hace un par de semanas os hablé de Inforg, la alternativa Supéase que os iba a cambiar la forma de trabajar y vaya que si resonó, porque lo que más me habéis preguntado desde entonces es la misma pregunta. Edu, ¿cómo puedo migrar de Suabase a Inforg? Y lo entiendo completamente, muchos ya tenéis vuestra base en Supabase con usuarios reales, tablas, archivos y simplemente no vais a tirar toda la basura y empezar de cero. Eso no es una opción, así que tranquilos porque en el vídeo de hoy vamos a ver exactamente eso, cómo hacer esa migración. Y os prometo que es sersencillo. Para el que no me conozca, mi nombre es Edu y este es mi canal en el que Y este es mi canal en el que hablamos de tecnología, programación y bueno, un poquito de todo en general. Las estadísticas me han chivado que no estás suscrito, así que suscríbete si todo esto te interesa, que a mí me ayuda un montón. Y si esto que te he explicado te interesa, quédate en el vídeo que comenzamos ya. Antes de entrar en materia voy a dar un contexto rápido para el que llegue nuevo. Soy el Edu.

  2. 1:03 , obre el vídeo en una pestanya nova

    Quería dar un poco de contexto para los que entren nuevos y no sepan lo que es Inforg, porque seguramente haya gente que esté viendo el vídeo y diga, "Bueno, yo ya tengo superabase, pero entonces, ¿por qué me tengo que migrar?" Y la respuesta corta es que no, no tienes que migrar por migrar. Si Supapace te funciona y estás contento, pues perfecto. Pero Inforg tiene varias cosas que a mí me parecen muy interesantes, sobre todo si estás construyendo aplicaciones rápido, si trabajas con agentes de IA o si quieres tener más control sobre toda tu infraestructura. Inforg es un backen a service open source. Tiene todo lo que tiene que tener un backen AS a service. Ahora lo veremos. Pero lo importante es que está pensado para trabajar desde tu ID y utilizando agentes. Por ejemplo, si utilizas Cloud Code o herramientas similares, la idea de esto es que no te salgas nunca de esas herramientas y no tengas que ir pues a crear tablas a mano o crear reglas. No hace falta eso. Lo bueno de esto es que se puede crear todo automático desde el chat.

  3. 1:57 , obre el vídeo en una pestanya nova

    Todo esto gracias al MCP que tienen ellos y esto en la práctica hace que puedas pasar mucho más rápido de una idea a una aplicación funcional. O sea, no es crear un frontend y luego tener que ingeniártelas para el backend, sino que lo vas creando todo simultáneamente. Así también, pues sabes mejor qué es lo que necesita tu aplicación porque lo vas haciendo todo a la vez. Además, al ser open source lo puedes ser hostear, que para mí es una ventaja clarísima, porque no hace falta que pagues sus suscripciones, sino que lo tienes en tu servidor. Por eso creo este vídeo, no es para que sí o sí te tengas que migrar de su base, sino porque quiero que conozcáis esta alternativa y si os encajan vuestra manera de trabajar, este es vuestro tutorial para migrar a Superabase. Dicho esto, volvemos con el vídeo. En vídeos anteriores ya os expliqué lo que era Infor, un backend asa service de código abierto que tenía base de datos, autenticación, storage, real time y lo más importante tenía un MCP que nos permitía controlar y bueno, básicamente crear todo

  4. 2:53 , obre el vídeo en una pestanya nova

    el backend y la base de datos desde nuestro ID utilizando IA y sin salir del propio ID. Con esto podíamos hacer aplicaciones funcionales completamente de principio a fin, como ya dicho, sin tener que salir del ID, sin tener que construir una base de datos, publicar un backend, ya se hacía automáticamente. Esto era lo que más os gustó de Insforg. También hice otro vídeo donde explicaba cómo instalarlo tú en tu ordenador o en tu servidor para, por si no querías pagar la suscripción de Inforg, hacerlo tú autohosteado. Y en este último vídeo, muchos ya me lo pusisteis en los comentarios y es que me preguntasteis si se podía migrar de Supase a Inforg de forma fácil. Y ojo, porque se puede hacer tanto si tienes el Supase Cloud como si lo tienes también autohosteado, no hay ningún problema. Y bueno, pues aquí estamos y vamos a hacerlo de dos formas. Una va a ser con un repositorio que ya tienen preparado los chicos de Inchforg y es muy fácil de usar, simplemente es seguir los pasos de cuatro comandos que hay que poner.

  5. 3:51 , obre el vídeo en una pestanya nova

    Y otra forma de hacerlo es con una skill que he creado yo, una skill de inteligencia artificial para que directamente en tu agente favorito le pidas que haga la migración [música] y ya utiliza esa skill y la haces sola. Te preguntará datos y credenciales, pero es coser y cantar. Así que vamos a ver estas dos formas. La primera con el repositorio oficial. Lo primero que debes saber es que existe un repositorio oficial para migrar de Suabase a Inforg. Como ya comentado, se llama Suabase to In Forge y lo tenéis en la descripción, obviamente. El repo es una suite de migración probada directamente en producción. No es ningún experimento, es algo que realmente ellos han utilizado en proyectos reales. De hecho, en la documentación dicen que pudieron migrar no sé cuántos usuarios y miles de registros de tablas con un éxito del 99,8%. O sea, que funciona bastante bien. La migración se divide en tres pasos: autenticación, base de datos y storage. Lo bueno es que está diseñada para ser incremental. Podéis parar,

  6. 4:48 , obre el vídeo en una pestanya nova

    repetir los pasos y no vais a romper nada si a mitad del proceso os falla algo. ¿Y qué es lo que necesitáis antes de comenzar a utilizarlo? Esto es super importante. Necesitáis noj instalado 20 o superior. Esto seguramente ya lo tengáis. Necesitáis también postgres instalado para usar el comando de PSQL y obviamente necesitáis acceso a vuestro proyecto de Supabase, ya sea [música] que esté en la nube o en vuestro local o donde sea y también acceso a vuestro proyecto de INSF, ¿vale? La URL de conexión y las credenciales. Así que vamos manos a la obra. Lo primero que vamos a hacer es clonar el repositorio con Git Clone e instalar las dependencias. Hacemos un git clone y después un npm install. Después hay que copiar las variables de entorno que hay de ejemplo y pasarlas a un punto emp y ahí tendremos que rellenar nuestros datos. Como ya dicho, da igual si los servicios los tenéis en la nube o en local. Lo importante es rellenar la URL correcta de cada servicio. Si tenéis el Supabase en la nube, tenéis que [música] ir a este enlace de aquí,

  7. 5:46 , obre el vídeo en una pestanya nova

    es decir, donde están todos tus proyectos, pulsar en el proyecto, ir al apartado directo y ahí os aparece la cadena de conexión, que sería una cosa tal cual lo que veis. Tendréis que añadir vuestra contraseña porque por defecto no os la pone, la contraseña que hayáis asignado el proyecto y [música] listo, ya lo tendríais. Yo como lo tengo en local, me queda una cosa tal que así. También tenemos que poner la URL de Inforg. Esto en la página web lo vais a encontrar rápidamente. Y ojo porque hay que poner el API Key. Para sacar el API Key es muy sencillo. Me voy a ir al panel de Insforg. Voy a abrir con F12 o clic derecho, inspeccionar elemento, las depools del navegador. Nos vamos al apartado de consola y pegamos esto de aquí, que es para obtener una variable local donde se almacena el API key que está utilizando. Esto lo copiamos y lo pegamos en nuestro fichero punto end. Ahora ya tengo mis superabas de prueba con datos, tres usuarios, tablas, etcétera. Y también tengo mi insforge que no tiene nada, ¿vale? está completamente vacío. Así que

  8. 6:47 , obre el vídeo en una pestanya nova

    vamos con la migración. En el primer paso vamos a migrar los usuarios, que es lo más importante porque si no los tenemos no van a poder entrar a la aplicación. Para ello ponemos npm run sport out. Y para que os hagáis una idea, este comando lo que hace es conectarse a la base de datos de suabase, exportar todos los usuarios y guardarlos en un archivo exportouth.jonj. Esto incluye ids, emails, jases de contraseña, lo incluye todo. Ya que hay una cosa que está super bien pensada, no os preocupéis por qué las contraseñas se conservan. Tanto Subabase como Inforg trabajan con el mismo has de contraseña. Ambos usan BCP y eso quiere decir que nuestros usuarios van a poder seguir entrando como siempre sin tener que cambiar ninguna contraseña ni nada. O sea, que esto me gusta un montón. Y para que esto se importe en nuestro insfork, vamos a hacer un npm run import 2 pun out. Este segundo comando lo que hace es [ __ ] este JSON que hemos exportado y pasarlo directamente a Insforg. Segunda fase, la migración de la base de datos,

  9. 7:44 , obre el vídeo en una pestanya nova

    ya que el proceso tiene tres pasos. Primero, exportáis el dump de vuestra base de datos y esto lo hacéis con un npm Run Sport 2. DB. Luego hay que transformarlo. Y ojito porque esto es clave, ya que el SQL de Supase es diferente al SQL de Inforg porque, bueno, tiene diferencias en cómo funcionan internamente ciertas cosas, pero no os preocupéis porque el script se va a encargar de todo. Simplemente ponemos un npm run transform 2 pun dB y listo. Por ejemplo, algunas cosas que cambian son las políticas de seguridad. En Infor son completamente diferentes. [música] Las RLS, las Row Level Security cambian un poquito, como podéis ver, pero bueno, no os preocupéis porque esto lo transforma automáticamente. Y ojito porque hay dos cosas que se tienen que revisar manualmente en caso de asegurarnos de que se ha hecho bien y es porque el script no lo puede hacer solo. [música] Una es el laouth.jt. Si tienes políticas que leen directamente del token de JWT, eso no existe en ISF. O sea, que tienes que reescribir esa lógica

  10. 8:43 , obre el vídeo en una pestanya nova

    utilizando la tabla de roles. Pero bueno, esto también con el MCP de Inchforg podéis pedírselo y lo hace automáticamente. Y otra cosa es que si tenéis una tabla que se llame public.users, colisiona con una tabla interna de Inch. Así que lo que hay que hacer es renombrarla. [música] Y por último, hay que importar con un npm run import 2. TB. Y pasamos ya a la última, la fase tres, importar el storage. No me voy a enrollar. tenéis aquí los comandos. Es muy sencillo, también son comandos de exportación e importación. Al final este proceso tiene cuatro pasos. Primero, te crea los buckets que tenías en Supase directamente en Infor, ¿vale? Replicándolos. Luego se descarga todos los ficheros a vuestra máquina y desde ahí lo sube a Insfor. Y por último, y no menos importante, actualiza todas las URLs de la base de datos que hagan referencia a estos buckets para que no queden URLs rotas. O sea, que lo tiene todo. Es superceto y con esto os aseguráis de que no quede ninguna referencia antigua en vuestra base de datos. Y este sería todo el proceso

  11. 9:46 , obre el vídeo en una pestanya nova

    siguiendo el repo original que no os va a fallar y que os va a ir perfectamente, pero es que aparte tenemos la skill que yo he creado por si sois tan vagos como yo y os da pereza seguir estos pasos. Seguramente ya habré perdido la mitad de la audiencia explicando el tostón este, pero confío que he puesto las líneas de tiempo y que habéis saltado directamente aquí a la skill, porque si estás usando un agente de inteligencia artificial en Open Code, cursor, Winsor, lo que sea, esto es lo más sencillo y lo más rápido. La instalación es sersencilla, tenéis que poner este comando npx skills ad y ahí ponemos el nombre de mi skill. está en mi repositorio eduna bajas y ponemos una barra y el nombre migrate to insforge skill. A partir de ahí solo hay que seguir los pasos. Yo lo he instalado de forma global para tenerlo en todos los proyectos o podéis instalarlo en el proyecto en el que estéis. Y en mi caso lo podéis hacer desde cualquier inteligencia artificial, pero en mi caso he utilizado Open Code, lo he abierto, le he asignado el último modelo de Kimi

  12. 10:43 , obre el vídeo en una pestanya nova

    2.6 y le he dicho básicamente con palabras humanas que quiero migrar de un superabase a un Inforg. Le he pegado la URL y le he dicho que utilice esa skill. Ya está, no he hecho nada más. Y ahora, como veis, está utilizando la skill y me empieza ahí a analizar qué es lo que tiene que hacer y ya nos empieza a preguntar pues tema de credenciales, como hemos sacado antes. Para los más espabilados, si está en vuestro ordenador, incluso le podéis decir que saque las credenciales, que debería de poder, pero bueno, si lo tenéis en la nube, sí que es verdad que las credenciales las tenéis que sacar vosotros. La skill os va a cubrir las mismas partes que os cubría el repositorio que hemos visto anteriormente [música] y además está diseñada con puntos de aprobación manual, es decir, que la gente no va a ejecutar cosas a lo loco, sino que os va a ir preguntando para estar seguros y para no liarla. Y antes de terminar, quiero deciros una cosa que no os pille por sorpresa. Hay una cosilla que no se migra automáticamente y es el tema del real time.

  13. 11:38 , obre el vídeo en una pestanya nova

    Esto depende mucho de cómo tengas implementado el código en vuestra aplicación, igual que las functions que también requieren un poquito de revisión por vuestra parte de que todo ha ido bien. Pero todo esto, como ya os he dicho, os conectáis el MCP y le pedís que lo vaya revisando y como sabe de lo que va, yo creo que lo podéis hacer automáticamente de esa forma. Otra cosa importante es que los toques de sesión que estén activos de los usuarios no se van a migrar. Y esto qué quiere decir, que los usuarios que estaban logueados se van a tener que volver a loguear. Ya está, con la misma contraseña y y listo. Esto si ponéis una caducidad de una hora de normal, ni los usuarios ni lo van a notar. Tú entras siempre a la aplicación y te pide loguearte y pues ya está. Dicho esto, que no os asusta la migración porque, como veis, la hemos hecho en un momento y eso que he ido paso por paso explicándola. vosotros os prometo que en 20 minutos como mucho, lo tenéis todo migrado y funcionando. Parezco un fanboy de Ins Fork, pero es que

  14. 12:32 , obre el vídeo en una pestanya nova

    realmente me está gustando mucho y lo estoy usando ya en mis proyectos, así que os recomiendo personalmente que le echéis un vistazo porque de verdad que es bastante práctico. Sin más dilación, si el vídeo os ha gustado y os interesa el tema de Inforg y creéis interesante que podría hacer más contenido sobre esta herramienta, como por ejemplo una comparativa real, tabla por tabla, de todas las diferencias reales que tiene con Supase, porque mucha gente dice que es igual, os adelanto que no lo es, pues dejámelo en los comentarios o si eso ocurre otra cosa también dejadla en los comentarios. Estoy abierto a cualquier idea que me sugiráis. Dicho esto, os dejo el enlace de todos los repos en la descripción y también el blog donde lo explico paso a paso para que no os liéis por si en el vídeo no os apetece escribir a mano lo que hemos hecho. Ahora sí que sí, me despido de vosotros. Os agradezco muchísimo haber llegado hasta el final del vídeo, que sé que somos tres personas viendo hasta el final, pero muchas gracias y nos vemos.